summaryrefslogtreecommitdiffstats
path: root/base/tks/shared/webapps
diff options
context:
space:
mode:
Diffstat (limited to 'base/tks/shared/webapps')
-rwxr-xr-xbase/tks/shared/webapps/tks/404.html146
-rwxr-xr-xbase/tks/shared/webapps/tks/500.html139
-rw-r--r--base/tks/shared/webapps/tks/GenUnexpectedError.template68
-rw-r--r--base/tks/shared/webapps/tks/agent/GenError.template78
-rw-r--r--base/tks/shared/webapps/tks/agent/GenPending.template61
-rw-r--r--base/tks/shared/webapps/tks/agent/GenRejected.template82
-rw-r--r--base/tks/shared/webapps/tks/agent/GenSuccess.template44
-rw-r--r--base/tks/shared/webapps/tks/agent/GenSvcPending.template61
-rw-r--r--base/tks/shared/webapps/tks/agent/GenUnauthorized.template42
-rw-r--r--base/tks/shared/webapps/tks/agent/GenUnexpectedError.template68
-rw-r--r--base/tks/shared/webapps/tks/agent/cms-funcs.js538
-rw-r--r--base/tks/shared/webapps/tks/agent/funcs.js686
-rw-r--r--base/tks/shared/webapps/tks/agent/header.template82
-rw-r--r--base/tks/shared/webapps/tks/agent/helpfun.js36
-rw-r--r--base/tks/shared/webapps/tks/agent/index.html23
-rw-r--r--base/tks/shared/webapps/tks/agent/index.template140
-rw-r--r--base/tks/shared/webapps/tks/agent/ports.template121
-rw-r--r--base/tks/shared/webapps/tks/agent/tks/getStats.template141
-rw-r--r--base/tks/shared/webapps/tks/agent/tks/index.html31
-rw-r--r--base/tks/shared/webapps/tks/index.html23
-rw-r--r--base/tks/shared/webapps/tks/services.template106
21 files changed, 2716 insertions, 0 deletions
diff --git a/base/tks/shared/webapps/tks/404.html b/base/tks/shared/webapps/tks/404.html
new file mode 100755
index 000000000..5122cc2e2
--- /dev/null
+++ b/base/tks/shared/webapps/tks/404.html
@@ -0,0 +1,146 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2009 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<script language=javascript>
+var url = document.URL;
+var protocol = location.protocol;
+var hostname = location.hostname;
+var port = location.port;
+</script>
+
+<head>
+<title>TKS 404 Error!</title>
+<!-- always expand ALL relative paths -->
+<script language=javascript>
+document.write('<link rel="shortcut icon" href="');
+document.write(protocol);
+document.write('//');
+document.write(hostname);
+document.write(':');
+document.write(port);
+document.write('/pki/images/favicon.ico');
+document.write('" />');
+document.write('<link rel="stylesheet" href="');
+document.write(protocol);
+document.write('//');
+document.write(hostname);
+document.write(':');
+document.write(port);
+document.write('/pki/css/pki-base.css');
+document.write('" type="text/css" />');
+document.write('<META http-equiv=Content-Type content="text/html; charset=UTF-8">');
+</script>
+</head>
+<body bgcolor="#FFFFFF" link="#666699" vlink="#666699" alink="#333366">
+<div id="header">
+<!-- always expand ALL relative paths -->
+<script language=javascript>
+document.write('<a href="http://pki.fedoraproject.org/" title="Visit pki.fedoraproject.org for more information about Dogtag products and services"><img src="');
+document.write(protocol);
+document.write('//');
+document.write(hostname);
+document.write(':');
+document.write(port);
+document.write('/pki/images/logo_header.gif');
+document.write('" alt="Dogtag" id="myLogo" /></a>');
+</script>
+ <div id="headertitle">
+ <a href="/" title="Dogtag Network homepage">Dogtag<sup><font size="-2">&reg;</font></sup> Certificate System</a>
+ </div>
+ <div id="account">
+ <dl><dt><span></span></dt><dd></dd></dl>
+ </div>
+</div>
+
+<div id="mainNavOuter">
+<div id="mainNav">
+<div id="mainNavInner">
+
+</div><!-- end mainNavInner -->
+</div><!-- end mainNav -->
+</div><!-- end mainNavOuter -->
+
+
+<div id="bar">
+
+<div id="systembar">
+<div id="systembarinner">
+
+<div>
+ -
+</div>
+
+
+</div>
+</div>
+
+</div>
+<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+Certificate System TKS Error Page
+</font><br>
+<p>
+</font>
+<p>
+<script language=javascript>
+document.write('<center>');
+document.write('<table border="1" cellspacing="0" cellpadding="0">');
+document.write('<tr valign="TOP">');
+document.write('<td bgcolor="grey" align="center"><b><font color="BLACK">HTTP STATUS</font></b></td>');
+document.write('<td bgcolor="grey" align="center"><b><font color="BLACK">DESCRIPTION</font></b></td>');
+document.write('</tr>');
+document.write('<tr valign="TOP">');
+document.write('<td align="center"><b><font size="+3" color="red">');
+document.write('404');
+document.write('</font></b></td>');
+document.write('<td><b><font size="+1" color="RED">');
+document.write('The requested resource could not be found but may be available again in the future.');
+document.write('</font></b><br><b><font size="+1" color="RED">');
+document.write('Please check the validity of the URL listed below:');
+document.write('</font></b><br><br>');
+document.write('<center><b><font size="+1"><a href="');
+document.write(url);
+document.write('">');
+document.write(url);
+document.write('</a>');
+document.write('</font></b></center><br></td>');
+document.write('</tr>');
+document.write('</table>');
+document.write('</center>');
+</script>
+<div id="footer">
+</div>
+<!--
+To prevent Internet Explorer from overriding the display of this custom error
+page by displaying it's own "Friendly HTTP Error Message", always include the
+following 'padding' to ensure that the text size exceeds 512 bytes:
+
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+-->
+</body>
+</html>
+
diff --git a/base/tks/shared/webapps/tks/500.html b/base/tks/shared/webapps/tks/500.html
new file mode 100755
index 000000000..7547fa864
--- /dev/null
+++ b/base/tks/shared/webapps/tks/500.html
@@ -0,0 +1,139 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2009 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<script language=javascript>
+var url = document.URL;
+var protocol = location.protocol;
+var hostname = location.hostname;
+var port = location.port;
+</script>
+
+<head>
+<title>TKS 500 Error!</title>
+<!-- always expand ALL relative paths -->
+<script language=javascript>
+document.write('<link rel="shortcut icon" href="');
+document.write(protocol);
+document.write('//');
+document.write(hostname);
+document.write(':');
+document.write(port);
+document.write('/pki/images/favicon.ico');
+document.write('" />');
+document.write('<link rel="stylesheet" href="');
+document.write(protocol);
+document.write('//');
+document.write(hostname);
+document.write(':');
+document.write(port);
+document.write('/pki/css/pki-base.css');
+document.write('" type="text/css" />');
+document.write('<META http-equiv=Content-Type content="text/html; charset=UTF-8">');
+</script>
+</head>
+<body bgcolor="#FFFFFF" link="#666699" vlink="#666699" alink="#333366">
+<div id="header">
+<!-- always expand ALL relative paths -->
+<script language=javascript>
+document.write('<a href="http://pki.fedoraproject.org/" title="Visit pki.fedoraproject.org for more information about Dogtag products and services"><img src="');
+document.write(protocol);
+document.write('//');
+document.write(hostname);
+document.write(':');
+document.write(port);
+document.write('/pki/images/logo_header.gif');
+document.write('" alt="Dogtag" id="myLogo" /></a>');
+</script>
+ <div id="headertitle">
+ <a href="/" title="Dogtag Network homepage">Dogtag<sup><font size="-2">&reg;</font></sup> Certificate System</a>
+ </div>
+ <div id="account">
+ <dl><dt><span></span></dt><dd></dd></dl>
+ </div>
+</div>
+
+<div id="mainNavOuter">
+<div id="mainNav">
+<div id="mainNavInner">
+
+</div><!-- end mainNavInner -->
+</div><!-- end mainNav -->
+</div><!-- end mainNavOuter -->
+
+
+<div id="bar">
+
+<div id="systembar">
+<div id="systembarinner">
+
+<div>
+ -
+</div>
+
+
+</div>
+</div>
+
+</div>
+<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+Certificate System TKS Error Page
+</font><br>
+<p>
+</font>
+<p>
+<script language=javascript>
+document.write('<center>');
+document.write('<table border="1" cellspacing="0" cellpadding="0">');
+document.write('<tr valign="TOP">');
+document.write('<td bgcolor="grey" align="center"><b><font color="BLACK">HTTP STATUS</font></b></td>');
+document.write('<td bgcolor="grey" align="center"><b><font color="BLACK">DESCRIPTION</font></b></td>');
+document.write('</tr>');
+document.write('<tr valign="TOP">');
+document.write('<td align="center"><b><font size="+3" color="red">');
+document.write('500');
+document.write('</font></b></td>');
+document.write('<td><b><font size="+1" color="RED">');
+document.write('The server encountered an unexpected condition which prevented it from fulfilling the request.<br>');
+document.write('Please consult your local administrator for further assistance. The Certificate System logs may provide further information.');
+document.write('</font></b><br></td>');
+document.write('</tr>');
+document.write('</table>');
+document.write('</center>');
+</script>
+<div id="footer">
+</div>
+<!--
+To prevent Internet Explorer from overriding the display of this custom error
+page by displaying it's own "Friendly HTTP Error Message", always include the
+following 'padding' to ensure that the text size exceeds 512 bytes:
+
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+[IE padding][IE padding][IE padding][IE padding][IE padding][IE padding]
+-->
+</body>
+</html>
+
diff --git a/base/tks/shared/webapps/tks/GenUnexpectedError.template b/base/tks/shared/webapps/tks/GenUnexpectedError.template
new file mode 100644
index 000000000..af0683fa0
--- /dev/null
+++ b/base/tks/shared/webapps/tks/GenUnexpectedError.template
@@ -0,0 +1,68 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<CMS_TEMPLATE>
+
+<TITLE>TKS Processing Error!</TITLE>
+
+<BODY BGCOLOR="white">
+
+<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+Problem Processing Your Request
+</font>
+
+<table BORDER=0 CELLSPACING=0 CELLPADDING=0 WIDTH="100%" BACKGROUND="/pki/images/hr.gif" >
+ <tr>
+ <td>&nbsp;</td>
+ </tr>
+</table>
+
+<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+
+<SCRIPT LANGUAGE="JavaScript">
+var authority = 'Certificate System';
+if (result.fixed.authorityName != null) {
+ authority = result.fixed.authorityName;
+}
+
+document.writeln('<P>');
+document.write('The '+authority+' encountered an unexpected error ');
+document.writeln(' while processing your request.');
+document.writeln(
+ 'The following is a detailed message of the error that occurred.');
+
+document.writeln('<P>');
+document.writeln('<BLOCKQUOTE><B><PRE>');
+if (result.fixed.unexpectedError != null) {
+ document.write(result.fixed.unexpectedError);
+} else {
+ document.write('No further details provided.');
+}
+document.writeln('</PRE></B></BLOCKQUOTE>');
+
+document.writeln('<P>');
+document.writeln(
+ 'Please consult your local administrator for further assistance.');
+document.writeln('The Certificate System logs may provide further information.');
+</SCRIPT>
+
+</font>
+</BODY>
+</HTML>
+
diff --git a/base/tks/shared/webapps/tks/agent/GenError.template b/base/tks/shared/webapps/tks/agent/GenError.template
new file mode 100644
index 000000000..0db5d1d22
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/GenError.template
@@ -0,0 +1,78 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<CMS_TEMPLATE>
+
+<TITLE>TKS Agent Processing Error!</TITLE>
+
+<BODY BGCOLOR="white">
+
+<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+Problem Processing Your Request
+</font>
+
+<table BORDER=0 CELLSPACING=0 CELLPADDING=0 WIDTH="100%" BACKGROUND="/pki/images/hr.gif" >
+ <tr>
+ <td>&nbsp;</td>
+ </tr>
+</table>
+
+<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+
+<SCRIPT LANGUAGE="JavaScript">
+
+document.writeln('<P>');
+document.write('The '+result.fixed.authorityName+' ');
+document.writeln('encountered a problem while processing your request. ');
+document.writeln(
+ 'The following is a detailed message of the error that occurred.');
+
+document.writeln('<P>');
+document.writeln('<BLOCKQUOTE><B><PRE>');
+if (result.fixed.errorDetails != null) {
+ document.write(result.fixed.errorDetails);
+} else {
+ document.write('No further details provided.');
+}
+document.writeln('</PRE></B></BLOCKQUOTE>');
+
+if (result != null && result.recordSet != null && result.recordSet.length > 0){
+ document.writeln('<P>');
+ document.write('Additional Information:');
+ document.writeln('<P>');
+ document.write('<BLOCKQUOTE><B><PRE>');
+ document.writeln('<UL>');
+ for (var i = 0; i < result.recordSet.length; i++) {
+ if (result.recordSet[i].errorDescription != null) {
+ document.writeln(result.recordSet[i].errorDescription);
+ }
+ }
+ document.writeln('</UL>');
+ document.write('</PRE></B></BLOCKQUOTE>');
+}
+</SCRIPT>
+
+<P>
+Please consult your local administrator for further assistance.
+The Certificate System logs may provide further information.
+
+</font>
+</BODY>
+</HTML>
+
diff --git a/base/tks/shared/webapps/tks/agent/GenPending.template b/base/tks/shared/webapps/tks/agent/GenPending.template
new file mode 100644
index 000000000..a75a5ebdc
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/GenPending.template
@@ -0,0 +1,61 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<CMS_TEMPLATE>
+
+<TITLE>TKS Agent Request Pending</TITLE>
+
+<BODY bgcolor="white">
+
+
+<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+Request Successfully Submitted
+</font>
+
+<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+
+<SCRIPT LANGUAGE="JavaScript">
+var authority = 'Certificate Managment System';
+if (result.fixed.authorityName != null)
+ authority = result.fixed.authorityName;
+document.writeln('<P>');
+document.write('Congratulations, your request has been successfully ');
+document.write('submitted to the '+authority+'. ');
+document.write('Your request will be processed when an authorized agent ');
+document.writeln('verifies and validates the information in your request.');
+
+document.writeln('<P>');
+document.write('Your request ID is ');
+if (result.fixed.requestId != null) {
+ document.write('<B>'+result.fixed.requestId+'</B>.');
+ document.writeln('<P>');
+ document.write('Your can check on the status of your request with ');
+ document.write('an authorized agent or local administrator ');
+ document.writeln('by referring to this request ID.');
+} else {
+ document.write('<B>not provided.</B> ');
+ document.write('<P>');
+ document.writeln('Please consult your local administrator for assistance.');
+}
+</SCRIPT>
+
+</font>
+</BODY>
+</HTML>
+
diff --git a/base/tks/shared/webapps/tks/agent/GenRejected.template b/base/tks/shared/webapps/tks/agent/GenRejected.template
new file mode 100644
index 000000000..112717a7e
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/GenRejected.template
@@ -0,0 +1,82 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<CMS_TEMPLATE>
+
+<TITLE>TKS Agent Request Rejected</TITLE>
+
+<BODY bgcolor="white">
+
+<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+Request Rejected
+</font>
+
+<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+
+<SCRIPT LANGUAGE="JavaScript">
+
+var authority = 'Certificate System';
+if (result.fixed.authorityName != null) {
+ authority = result.fixed.authorityName;
+}
+
+document.writeln('<P>');
+document.write('Your request has been rejected by the '+authority+'. ' );
+document.write('This may indicate that some attributes of the request ');
+document.write('violate the policies of this '+authority+'. ');
+
+document.writeln('<P>');
+document.writeln('Violation details: ');
+
+document.writeln('<P>');
+document.writeln('<BLOCKQUOTE><B><PRE>');
+if (result == null || result.recordSet == null || result.recordSet.length == 0){
+ document.writeln('No further details provided.');
+}
+else {
+ document.writeln('<UL>');
+ for (var i = 0; i < result.recordSet.length; i++) {
+ if (result.recordSet[i].policyMessage != null) {
+ document.writeln(result.recordSet[i].policyMessage);
+ }
+ }
+ document.writeln('</UL>');
+}
+document.writeln('</PRE></B></BLOCKQUOTE>');
+
+document.writeln('<P>');
+document.write('Your request ID is ');
+if (result.fixed.requestId == null) {
+ document.write('<B>not provided</B>.');
+ document.writeln('<P>');
+ document.write(
+ 'Please consult your local administrator for further assistance.');
+} else {
+ document.write('<B>'+result.fixed.requestId+'</B>. ');
+ document.writeln('<P>');
+ document.write(
+ 'You can contact an authorized agent or local administrator for ');
+ document.writeln('further assistance by referring to the request ID.');
+}
+</SCRIPT>
+
+</font>
+</BODY>
+</HTML>
+
diff --git a/base/tks/shared/webapps/tks/agent/GenSuccess.template b/base/tks/shared/webapps/tks/agent/GenSuccess.template
new file mode 100644
index 000000000..02a9b9b8b
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/GenSuccess.template
@@ -0,0 +1,44 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<!-- This template is intended to be replaced by request specific results ! -->
+<CMS_TEMPLATE>
+
+<TITLE>TKS Agent Generic Request Success</TITLE>
+
+<BODY BGCOLOR=white>
+
+<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+Request Successfully Submited
+</font>
+
+<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+
+<SCRIPT LANGUAGE="Javascript">
+var authority = 'Certificate System';
+if (request.fixed.authorityName != null)
+ authority = request.fixed.authorityName;
+
+document.writeln('<P>');
+document.write('Congratulations, your request has been successfully ');
+document.write('submitted and processed by the '+authority+'.');
+</SCRIPT>
+
+</font>
+</body>
diff --git a/base/tks/shared/webapps/tks/agent/GenSvcPending.template b/base/tks/shared/webapps/tks/agent/GenSvcPending.template
new file mode 100644
index 000000000..cb36a5881
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/GenSvcPending.template
@@ -0,0 +1,61 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<CMS_TEMPLATE>
+
+<TITLE>TKS Agent Request Svc Pending</TITLE>
+
+<BODY bgcolor="white">
+
+<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+Request Successfully Submitted
+</font>
+
+<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+
+<SCRIPT LANGUAGE="JavaScript">
+document.writeln('<P>');
+document.write('Your request has been successfully submitted and processed ');
+document.writeln('by the '+result.fixed.authorityName+'.');
+document.write('The '+result.fixed.authorityName+' is waiting for a remote ');
+if (result.fixed.remoteAuthorityName != null)
+ document.write(result.fixed.remoteAuthorityName);
+else
+ document.write('Certificate Manager or Data Recovery manager');
+document.write(' to fill your request.');
+
+document.writeln('<P>');
+document.write('Your request ID is ');
+if (result.fixed.requestId != null) {
+ document.write('<B>'+result.fixed.requestId+'</B>.');
+ document.write('<P>');
+ document.write('Your can check on status of your request with an '+
+ 'authorized agent or local administrator by referring '+
+ 'to this request ID.');
+} else {
+ document.write('not provided. ');
+ document.writeln('Please consult your local administrator for assistance.');
+}
+</SCRIPT>
+
+
+</font>
+</BODY>
+</HTML>
+
diff --git a/base/tks/shared/webapps/tks/agent/GenUnauthorized.template b/base/tks/shared/webapps/tks/agent/GenUnauthorized.template
new file mode 100644
index 000000000..c6e62f841
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/GenUnauthorized.template
@@ -0,0 +1,42 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<!-- This template is intended to be replaced by request specific results ! -->
+<CMS_TEMPLATE>
+
+<TITLE>TKS Agent Generic Unauthorized</TITLE>
+
+<BODY BGCOLOR=white>
+
+<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+Unauthorized Access
+</font>
+
+<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+
+<SCRIPT LANGUAGE="Javascript">
+document.writeln('<P>');
+document.write('You are not authorized for this operation.');
+document.write('<BR>');
+document.write('If you think this is an error please contact your ');
+document.writeln('local administrator for further assistance.');
+</SCRIPT>
+
+</font>
+</body>
diff --git a/base/tks/shared/webapps/tks/agent/GenUnexpectedError.template b/base/tks/shared/webapps/tks/agent/GenUnexpectedError.template
new file mode 100644
index 000000000..4047cd616
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/GenUnexpectedError.template
@@ -0,0 +1,68 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<CMS_TEMPLATE>
+
+<TITLE>TKS Agent Processing Error!</TITLE>
+
+<BODY BGCOLOR="white">
+
+<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+Problem Processing Your Request
+</font>
+
+<table BORDER=0 CELLSPACING=0 CELLPADDING=0 WIDTH="100%" BACKGROUND="/pki/images/hr.gif" >
+ <tr>
+ <td>&nbsp;</td>
+ </tr>
+</table>
+
+<font size="-1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+
+<SCRIPT LANGUAGE="JavaScript">
+var authority = 'Certificate System';
+if (result.fixed.authorityName != null) {
+ authority = result.fixed.authorityName;
+}
+
+document.writeln('<P>');
+document.write('The '+authority+' encountered an unexpected error ');
+document.writeln(' while processing your request.');
+document.writeln(
+ 'The following is a detailed message of the error that occurred.');
+
+document.writeln('<P>');
+document.writeln('<BLOCKQUOTE><B><PRE>');
+if (result.fixed.unexpectedError != null) {
+ document.write(result.fixed.unexpectedError);
+} else {
+ document.write('No further details provided.');
+}
+document.writeln('</PRE></B></BLOCKQUOTE>');
+
+document.writeln('<P>');
+document.writeln(
+ 'Please consult your local administrator for further assistance.');
+document.writeln('The Certificate System logs may provide further information.');
+</SCRIPT>
+
+</font>
+</BODY>
+</HTML>
+
diff --git a/base/tks/shared/webapps/tks/agent/cms-funcs.js b/base/tks/shared/webapps/tks/agent/cms-funcs.js
new file mode 100644
index 000000000..c8ffd51c7
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/cms-funcs.js
@@ -0,0 +1,538 @@
+// --- BEGIN COPYRIGHT BLOCK ---
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; version 2 of the License.
+//
+// This program 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 General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License along
+// with this program; if not, write to the Free Software Foundation, Inc.,
+// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+//
+// Copyright (C) 2007 Red Hat, Inc.
+// All rights reserved.
+// --- END COPYRIGHT BLOCK ---
+
+//<!--
+
+
+function checkClientTime()
+{
+ var speed;
+ var server_date = new Date(serverdate);
+ var client_date = new Date();
+ var zone = client_date.getTimezoneOffset();
+ var timediff = 0;
+
+ var serverutc = server_date.getTime();
+ var clientutc = client_date.getTime();
+
+ var offset = clientutc - serverutc;
+ if (offset >0) {
+ speed = 'fast';
+ } else {
+ speed = 'slow';
+ }
+ timediff = Math.round(Math.abs(offset/1000/60));
+
+ if (timediff > 10) {
+ msg = 'Your computer\'s clock is '+ timediff+ ' minutes '+ speed +
+ '\n\nYou may encounter problems using your certificate\n' +
+ 'as your clock is set incorrectly.\n\n' +
+ 'According to the server, the time is:\n ' + server_date +
+ '\n\nPlease correct your clock before proceeding with enrollment'+
+ '\n\nYour timezone is set to ' + (-zone/60) +' hours relative to GMT.\n' +
+ 'If you change your timezone, you may need to restart your browser\n'+
+ 'before continuing.';
+ alert(msg);
+ return false;
+ }
+ return true;
+}
+
+
+
+
+function doubleQuotes(componentName)
+{
+ for (i=0; i < componentName.length; i++) {
+ if (componentName.charAt(i) == '"') {
+ return true;
+ }
+ }
+ return false;
+}
+
+function escapeDNComponent(str)
+{
+ var outStr = "";
+ var escapeValue = false;
+
+ // Do we need to escape any characters
+ for (i=0; i < str.length; i++) {
+ c = str.charAt(i);
+ if (c == ',' || c == '=' || c == '+' || c == '<' ||
+ c == '>' || c == '#' || c == ';' || c == '\r' ||
+ c == '\n') {
+ escapeValue = true;
+ break;
+ }
+ }
+
+ if (escapeValue == true) {
+ outStr += '"';
+ outStr += str;
+ outStr += '"';
+ } else {
+ outStr += str;
+ }
+ return outStr;
+}
+
+function formulateDN(form, distinguishedName)
+{
+ // Note: The alerts about double quotes are here to avoid
+ // problems with the code dealing with quoting and escaping in the
+ // Netscape Directory Server 1.0 implementation.
+ with (form) {
+ distinguishedName.value = '';
+ if (form.E != null) {
+ if (E.value != '') {
+ if (doubleQuotes(E.value) == true) {
+ alert('Double quotes are not allowed in the E-mail field');
+ E.value = '';
+ E.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'E=' + escapeDNComponent(E.value);
+ }
+ }
+ if (form.CN!= null) {
+ if (CN.value != '') {
+ if (doubleQuotes(CN.value) == true) {
+ alert('Double quotes are not allowed in Common Name field');
+ CN.value = '';
+ CN.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'CN=' + escapeDNComponent(CN.value);
+ }
+ }
+ if (form.UID1 != null) {
+ if (UID1.value != '') {
+ if (doubleQuotes(UID1.value) == true) {
+ alert('Double quotes are not allowed in the user id field');
+ UID1.value = '';
+ UID1.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'UID=' + escapeDNComponent(UID1.value);
+ }
+ }
+ if (form.OU != null) {
+ if (OU.value != '') {
+ if (doubleQuotes(OU.value) == true) {
+ alert('Double quotes are not allowed in Org Unit field');
+ OU.value = '';
+ OU.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'OU=' + escapeDNComponent(OU.value);
+ }
+ }
+ if (form.O != null) {
+ if (O.value != '') {
+ if (doubleQuotes(O.value) == true) {
+ alert('Double quotes are not allowed in Organization field.');
+ O.value = '';
+ O.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'O=' + escapeDNComponent(O.value);
+ }
+ }
+ if (form.L != null) {
+ if (L.value != '') {
+ if (doubleQuotes(L.value) == true) {
+ alert('Double quotes are not allowed in Locality field.');
+ L.value = '';
+ L.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'L=' + escapeDNComponent(L.value);
+ }
+ }
+ if (form.ST != null) {
+ if (ST.value != '') {
+ if (doubleQuotes(ST.value) == true) {
+ alert('Double quotes are not allowed in State field.');
+ ST.value = '';
+ ST.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'ST=' + escapeDNComponent(ST.value);
+ }
+ }
+ if (form.C != null) {
+ if (C.value != '') {
+ if (doubleQuotes(C.value) == true) {
+ alert('Double quotes are not allowed in Country field.');
+ C.value = '';
+ C.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'C=' + escapeDNComponent(C.value);
+ }
+ }
+ }
+}
+
+function isValidIssuerDN(form)
+{
+ // Note: The check here is to avoid a bug in Netscape Navigator 3.0 and 3.01
+ // that are triggered on formation of the nickname on import of a CA cert if
+ // that cert does not contain an OU or O component.
+ if ((form.OU.value == '') && (form.O.value == '')) {
+ alert("You must enter an Organization Unit or an Organization.");
+ return false;
+ } else {
+ return true;
+ }
+}
+
+function isValidAdminDN(form)
+{
+ // Note: The check here is to avoid a bug in Netscape Navigator 3.0 and 3.01
+ // that are triggered on formation of the nickname on import of a personal cert if
+ // that cert does not contain a common name.
+
+ if (form.CN.value == '') {
+ alert("You must enter a Common Name.");
+ return false;
+ } else {
+ return true;
+ }
+}
+
+function isValidCSR(form)
+{
+ // Note: the checks here are of mixed origin. Some are required for Navigator
+ // and Communicator. The CSR field checks are to avoid server side rejection of the
+ // submission. These checks can be split up to be different for different types of
+ // certificates.
+
+ formulateDN(form, form.subject);
+ // DEBUG
+ //alert(form.subject);
+
+ with (form) {
+ if (email != null) {
+ if (E.value == "" && email.checked) {
+ alert("E-mail certificates must include an E-mail address.");
+ return false;
+ }
+ }
+ if (CN.value == "") {
+ alert("You must supply your name for the certificate.");
+ return false;
+ }
+ return true;
+ }
+}
+
+function isNumber(string, radix) {
+ var i = 0;
+ var legalDigits;
+ if (radix == null || radix == 10) {
+ legalDigits = "0123456789";
+ } else if (radix == 16) {
+ legalDigits = "0123456789abcdefABCDEF:";
+ } else {
+ return false;
+ }
+ for(; i < string.length; ++i) {
+ if (string.charAt(i) != ' ')
+ break;
+ }
+ if (string.charAt(i) == '+' || string.charAt(i) == '-' ) {
+ ++i;
+ }
+ if (radix == 16 && i < string.length - 2 &&
+ string.charAt(i) == '0' &&
+ (string.charAt(i+1) == 'x' || string.charAt(i+1) == 'X') &&
+ legalDigits.indexOf(string.charAt(i+2)) != -1) {
+ i += 3;
+ }
+ for(; i < string.length; ++i) {
+ if (legalDigits.indexOf(string.charAt(i)) == -1)
+ break;
+ }
+ for(; i < string.length; ++i) {
+ if (string.charAt(i) != ' ')
+ return false;
+ }
+ return true;
+}
+
+function dateForm(name)
+{
+ var i;
+ document.write('<FORM NAME=\"'+ name +'\">');
+ document.write('<SELECT NAME=\"day\"><OPTION VALUE=0> ');
+ for (i=1; i <=31; ++i)
+ document.write('<OPTION VALUE='+i+'>'+i);
+ document.write('</SELECT>');
+ document.write('<SELECT NAME=\"month\">'+
+ '<OPTION VALUE=13> '+
+ '<OPTION VALUE=0>January'+
+ '<OPTION VALUE=1>February'+
+ '<OPTION VALUE=2>March'+
+ '<OPTION VALUE=3>April'+
+ '<OPTION VALUE=4>May'+
+ '<OPTION VALUE=5>June'+
+ '<OPTION VALUE=6>July'+
+ '<OPTION VALUE=7>August'+
+ '<OPTION VALUE=8>September'+
+ '<OPTION VALUE=9>October'+
+ '<OPTION VALUE=10>November'+
+ '<OPTION VALUE=11>December'+
+ '</SELECT>'
+ );
+
+ document.write('<SELECT NAME=\"year\"><OPTION VALUE=0> ');
+ for (i=1996; i <=2006; ++i)
+ document.write('<OPTION VALUE='+i+'>'+i);
+ document.write('</SELECT>');
+ document.write('</FORM>');
+}
+
+function dateIsEmpty(form)
+{
+ return form.day.selectedIndex == 0 &&
+ form.month.selectedIndex == 0 &&
+ form.year.selectedIndex == 0;
+}
+
+
+function convertDate(form, fieldName)
+{
+ var date;
+ var day = form.day.options[form.day.selectedIndex].value;
+ var month = form.month.options[form.month.selectedIndex].value;
+ var year = form.year.options[form.year.selectedIndex].value;
+ date = new Date(year,month,day);
+
+ // see if normalization was required
+ if (date.getMonth() != month || date.getDate() != day ) {
+ alert(fieldName + " is invalid");
+ return null;
+ }
+ else
+ return Math.round(date.getTime() / 1000);
+}
+
+function daysToSeconds(days){
+ return 3600 * 24 * days;
+}
+
+// encloses value in double quotes preceding all embedded double quotes with \
+function escapeValue(value)
+{
+ var result;
+ var fromIndex = 0, toIndex = 0;
+
+ // kludgy work-around for indexOf JavaScript bug on empty string
+ if (value == "")
+ return '\"\"';
+
+ result = '\"';
+ while ((toIndex = value.indexOf('\"',fromIndex)) != -1) {
+ result += value.substring(fromIndex,toIndex);
+ result += '\\"';
+ fromIndex = toIndex + 1;
+ }
+ result += value.substring(fromIndex,value.length);
+ result += '\"';
+ return result;
+}
+
+// encloses value in double quotes preceding all embedded double quotes and
+// backslashes with backslash
+function escapeValueJSString(value)
+{
+ var result = "";
+
+ // Do we need to escape any characters
+ for (i=0; i < value.length; i++) {
+ c = value.charAt(i);
+ if (c == '\\' | c == '"') {
+ result += '\\';
+ }
+ result += c;
+ }
+ return '\"' + result + '\"';
+}
+
+function escapeValueRfc1779(value)
+{
+ var result = "";
+
+ // Do we need to escape any characters
+ for (i=0; i < value.length; i++) {
+ c = value.charAt(i);
+ if (c == ',' || c == '=' || c == '+' || c == '<' ||
+ c == '>' || c == '#' || c == ';' || c == '\r' ||
+ c == '\n' || c == '\\' | c == '"') {
+ result += '\\';
+ }
+ result += c;
+ }
+ return result;
+}
+
+// helper function to construct name component(pattern)
+function makeComponent(list,tag,value,asPattern)
+{
+ var last = list.length;
+ if (asPattern) {
+ list[last] = (value == "") ? "*" : (tag+"="+escapeValueRfc1779(value));
+ }
+ else if (value != "")
+ list[last] = tag+"="+escapeValueRfc1779(value);
+}
+
+// If asPattern is false formulates the RFC 1779 format subject name
+// from the component parts skipping all components with blank values,
+// otherwise builds RFC 1779-like matching pattern from components
+function computeNameCriterion(form)
+{
+ var asPattern = form.match[1].checked;
+ var result = new Array;
+
+ with (form) {
+ // The order of clauses here determines how components are ordered
+ // in the name sent in the client's request. A site may wish to
+ // re-order the clauses here if their conventions produce names
+ // with components in a different order.
+ makeComponent(result,"E",E.value,asPattern);
+ makeComponent(result,"CN",CN.value,asPattern);
+ makeComponent(result,"UID",UID.value,asPattern);
+ makeComponent(result,"OU",OU.value,asPattern);
+ makeComponent(result,"O",O.value,asPattern);
+ makeComponent(result,"L",L.value,asPattern);
+ makeComponent(result,"ST",ST.value,asPattern);
+ makeComponent(result,"C",C.value,asPattern);
+ }
+ if (result.length == 0)
+ return asPattern ? "0 == 0" : "0 == 1";
+ else
+ return "subject" + ( asPattern ? " ~= " : " == ") +
+ escapeValue(result.join(', '));
+}
+
+function booleanCrit(crit,radioArg)
+{
+ for (var i = 0; i < radioArg.length; ++i ){
+ if( radioArg[i].checked ) {
+ if (radioArg[i].value.length != 0) {
+ crit[crit.length] = radioArg[i].name + " == " + radioArg[i].value;
+ }
+ return;
+ }
+ }
+}
+
+function isHTTPEscapeChar(c)
+{
+ if (c == '%' || c == '#' || c == '+' || c == '=' || c == '\n' ||
+ c == '\r' || c == '\t' || c == ';' || c == '&' ||
+ c == '>') {
+ return true;
+ }
+
+ return false;
+}
+
+function produceHTTPEscapedString(inString)
+{
+ table = new Object();
+ table["%"] = "25";
+ table["#"] = "23";
+ table["+"] = "2B";
+ table["="] = "3D";
+ table["\n"] = "0A";
+ table["\r"] = "0D";
+ table["\t"] = "09";
+ table[";"] = "3B";
+ table["&"] = "26";
+ table[">"] = "3E";
+
+ outString = "";
+
+ for (i=0; i < inString.length; i++) {
+ if (inString.charAt(i) == ' ') {
+ outString += '+';
+ } else {
+ if (isHTTPEscapeChar(inString.charAt(i))) {
+ outString += "%" + table[inString.substring(i, i+1)];
+ } else {
+ outString += inString.charAt(i);
+ }
+ }
+ }
+
+ return outString;
+}
+
+// strips (optional) spaces and 0[xX] prefix at the beginning of s
+function stripPrefix(s)
+{
+ var i;
+ for(i = 0; i < s.length - 1; ++i) {
+ if (s.charAt(i) != ' ' )
+ break;
+ }
+ if (s.charAt(i) == '0' && (s.charAt(i+1) == 'x' || s.charAt(i+1) == 'X')) {
+ return s.substring(i+2,s.length);
+ } else {
+ return s.substring(i,s.length);;
+ }
+}
+
+// removes colons from value and returns the result
+// used as helper to convert colon-separated hexadecimal numbers
+// to regular numbers
+function removeColons(value)
+{
+ var result = "";
+
+ for (i=0; i < value.length; i++) {
+ c = value.charAt(i);
+ if (c != ':' ){
+ result += c;
+ }
+ }
+ return result;
+}
+
+function navMajorVersion()
+{
+ return parseInt(navigator.appVersion.substring(0, navigator.appVersion.indexOf(".")));
+}
+//-->
+
+
+
+
+
diff --git a/base/tks/shared/webapps/tks/agent/funcs.js b/base/tks/shared/webapps/tks/agent/funcs.js
new file mode 100644
index 000000000..daef83d17
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/funcs.js
@@ -0,0 +1,686 @@
+// --- BEGIN COPYRIGHT BLOCK ---
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; version 2 of the License.
+//
+// This program 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 General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License along
+// with this program; if not, write to the Free Software Foundation, Inc.,
+// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+//
+// Copyright (C) 2007 Red Hat, Inc.
+// All rights reserved.
+// --- END COPYRIGHT BLOCK ---
+
+//<!--
+function doubleQuotes(componentName)
+{
+ for (i=0; i < componentName.length; i++) {
+ if (componentName.charAt(i) == '"') {
+ return true;
+ }
+ }
+ return false;
+}
+
+function escapeDNComponent(str)
+{
+ var outStr = "";
+ var escapeValue = false;
+
+ // Do we need to escape any characters
+ for (i=0; i < str.length; i++) {
+ c = str.charAt(i);
+ if (c == ',' || c == '=' || c == '+' || c == '<' ||
+ c == '>' || c == '#' || c == ';' || c == '\r' ||
+ c == '\n') {
+ escapeValue = true;
+ break;
+ }
+ }
+
+ if (escapeValue == true) {
+ outStr += '"';
+ outStr += str;
+ outStr += '"';
+ } else {
+ outStr += str;
+ }
+ return outStr;
+}
+
+function formulateDN(form, distinguishedName)
+{
+ // Note: The alerts about double quotes are here to avoid
+ // problems with the code dealing with quoting and escaping in the
+ // Netscape Directory Server 1.0 implementation.
+ with (form) {
+ distinguishedName.value = '';
+ if (form.eMail != null) {
+ if (eMail.value != '') {
+ if (doubleQuotes(eMail.value) == true) {
+ alert('Double quotes are not allowed in the E-mail field');
+ eMail.value = '';
+ eMail.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'E=' + escapeDNComponent(eMail.value);
+ }
+ }
+ if (form.commonName != null) {
+ if (commonName.value != '') {
+ if (doubleQuotes(commonName.value) == true) {
+ alert('Double quotes are not allowed in Common Name field');
+ commonName.value = '';
+ commonName.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'CN=' + escapeDNComponent(commonName.value);
+ }
+ }
+ if (form.userID != null) {
+ if (userID.value != '') {
+ if (doubleQuotes(userID.value) == true) {
+ alert('Double quotes are not allowed in the user id field');
+ userID.value = '';
+ userID.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'UID=' + escapeDNComponent(userID.value);
+ }
+ }
+ if (form.orgUnit != null) {
+ if (orgUnit.value != '') {
+ if (doubleQuotes(orgUnit.value) == true) {
+ alert('Double quotes are not allowed in Org Unit field');
+ orgUnit.value = '';
+ orgUnit.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'OU=' + escapeDNComponent(orgUnit.value);
+ }
+ }
+ if (form.org != null) {
+ if (org.value != '') {
+ if (doubleQuotes(org.value) == true) {
+ alert('Double quotes are not allowed in Organization field.');
+ org.value = '';
+ org.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'O=' + escapeDNComponent(org.value);
+ }
+ }
+ if (form.locality != null) {
+ if (locality.value != '') {
+ if (doubleQuotes(locality.value) == true) {
+ alert('Double quotes are not allowed in Locality field.');
+ locality.value = '';
+ locality.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'L=' + escapeDNComponent(locality.value);
+ }
+ }
+ if (form.state != null) {
+ if (state.value != '') {
+ if (doubleQuotes(state.value) == true) {
+ alert('Double quotes are not allowed in State field.');
+ state.value = '';
+ state.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'ST=' + escapeDNComponent(state.value);
+ }
+ }
+ if (form.country != null) {
+ if (country.value != '') {
+ if (doubleQuotes(country.value) == true) {
+ alert('Double quotes are not allowed in Country field.');
+ country.value = '';
+ country.focus();
+ return;
+ }
+ if (distinguishedName.value != '') distinguishedName.value += ', ';
+ distinguishedName.value += 'C=' + escapeDNComponent(country.value);
+ }
+ }
+ }
+}
+
+function isValidIssuerDN(form)
+{
+ // Note: The check here is to avoid a bug in Netscape Navigator 3.0 and 3.01
+ // that are triggered on formation of the nickname on import of a CA cert if
+ // that cert does not contain an OU or O component.
+ if ((form.orgUnit.value == '') && (form.org.value == '')) {
+ alert("You must enter an Organization Unit or an Organization.");
+ return false;
+ } else {
+ return true;
+ }
+}
+
+function isValidAdminDN(form)
+{
+ // Note: The check here is to avoid a bug in Netscape Navigator 3.0 and 3.01
+ // that are triggered on formation of the nickname on import of a personal cert if
+ // that cert does not contain a common name.
+
+ if (form.commonName.value == '') {
+ alert("You must enter a Common Name.");
+ return false;
+ } else {
+ return true;
+ }
+}
+
+function isValidCSR(form)
+{
+ // Note: the checks here are of mixed origin. Some are required for Navigator
+ // and Communicator. The CSR field checks are to avoid server side rejection of the
+ // submission. These checks can be split up to be different for different types of
+ // certificates.
+
+ formulateDN(form, form.subject);
+
+ with (form) {
+ if (isEmailCert != null) {
+ if (eMail.value == "" && isEmailCert.checked) {
+ alert("E-mail certificates must include an E-mail address.");
+ return false;
+ }
+ }
+ if (commonName.value == "") {
+ alert("You must supply your name for the certificate.");
+ return false;
+ }
+ if (csrRequestorName.value == "") {
+ csrRequestorName.value = commonName.value;
+ }
+ if (csrRequestorPhone.value == "" && csrRequestorEmail.value == "") {
+ alert("You must supply a contact phone number or e-mail address.");
+ return false;
+ }
+ return true;
+ }
+}
+
+function isNegative(string) {
+ if (string.charAt(0) == '-')
+ return true;
+ else
+ return false;
+}
+
+function isNumber(string, radix) {
+ var i = 0;
+ var legalDigits;
+ if (radix == null || radix == 10) {
+ legalDigits = "0123456789";
+ } else if (radix == 16) {
+ legalDigits = "0123456789abcdefABCDEF:";
+ } else {
+ return false;
+ }
+ for(; i < string.length; ++i) {
+ if (string.charAt(i) != ' ')
+ break;
+ }
+ if (string.charAt(i) == '+' || string.charAt(i) == '-' ) {
+ ++i;
+ }
+ if (radix == 16 && i < string.length - 2 &&
+ string.charAt(i) == '0' &&
+ (string.charAt(i+1) == 'x' || string.charAt(i+1) == 'X') &&
+ legalDigits.indexOf(string.charAt(i+2)) != -1) {
+ i += 3;
+ }
+ for(; i < string.length; ++i) {
+ if (legalDigits.indexOf(string.charAt(i)) == -1)
+ break;
+ }
+ for(; i < string.length; ++i) {
+ if (string.charAt(i) != ' ')
+ return false;
+ }
+ return true;
+}
+
+function isDecimalNumber(string) {
+ var i = 0;
+ var legalDigits = "0123456789";
+
+ for (; i < string.length; i++) {
+ if (string.charAt(i) != ' ')
+ break;
+ }
+ if (i < string.length &&
+ legalDigits.indexOf(string.charAt(i)) != -1) {
+ i++;
+ } else
+ return false;
+
+ for (; i < string.length; i++) {
+ if (legalDigits.indexOf(string.charAt(i)) == -1)
+ break;
+ }
+ for (; i < string.length; i++) {
+ if (string.charAt(i) != ' ')
+ return false;
+ }
+
+ return true;
+}
+
+function isHexNumber(string) {
+ var i = 0;
+ var legalDigits = "0123456789abcdefABCDEF";
+
+ for (; i < string.length; i++) {
+ if (string.charAt(i) != ' ')
+ break;
+ }
+ if (i < string.length - 2 &&
+ string.charAt(i) == '0' &&
+ (string.charAt(i+1) == 'x' || string.charAt(i+1) == 'X') &&
+ legalDigits.indexOf(string.charAt(i+2)) != -1) {
+ i += 3;
+ } else
+ return false;
+
+ for (; i < string.length; i++) {
+ if (legalDigits.indexOf(string.charAt(i)) == -1)
+ break;
+ }
+ for (; i < string.length; i++) {
+ if (string.charAt(i) != ' ')
+ return false;
+ }
+
+ return true;
+}
+
+function trim(string) {
+ var i, k, newString;
+
+ for (i = 0; i < string.length; i++) {
+ if (string.charAt(i) != ' ' )
+ break;
+ }
+ for (k = string.length - 1; k > i; k--) {
+ if (string.charAt(k) != ' ' )
+ break;
+ }
+ k++;
+
+ if (k > i)
+ newString = string.substring(i, k);
+ else
+ newString = null;
+
+ return newString;
+}
+
+
+function dateForm(name)
+{
+ var i;
+ document.write('<FORM NAME=\"'+ name +'\">');
+ document.write('<SELECT NAME=\"day\"><OPTION VALUE=0> ');
+ for (i=1; i <=31; ++i)
+ document.write('<OPTION VALUE='+i+'>'+i);
+ document.write('</SELECT>');
+ document.write('<SELECT NAME=\"month\">'+
+ '<OPTION VALUE=13> '+
+ '<OPTION VALUE=0>January'+
+ '<OPTION VALUE=1>February'+
+ '<OPTION VALUE=2>March'+
+ '<OPTION VALUE=3>April'+
+ '<OPTION VALUE=4>May'+
+ '<OPTION VALUE=5>June'+
+ '<OPTION VALUE=6>July'+
+ '<OPTION VALUE=7>August'+
+ '<OPTION VALUE=8>September'+
+ '<OPTION VALUE=9>October'+
+ '<OPTION VALUE=10>November'+
+ '<OPTION VALUE=11>December'+
+ '</SELECT>'
+ );
+
+ document.write('<SELECT NAME=\"year\"><OPTION VALUE=0> ');
+ for (i=1996; i <=2006; ++i)
+ document.write('<OPTION VALUE='+i+'>'+i);
+ document.write('</SELECT>');
+ document.write('</FORM>');
+}
+
+function dateIsEmpty(form)
+{
+ return form.day.selectedIndex == 0 &&
+ form.month.selectedIndex == 0 &&
+ form.year.selectedIndex == 0;
+}
+
+
+function convertDate(form, fieldName)
+{
+ var date;
+ var day = form.day.options[form.day.selectedIndex].value;
+ var month = form.month.options[form.month.selectedIndex].value;
+ var year = form.year.options[form.year.selectedIndex].value;
+ date = new Date(year,month,day);
+
+ // see if normalization was required
+ if (date.getMonth() != month || date.getDate() != day || year == 0) {
+ alert(fieldName + " is invalid");
+ return null;
+ }
+ else
+ return date.getTime();
+// return Math.round(date.getTime() / 1000);
+}
+
+function daysToSeconds(days){
+ return 3600 * 24 * days;
+}
+
+// encloses value in double quotes preceding all embedded double quotes with \
+function escapeValue(value)
+{
+ var result;
+ var fromIndex = 0, toIndex = 0;
+
+ // kludgy work-around for indexOf JavaScript bug on empty string
+ if (value == "")
+ return '\"\"';
+
+ result = '\"';
+ while ((toIndex = value.indexOf('\"',fromIndex)) != -1) {
+ result += value.substring(fromIndex,toIndex);
+ result += '\\"';
+ fromIndex = toIndex + 1;
+ }
+ result += value.substring(fromIndex,value.length);
+ result += '\"';
+ return result;
+}
+
+// encloses value in double quotes preceding all embedded double quotes and
+// backslashes with backslash
+function escapeValueJSString(value)
+{
+ var result = "";
+
+ // Do we need to escape any characters
+ for (i=0; i < value.length; i++) {
+ c = value.charAt(i);
+ if (c == '\\' | c == '"') {
+ result += '\\';
+ }
+ result += c;
+ }
+ return '\"' + result + '\"';
+}
+
+function escapeValueRfc1779(value)
+{
+ var result = "";
+
+ // Do we need to escape any characters
+ for (i=0; i < value.length; i++) {
+ c = value.charAt(i);
+ if (c == ',' || c == '=' || c == '+' || c == '<' ||
+ c == '>' || c == '#' || c == ';' || c == '\r' ||
+ c == '\n' || c == '\\' || c == '"') {
+ result += '\\';
+ }
+ result += c;
+ }
+ return result;
+}
+
+// helper function to construct name component(pattern)
+function makeComponent(list,tag,value,asPattern)
+{
+ var last = list.length;
+// if (asPattern) {
+// list[last] = (value == "") ? "*" : (tag+"="+escapeValueRfc1779(value));
+// }
+// else if (value != "")
+ if (value != "") {
+ list[last] = tag+"="+escapeValueRfc1779(value);
+// } else if (!asPattern) {
+// list[last] = tag+"=*";
+ }
+// alert("asPattern = " + asPattern);
+}
+
+// If asPattern is false formulates the RFC 1779 format subject name
+// from the component parts skipping all components with blank values,
+// otherwise builds RFC 1779-like matching pattern from components
+function computeNameCriterion(form)
+{
+ var asPattern = form.match[1].checked;
+ var result = new Array;
+
+ with (form) {
+ // The order of clauses here determines how components are ordered
+ // in the name sent in the client's request. A site may wish to
+ // re-order the clauses here if their conventions produce names
+ // with components in a different order.
+ makeComponent(result,"E",eMail.value,asPattern);
+ makeComponent(result,"CN",commonName.value,asPattern);
+ makeComponent(result,"UID",userID.value,asPattern);
+ makeComponent(result,"OU",orgUnit.value,asPattern);
+ makeComponent(result,"O",org.value,asPattern);
+ makeComponent(result,"L",locality.value,asPattern);
+ makeComponent(result,"ST",state.value,asPattern);
+ makeComponent(result,"C",country.value,asPattern);
+ }
+ if (result.length == 0)
+// return asPattern ? "0 == 0" : "0 == 1";
+ return "(x509Cert.subject=*)";
+ else {
+ return "(x509Cert.subject" + (asPattern ? "~=" : "=") + escapeValue(nsjoin(result,",")) + ")";
+ }
+// escapeValue(result.join(', '));
+}
+
+// helper function to construct name component(pattern)
+function makeComponentFilter(list,tag,value,asPattern)
+{
+ var last = list.length;
+ if (value != "") {
+ if (asPattern) {
+ list[last] = "(x509Cert.subject=*"+tag+"=*"+
+ escapeValueRfc1779(value)+"*)";
+ } else {
+ // exact match (either the end, or appended with ",")
+ list[last] = "(|(x509Cert.subject=*"+tag+"="+
+ escapeValueRfc1779(value)+",*)"
+ +"(x509Cert.subject=*"+tag+"="+
+ escapeValueRfc1779(value)+"))";
+ }
+ }
+}
+
+function computeNameFilter(form)
+{
+ var asPattern = form.match[1].checked;
+ var result = new Array;
+
+ with (form) {
+ // The order of clauses here determines how components are ordered
+ // in the name sent in the client's request. A site may wish to
+ // re-order the clauses here if their conventions produce names
+ // with components in a different order.
+ makeComponentFilter(result,"E",eMail.value,asPattern);
+ makeComponentFilter(result,"CN",commonName.value,asPattern);
+ makeComponentFilter(result,"UID",userID.value,asPattern);
+ makeComponentFilter(result,"OU",orgUnit.value,asPattern);
+ makeComponentFilter(result,"O",org.value,asPattern);
+ makeComponentFilter(result,"L",locality.value,asPattern);
+ makeComponentFilter(result,"ST",state.value,asPattern);
+ makeComponentFilter(result,"C",country.value,asPattern);
+ }
+ if (result.length == 0) {
+ return "(x509Cert.subject=*)";
+ } else {
+ if (asPattern) {
+ return "(|" + nsjoin(result,"") + ")";
+ } else {
+ return "(&" + nsjoin(result,"") + ")";
+ }
+ }
+}
+
+function booleanCrit(crit,radioArg)
+{
+ for (var i = 0; i < radioArg.length; ++i ){
+ if( radioArg[i].checked ) {
+ if (radioArg[i].value.length != 0) {
+ crit[crit.length] = radioArg[i].name + " == " + radioArg[i].value;
+ }
+ return;
+ }
+ }
+}
+
+function isHTTPEscapeChar(c)
+{
+ if (c == '%' || c == '#' || c == '+' || c == '=' || c == '\n' ||
+ c == '\r' || c == '\t' || c == ';' || c == '&' ||
+ c == '>') {
+ return true;
+ }
+
+ return false;
+}
+
+function produceHTTPEscapedString(inString)
+{
+ table = new Object();
+ table["%"] = "25";
+ table["#"] = "23";
+ table["+"] = "2B";
+ table["="] = "3D";
+ table["\n"] = "0A";
+ table["\r"] = "0D";
+ table["\t"] = "09";
+ table[";"] = "3B";
+ table["&"] = "26";
+ table[">"] = "3E";
+
+ outString = "";
+
+ for (i=0; i < inString.length; i++) {
+ if (inString.charAt(i) == ' ') {
+ outString += '+';
+ } else {
+ if (isHTTPEscapeChar(inString.charAt(i))) {
+ outString += "%" + table[inString.substring(i, i+1)];
+ } else {
+ outString += inString.charAt(i);
+ }
+ }
+ }
+
+ return outString;
+}
+
+function isHex(string)
+{
+ if (string.charAt(0) == '0' &&
+ (string.charAt(1) == 'x' || string.charAt(1) == 'X')) {
+ return true;
+ } else {
+ return false;
+ }
+}
+
+function writeError(errorDetails)
+{
+ document.write("<center><h2><b>" +
+ "Problem Processing Your Request" +
+ "</b></h2></center><p>" +
+ "The service encountered a problem " +
+ "when processing your request. This problem may " +
+ "indicate a flaw in the form used to submit your " +
+ "request or the values that were entered into the form." +
+ "The following message supplies more information " +
+ "about the error that occurred.<p>");
+ document.write("<blockquote><b><pre>");
+ if (errorDetails != null) {
+ document.write(errorDetails);
+ } else {
+ document.write("Unable to provide details. " +
+ "Contact Administrator.");
+ }
+ document.write("</pre></b></blockquote>");
+ if (result.header.errorDescription != null) {
+ document.write('<p>Additional Information:<p>');
+ document.write('<blockquote><b>');
+ document.write(result.header.errorDescription);
+ document.write('</b></blockquote>');
+ }
+ document.write("<p>");
+ document.write("Please consult your local administrator for " +
+ "further assistance.");
+ document.write("The certificate server's log may provide " +
+ "further information.");
+}
+
+// strips (optional) spaces and 0[xX] prefix at the beginning of s
+function stripPrefix(s)
+{
+ var i;
+ for(i = 0; i < s.length - 1; ++i) {
+ if (s.charAt(i) != ' ' )
+ break;
+ }
+ if (s.charAt(i) == '0' && (s.charAt(i+1) == 'x' || s.charAt(i+1) == 'X')) {
+ return s.substring(i+2,s.length);
+ } else {
+ return s.substring(i,s.length);;
+ }
+}
+
+// removes colons from value and returns the result
+// used as helper to convert colon-separated hexadecimal numbers
+// to regular numbers
+function removeColons(value)
+{
+ var result = "";
+
+ for (i=0; i < value.length; i++) {
+ c = value.charAt(i);
+ if (c != ':' ){
+ result += c;
+ }
+ }
+ return result;
+}
+
+// Replacement for the array.join() function which isn't in MSIE 3.0
+
+function nsjoin(array,str) {
+ val = "";
+ for (i=0; i<array.length; i++) {
+ val = val + array[i];
+ if (i < (array.length-1)) val = val+str;
+ }
+ return val;
+}
+//-->
diff --git a/base/tks/shared/webapps/tks/agent/header.template b/base/tks/shared/webapps/tks/agent/header.template
new file mode 100644
index 000000000..d1221b14b
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/header.template
@@ -0,0 +1,82 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<CMS_TEMPLATE>
+<title>Header</title>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+</head>
+
+<body onResize=location.reload() bgcolor="#CCCCCC" link="#FFFFFF" vlink="#FFFFFF" alink="#CCCCFF">
+<table border="0" width="100%" cellspacing="0" cellpadding="0" bgcolor="#000080">
+ <tr>
+ <td>
+ <table border="0" cellspacing="12" cellpadding="0">
+ <tr>
+ <td><img src="/pki/images/logo_header.gif"></td>
+ <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
+ <td><font size="+1" face="PrimaSans BT, Verdana, sans-serif" color="white"><b>Dogtag<sup><font color="#999999" size="-2">&reg;</font></sup> Agent Services</b></font></td>
+ </tr>
+ </table>
+ <table border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td><img src="/pki/images/spacer.gif" alt="" width="12" height="21"></td>
+<SCRIPT type="text/javascript">
+ for (var i = 0; i < result.recordSet.length; ++i) {
+ if (result.recordSet[i].id == header.selected) {
+ document.write('<td><img src="/pki/images/lgLeftTab.gif" width="13" height="21"><\/td>');
+ document.write('<td bgcolor="#cccccc" nowrap>');
+ } else {
+ document.write('<td><img src="/pki/images/dgLeftTab.gif" width="13" height="21"><\/td>');
+ document.write('<td bgcolor="#999999" nowrap>');
+ }
+ document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif">');
+ if (result.recordSet[i].type == "CertificateAuthority") {
+ type = "Certificate Manager";
+ } else if (result.recordSet[i].type == "KeyRecoveryAuthority") {
+ type = "Data Recovery Manager";
+ } else if (result.recordSet[i].type == "OCSPAuthority") {
+ type = "Online Certificate Status Manager";
+ } else if (result.recordSet[i].type == "RegistrationAuthority") {
+ type = "Registration Manager";
+ }
+ if (result.recordSet[i].id == header.selected) {
+ document.write('<b>' + type + '<\/b>');
+ } else {
+ document.write('<a href="../' +
+ result.recordSet[i].id +
+ '/index.html" target="_top">' +
+ type + '<\/a>');
+ }
+ document.write('<\/font><\/td>');
+ if (result.recordSet[i].id == header.selected) {
+ document.write('<td><img src="/pki/images/lgRightTab.gif" width="16" height="21" alt=""><\/td>');
+ } else {
+ document.write('<td><img src="/pki/images/dgRightTab.gif" width="16" height="21" alt=""><\/td>');
+ }
+ }
+</SCRIPT>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+</body>
+</html>
+
diff --git a/base/tks/shared/webapps/tks/agent/helpfun.js b/base/tks/shared/webapps/tks/agent/helpfun.js
new file mode 100644
index 000000000..f9580279a
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/helpfun.js
@@ -0,0 +1,36 @@
+// --- BEGIN COPYRIGHT BLOCK ---
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; version 2 of the License.
+//
+// This program 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 General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License along
+// with this program; if not, write to the Free Software Foundation, Inc.,
+// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+//
+// Copyright (C) 2007 Red Hat, Inc.
+// All rights reserved.
+// --- END COPYRIGHT BLOCK ---
+
+
+function help(helptopic) {
+
+ var HelpWin=window.open("","MyWin", "toolbar=no,directories=no,menubar=no,status=no,scrollbars=yes,resizable=yes,width=500,height=500");
+
+ HelpWin.location = helptopic;
+ HelpWin.focus();
+
+}
+
+function helpstatus(helpline) {
+
+ window.status = helpline;
+
+ return true;
+
+}
+
diff --git a/base/tks/shared/webapps/tks/agent/index.html b/base/tks/shared/webapps/tks/agent/index.html
new file mode 100644
index 000000000..30662d47a
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/index.html
@@ -0,0 +1,23 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<html>
+<script lang="javascript">
+ // redirect to 'ROOT'
+ window.location = "/";
+</script>
+</html>
diff --git a/base/tks/shared/webapps/tks/agent/index.template b/base/tks/shared/webapps/tks/agent/index.template
new file mode 100644
index 000000000..534ad257b
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/index.template
@@ -0,0 +1,140 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<CMS_TEMPLATE>
+<title>TKS Agent</title>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+</head>
+
+<body bgcolor="#FFFFFF" link="#666699" vlink="#666699" alink="#333366">
+<table border="0" width="100%" cellspacing="0" cellpadding="6">
+ <tr bgcolor="#000080">
+ <td>
+ <table border="0" cellspacing="12" cellpadding="0">
+ <tr>
+ <td><img src="/pki/images/logo_header.gif"></td>
+ <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
+ <td><font size="+1" face="PrimaSans BT, Verdana, sans-serif" color="white"><b>Dogtag<sup><font color="#999999" size="-2">&reg;</font></sup> Agent Services</b></font></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr valign="TOP">
+ <td>&nbsp;</td>
+ <td>
+ <table border="0" cellspacing="0" cellpadding="0">
+ <tr valign="TOP">
+ <td>&nbsp;</td>
+ <td>&nbsp;</td>
+ </tr>
+<SCRIPT type="text/javascript">
+function displayError()
+{
+ document.write("<center><h2><b>" +
+ "Problem Processing Your Request" +
+ "</b></h2></center><p>" +
+ "The service encountered a problem " +
+ "when processing your request. This problem may " +
+ "indicate a flaw in the form used to submit your " +
+ "request or the values that were entered into the form." +
+ "The following message supplies more information " +
+ "about the error that occurred.<p>");
+ document.write("<blockquote><b><pre>");
+ if (result.header.errorDetails != null) {
+ document.write(result.header.errorDetails);
+ } else {
+ document.write("Unable to provide details. " +
+ "Contact Administrator.");
+ }
+ document.write("</pre></b></blockquote>");
+ if (result.header.errorDescription != null) {
+ document.write('<p>Additional Information:<p>');
+ document.write('<blockquote><b>');
+ document.write(result.header.errorDescription);
+ document.write('</b></blockquote>');
+ }
+ document.write("<p>");
+ document.write("Please consult your local administrator for " +
+ "further assistance.");
+ document.write("The certificate server's log may provide " +
+ "further information.");
+}
+
+if (result.header.errorDetails != null) {
+ displayError();
+} else {
+ var displayServices = 'true';
+ for (var i = 0; i < result.recordSet.length; ++i) {
+ document.write('<tr valign="TOP">');
+ document.write('<td>');
+ document.write('<img src="/pki/images/goto-tall.gif" width="10" height="15">&nbsp;</td>');
+ document.write('<td>');
+ document.write('<font face="PrimaSans BT, Verdana, sans-serif">');
+ document.write('<a href="');
+ document.write(result.recordSet[i].id + '/index.html');
+ if (result.recordSet[i].type == "RegistrationAuthority") {
+ document.write('">Registration Manager Agent Services</a></font>');
+ document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif"><br>');
+ document.write('The operations available through this menu are used to process certificate requests, revoke certificates, and update information in the directory server.');
+ } else if (result.recordSet[i].type == "CertificateAuthority") {
+ document.write('">Certificate Manager Agent Services</a></font>');
+ document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif"><br>');
+ document.write('The operations available through this menu are used to process certificate requests, revoke certificates, and update information in the directory server.');
+ } else if (result.recordSet[i].type == "OCSPAuthority") {
+ displayServices = 'false';
+ document.write('">Online Certificate Status Manager Agent Services</a></font>');
+ document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif"><br>');
+ document.write('The operations available through this menu are used to check certificate status.');
+ } else if (result.recordSet[i].type == "KeyRecoveryAuthority") {
+ displayServices = 'false';
+ document.write('">Data Recovery Manager Agent Services</a></font>');
+ document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif"><br>');
+ document.write('The operations available through this menu are used to process key requests, and recover keys.');
+ } else {
+ document.write('">Internal Error</a></font>');
+ }
+ document.write('</font></td></tr>');
+ }
+}
+document.write('<tr valign="TOP">');
+document.write('<td>&nbsp;</td>');
+document.write('<td>&nbsp;</td>');
+document.write('</tr>');
+if (displayServices== 'true')
+{
+ document.write('<tr valign="TOP">');
+ document.write('<TD><IMG src="/pki/images/goto-tall.gif" width="10" height="15"></TD>');
+ document.write('<TD><FONT face="PrimaSans BT, Verdana, sans-serif">');
+ document.write('<A href="ports">Services Summary</A></FONT></TD>');
+ document.write('</tr>');
+}
+document.write('<TR valign="TOP">');
+document.write('<TD> </TD>');
+document.write('<TD> </TD>');
+document.write('</tr>');
+document.write('</table>');
+document.write('</td>');
+document.write('<td>&nbsp;</td>');
+document.write('</tr>');
+</SCRIPT>
+
+</table>
+</body>
+</html>
diff --git a/base/tks/shared/webapps/tks/agent/ports.template b/base/tks/shared/webapps/tks/agent/ports.template
new file mode 100644
index 000000000..4d33dd3f0
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/ports.template
@@ -0,0 +1,121 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<CMS_TEMPLATE>
+<title>TKS Agent Ports</title>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+</head>
+
+<body bgcolor="#FFFFFF" link="#666699" vlink="#666699" alink="#333366">
+<table border="0" width="100%" cellspacing="0" cellpadding="6">
+ <tr bgcolor="#000080">
+ <td>
+ <table border="0" cellspacing="12" cellpadding="0">
+ <tr>
+ <td><img src="/pki/images/logo_header.gif"></td>
+ <td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
+ <td><font size="+1" face="PrimaSans BT, Verdana, sans-serif" color="white"><b>Dogtag<sup><font color="#999999" size="-2">&reg;</font></sup> Services Summary</b></font></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr valign="TOP">
+ <td>&nbsp;</td>
+ <td>
+ <table border="0" cellspacing="0" cellpadding="0">
+ <tr valign="TOP">
+ <td>&nbsp;</td>
+ <td>&nbsp;</td>
+ </tr>
+<SCRIPT type="text/javascript">
+function displayError()
+{
+ document.write("<center><h2><b>" +
+ "Problem Processing Your Request" +
+ "</b></h2></center><p>" +
+ "The service encountered a problem " +
+ "when processing your request. This problem may " +
+ "indicate a flaw in the form used to submit your " +
+ "request or the values that were entered into the form." +
+ "The following message supplies more information " +
+ "about the error that occurred.<p>");
+ document.write("<blockquote><b><pre>");
+ if (result.header.errorDetails != null) {
+ document.write(result.header.errorDetails);
+ } else {
+ document.write("Unable to provide details. " +
+ "Contact Administrator.");
+ }
+ document.write("</pre></b></blockquote>");
+ if (result.header.errorDescription != null) {
+ document.write('<p>Additional Information:<p>');
+ document.write('<blockquote><b>');
+ document.write(result.header.errorDescription);
+ document.write('</b></blockquote>');
+ }
+ document.write("<p>");
+ document.write("Please consult your local administrator for " +
+ "further assistance.");
+ document.write("The certificate server's log may provide " +
+ "further information.");
+}
+
+if (result.header.errorDetails != null) {
+ displayError();
+} else {
+ for (var i = 0; i < result.recordSet.length; ++i) {
+ if (result.recordSet[i].port == -1)
+ continue;
+ document.write('<tr valign="TOP">');
+ document.write('<td>');
+ document.write('<img src="/pki/images/goto-tall.gif" width="10" height="15">&nbsp;</td>');
+ document.write('<td>');
+ document.write('<font face="PrimaSans BT, Verdana, sans-serif">');
+ document.write('<a href="');
+ document.write(result.recordSet[i].prefix + "://" +
+ result.header.hostname + ":" +
+ result.recordSet[i].port);
+ if (result.recordSet[i].type == "eeGateway.http.port") {
+ document.write('">End Users Services</a></font>');
+ document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif"><br>');
+ } else if (result.recordSet[i].type == "eeGateway.https.port") {
+ document.write('">SSL End Users Services</a></font>');
+ document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif"><br>');
+ } else if (result.recordSet[i].type == "agentGateway.https.port") {
+ document.write('">Agent Services</a></font>');
+ document.write('<font size="-1" face="PrimaSans BT, Verdana, sans-serif"><br>');
+ } else {
+ document.write('">Internal Error</a></font>');
+ }
+ document.write('</font></td></tr>');
+ }
+}
+</SCRIPT>
+ <tr valign="TOP">
+ <td>&nbsp;</td>
+ <td>&nbsp;</td>
+ </tr>
+ </table>
+ </td>
+ <td>&nbsp;</td>
+ </tr>
+</table>
+</body>
+</html>
diff --git a/base/tks/shared/webapps/tks/agent/tks/getStats.template b/base/tks/shared/webapps/tks/agent/tks/getStats.template
new file mode 100644
index 000000000..59ae3e6d3
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/tks/getStats.template
@@ -0,0 +1,141 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+ <title>Display CRL</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<SCRIPT LANGUAGE="JavaScript"></SCRIPT>
+<SCRIPT LANGUAGE="JavaScript" SRC="../helpfun.js"></SCRIPT>
+<SCRIPT LANGUAGE="JavaScript">
+<!--
+if (navigator.appName == "Microsoft Internet Explorer") {
+ document.writeln('<META HTTP-EQUIV="Pragma" CONTENT="no-cache">');
+}
+//-->
+</SCRIPT>
+</head>
+
+<CMS_TEMPLATE>
+
+<body bgcolor="#FFFFFF" link="#6666CC" vlink="#6666CC" alink="#333399">
+<font face="PrimaSans BT, Verdana, sans-serif" size="+1">
+Statistics
+</font><br>
+<table border="0" cellspacing="0" cellpadding="0" background="/pki/images/hr.gif" width="100%">
+ <tr>
+ <td>&nbsp;</td>
+ </tr>
+</table>
+<br>
+
+<SCRIPT LANGUAGE="JavaScript">
+<!--
+ document.writeln('<table border="0" cellspacing="0" cellpadding="0" width="100%">');
+ document.writeln('<tr align="left" bgcolor="#e5e5e5"><td align="left">');
+ document.writeln('<font face="PrimaSans BT, Verdana, sans-serif" size="-1">');
+ document.writeln('Detailed Information (Start Time <b>' + header.startTime + '</b>, Current Time: <b>' + header.curTime + '</b>)</font></td><td align=right><a href="getStats?op=clear">Clear Statistics</a></td></tr></table>');
+
+ document.writeln('<table border="0" cellspacing="2" cellpadding="2" width="100%">');
+ document.writeln('<tr>');
+ document.writeln('<td width="40%">');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ document.writeln('<b>Action</b></font></td>');
+ document.writeln('<td align="left">');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ document.writeln('<b># of operations</b></font></td>');
+ document.writeln('<td align="left">');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ document.writeln('<b>Time Taken (in msec)</b></font></td>');
+ document.writeln('<td align="left">');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ document.writeln('<b>Min</b></font></td>');
+ document.writeln('<td align="left">');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ document.writeln('<b>Max</b></font></td>');
+ document.writeln('<td align="left">');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ document.writeln('<b>Std Dev</b></font></td>');
+ document.writeln('<td align="left">');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ document.writeln('<b>Avg</b></font></td>');
+ document.writeln('<td align="left">');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ document.writeln('<b>Percentage</b></font></td>');
+ document.writeln('</tr>');
+ for (var i = 0; i <= recordCount; i++) {
+ if (result.recordSet[i].name.charAt(0) == '-') {
+ document.writeln('<tr><td>');
+ } else {
+ document.writeln('<tr bgcolor="#cccccc"><td>');
+ }
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ document.writeln(result.recordSet[i].name + '</font></td>');
+ document.writeln('<td>');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ document.writeln(result.recordSet[i].noOfOp+'</font></td>');
+ document.writeln('<td>');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ document.writeln(result.recordSet[i].timeTaken+'</font></td>');
+ document.writeln('<td>');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ if (result.recordSet[i].max == -1) {
+ document.writeln('-</font></td>');
+ } else {
+ document.writeln(result.recordSet[i].min+'</font></td>');
+ }
+ document.writeln('<td>');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ if (result.recordSet[i].max == -1) {
+ document.writeln('-</font></td>');
+ } else {
+ document.writeln(result.recordSet[i].max+'</font></td>');
+ }
+ document.writeln('<td>');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ if (result.recordSet[i].stddev == -1) {
+ document.writeln('-</font></td>');
+ } else {
+ document.writeln(result.recordSet[i].stddev+'</font></td>');
+ }
+ document.writeln('<td>');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ if (result.recordSet[i].noOfOp == 0) {
+ document.writeln('-');
+ } else {
+ document.writeln(Math.round(100*(result.recordSet[i].avg))/100);
+ }
+ document.writeln('</font></td>');
+ document.writeln('<td>');
+ document.writeln('<font size=-1 face="PrimaSans BT, Verdana, sans-serif">');
+ if (result.recordSet[i].noOfOp == 0) {
+ document.writeln('-');
+ } else {
+ document.writeln(Math.round(100*(result.recordSet[i].percentage))/100 + '%');
+ }
+ document.writeln('</font></td>');
+ document.writeln('</tr>');
+ }
+ document.writeln('</table><br>');
+
+//-->
+</SCRIPT>
+
+</BODY>
+</HTML>
+
diff --git a/base/tks/shared/webapps/tks/agent/tks/index.html b/base/tks/shared/webapps/tks/agent/tks/index.html
new file mode 100644
index 000000000..e9e025222
--- /dev/null
+++ b/base/tks/shared/webapps/tks/agent/tks/index.html
@@ -0,0 +1,31 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+ <meta http-equiv="content-type"
+ content="text/html; charset=ISO-8859-1">
+ <link rel="shortcut icon" href="/pki/images/favicon.ico" />
+ <title>TKS Agent</title>
+</head>
+<body>
+<div style="text-align: center;"><big><big><big><big><span
+ style="font-weight: bold;">TKS&nbsp; services</span></big></big></big></big><br>
+</div>
+</body>
+</html>
diff --git a/base/tks/shared/webapps/tks/index.html b/base/tks/shared/webapps/tks/index.html
new file mode 100644
index 000000000..30662d47a
--- /dev/null
+++ b/base/tks/shared/webapps/tks/index.html
@@ -0,0 +1,23 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<html>
+<script lang="javascript">
+ // redirect to 'ROOT'
+ window.location = "/";
+</script>
+</html>
diff --git a/base/tks/shared/webapps/tks/services.template b/base/tks/shared/webapps/tks/services.template
new file mode 100644
index 000000000..133bcf24b
--- /dev/null
+++ b/base/tks/shared/webapps/tks/services.template
@@ -0,0 +1,106 @@
+<!-- --- BEGIN COPYRIGHT BLOCK ---
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Copyright (C) 2007 Red Hat, Inc.
+ All rights reserved.
+ --- END COPYRIGHT BLOCK --- -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<CMS_TEMPLATE>
+<title>TKS Services</title>
+ <link rel="shortcut icon" href="/pki/images/favicon.ico" />
+ <link rel="stylesheet" href="/pki/css/pki-base.css" type="text/css" />
+ <META http-equiv=Content-Type content="text/html; charset=UTF-8">
+
+</head>
+<body bgcolor="#FFFFFF" link="#666699" vlink="#666699" alink="#333366">
+
+<div id="header">
+ <a href="http://pki.fedoraproject.org/" title="Visit pki.fedoraproject.org for more information about Dogtag products and services"><img src="/pki/images/logo_header.gif" alt="Dogtag" id="myLogo" /></a>
+ <div id="headertitle">
+ <a href="/" title="Dogtag Network homepage">Dogtag<sup><font size="-2">&reg;</font></sup> Certificate System</a>
+ </div>
+ <div id="account">
+ <dl><dt><span></span></dt><dd></dd></dl>
+ </div>
+</div>
+
+<div id="mainNavOuter">
+<div id="mainNav">
+<div id="mainNavInner">
+
+</div><!-- end mainNavInner -->
+</div><!-- end mainNav -->
+</div><!-- end mainNavOuter -->
+
+
+<div id="bar">
+
+<div id="systembar">
+<div id="systembarinner">
+
+<div>
+ -
+</div>
+
+
+</div>
+</div>
+
+</div>
+
+
+<font size="+1" face="PrimaSans BT, Verdana, Arial, Helvetica, sans-serif">
+Certificate System TKS Services Page
+</font><br>
+<p>
+</font>
+<p>
+<center>
+<table border="0" cellspacing="0" cellpadding="0">
+<tr valign="TOP">
+<td>&nbsp;</td>
+<td>&nbsp;</td>
+</tr>
+<script language=javascript>
+for (var i=0; i<result.recordSet.length; ++i) {
+ document.write('<tr valign="TOP">');
+ document.write('<td>');
+ document.write('<td>');
+ document.write('<font size=4 face="PrimaSans BT, Verdana, sans-serif">');
+ document.write('<li><a href="');
+ document.write(result.recordSet[i].prefix + "://" +
+ result.recordSet[i].host + ":" + result.recordSet[i].port + "/"+
+ result.recordSet[i].uri);
+ if (result.recordSet[i].type == "admin") {
+ document.write('">Admin Services</a></font>');
+ } else if (result.recordSet[i].type == "agent") {
+ document.write('">Agent Services</a></font>');
+ } else if (result.recordSet[i].type == "ee") {
+ document.write('">SSL End Users Services</a></font>');
+ }
+
+ document.write('</font></td></tr>');
+}
+</script>
+<tr valign="TOP">
+<td>&nbsp;</td>
+<td>&nbsp;</td>
+</tr>
+</table>
+</center>
+<div id="footer">
+</div>
+</body>
+</html>
,˞):gNn o"b,/'Jt?iy^Jw|Zo!+dh6nA60I[Rܖ3>S@KMKJz,3f>UR=ie]Z⏤) -]&[ rvrZ{S""2eֳA ͔%=y׶趈(tn!ՙޞ ӢM߾T-db m#]0>'":wQ(|I/RK6jX0[oݢz0m q?DG\?q=|]jJrDmWA=TWF|6ˌ 9i>n2˨#eԴ :0d4t~ܗH;P5x1 Y@ԷK0Uj5R9V">#οAMub $Yyyo J /|5m_noBr3Z)AaB /;\ m^ HLzJi9l(LA_1)蟂dS4%ij{q#a<l4ԡuِ" c"_[ ɌB m? c+ZA25J:w)~WP\Y3E!SR׏~#gbG^at&C0n;X cDF+v2 w68_=UZKAauo\)AjRI;h!pgX-bP<!ǜ*5z&|ۤ:- v22h7&_Ow`:J oUi}9ɩڿͫ[Wgc*7gpLD*}mbO.M}ߍFRi1A^poK9E.uJ6"6EЭmP?QFII^ 'L2%ll$]6|MMdA֍XdקDu,p0HXGF9S !$A\4Ja9hg%s$*Os5'6srK[)#p;vuFے}Aݗg_y XNp_⺢)~h훹iF9B['º2r2U\d6w{mdq{>h݋:Aǎ{f) ub$6B*, ;ke2-3 H)y\`'xt9Olwͷv\0) K54*PtH=n8(psTaҚ-|b$H{,~T]qIq*_3h,,)k(Ⱥ!o eK\3bŰ 69]0 `'"6*"{27wЃ;-)xv[ZVb ̀~z/f^CO`H~<ܒfP/($<<_|rjca0{tP71~&8BgEn!99*3I|ćfeHp#6nHx ']T<2) ob|$ZPT$mڛ̕0="ϟzLnk,exI3"nmᄶ~IoH؉ܿ15!޲o+G.(5ӹM LK7W"бxS"K͚9VqFѳA% n< U$ld/UJ |\".)黜)x-؟4]P!Kՙs7@b ׳H،,-0q(p18ȓ2hǖA\=>SV"'FB ]+ ]R`!.brȍ:TTB+nS`fuxPms@iH#51>ҐͰ}>f0z= 9[6P]}7T0h.iɔ:"7dVx2zXT՛SX|XWh BAȴ>4x&'ADz;'fXFGN%mNԇlbѦ`-PH}`7CgtJeؙ~1pqyG)I'[pLƘ"q _B5O"D?UwLH *YM likP)WI} U d. TT~1pt*#<om8ҺV>r7Ò#CntmK=bivWvZ)Nܦ;)"hwIU`ɢoEFpBa,L*TB)"&G"+ 8c,JW?i4rH|< 5EI>Y[.eCꄶe4ۨS">+_s#HIV9TaJ'r,4w#KPeڕ+$-I4AB,\O9Pވ0"I?7")%v~U $<*QpccKCMYY?p},H[ẘbPb"tSLDPd' >5RWJŝRvUysγ ;~(`3w`u 0b=ai=}x{$RlwSQj>e~j B#!#^O1Z8JQ#4J֍`zyj=s?z\i|R4oZIs30kN XSR:Ћ }}SJ"|JNRp)8~h%cYe4Em}#x#],Ǣi>P h!B*6ݘ#H 3vk߼S7ج]2GH*;'ޘv*#{4lWlu_ Ҽ+Ŧl, pg5WxyܦBYl bau2 ,PM+WCAM80{(F r"' )9}1 kTZ!xP8U9sȇ$(2;T&ە_^nP guZډk5IfHh78 苕t@}+yL7Sh`ql MQ@'@<ϸl[}%R,Ail\ltAq(%r$;uv7\_>-U%6^ys'=hnB4E…~A3{D{^pO-ج^\9Z%Fdq*8c]-.?GR} ؅^ ,F}Fƀ?[X3oF[ЎK`&d*V+4&v[ 9hg 0 w4{^p &;NOp7RTF-X9X?W>CtAc'x #Gy5'ż6GmZ3 uz{!?"%P|_]H֣˃i<8*v-!y;ϝ1evpWR- ]zc$Uwfk. (Wpd0..lGbo^! XfljtIRBHga\t+)iө"-xI2DR$BJS 0RѬ<%Xo xD%x  ^[jjĆ,`)4öK1 6ptfJzUqtZΧ%RU1xعcix J](uxfo,7) &VM)ˆReaCE*(Ӹ"]D/ᔣGJjeV;ؙ1`jYpu G <-z@rO˿\pDɿt,BLbFX8~6V] / Jh=t+aZw}7ߓ5M<$*A5< s:k=keKY*̔ܘ[sdc\"]iuk7L!T#\oZq gc#fb$Hf +W,mM#og QDCj;N0>.BX-=۶1B56QB'+tn|Yܑr _j9\fS" ?Lf^OB 93C>0\;򫊪-9"2YqQlУ9 +I,ly6R[##oԺl' /]rI>>n{=:od kˠb?7D%d0qI =_+}lKהՉ H< L񋙔+bQU/*ml Bp&"xB_U[Kړ`$KlqHVhۊ%RaY{e: m]eޓ'.@ܧbۄT߭j,J4v9-Z"R~}#9&)^ՃY =أYGn`P:7Ql^%oǕ^/ЧXe:chjdFZ`O] CT/w~5 +P'0M8횤/ٍdXO *t̋9 {`p웉,mAt)Y.D)mu+!#xFΐ]-:"{"m4l#G5lwkeh@z; $FuVkl;8+HI bxN f<9ƣB=q 3fx6S䕗cę^cI!֑*0ٞ#Q#8tr _ :3=M-Be */W^wD2 & g.KofrIE+mS 5Zg)j%aC"!H?8{j$AOG˿)䆿"{4^Z1kC!0:JwVi̱ڣVK&*ܲ 7rTqJG\7T|hǨ.8E"!mkJ26𴍦z=?|ZS 3@Z---%BQ/brIk^Vr_uنՀ_Og2_:$H8b,V%!Ty)\-pn;rBmk/[(>'ɕSVXɜuc!E(93Wh j֝.\ݻߣ 7%dt l[ <+ZLGb߬tNi6Ul}A=/ɛ6l0 A) i+A!{Ӣ*18U=aZ !$w7T灕tv(=Ng&VE&$Qz voX뵐=_=NhlL<&v˪i$j)sDSTV"S nTsIv^yp;3K[n534kq+?2hc?vm7"yk䨒/0y$ӻGq3S#!WVܹq  TSTu]E! X-3,H/=你T}ygjɮL(Wk5ِy2l3dy Ra_JP*bo /l> hb dSIJ)7jkVDjNFQGҞ^5YvۇLGh>|kū79&1GMY): -Gr"t+? >onA#rxGNal&9p⟶μ `Q#HmY ā $z.f8?~กsbzcS&jc$\{r60%{h,D0o2቏ݒ9L8P. 2Nɬtd4Ɠ& N>0KzBje3)&4ߟ>]?)1hzѻvn˯Z^,Jozuhf7cX]Mb9݊ x}&8{ߒ[D}eaMp*7FRc!U'o$HW(c++ s %}|ҁ~pFrI86h22!^~޹`գ(AvCSDZGN"'}P2XӰ XauEB}KNGS JPPCi<(^paPR 5RM22M1F:x - vM,Μ\X@M{f+0N(Y)u咫Ph+pPa4f3A!ɚr6ۆc)&1V^>DG^uMm{db&΢sOw `NFI(^ʇEE|_KUKR$:tA廟qBM;QI2\G"$@LwV%K%EaRK ̸h+T"w.zH3g)77ΣY=)Dc|V["4Q Lw1.{&BRϋŠV)6r^$>:EFe\R/bgOZZʃZ}[25mf3 N2]֮~,2W3ٯ&T!*eov_vA}CGo1l3d3RDx.P <2š/6d#ʦ bAf8%d 6Ȳ|SlG% ^9ha##M%R7 Kaz RՕYC\ghNgŖ@Acg>"00K! ^w=:Btqt`4'„,{fyV2Noz:\"j(x~ cOQKYh*nyUi  ,dcS Hy-tՖ7( gT~el' ! -(٤׋ q^;Q>w&f<^e!9 g؂ O~"z7Y>%:Q_3;C;ՒFxHl TTm pD_{yowCM8yy30bkU)ؖv[] hmX  쎆_FmicB7ǡ<תG`y'[eŌ놝S} !qτVx̹On.CFt_ WŮ 恖vI|G֋ysGbrI#jn{±1C o+0&;qnJ JzU$-1#MZe;X6o&lŸ 7h1=ȴRN94^n+;M 0j*HJ>z j+'fõ#̫GkPj]FfĕOO3ՋZ*^׸OHZtct`]c2mkm{5wqdr2㡺2ZObBvݶ bVxEqmN"D8Md^+׉7Uăn!j11P QqWQq+.̎[5?a]"ҋT Kmݺm,q ȸ}!>+}D!)3&jF |lOKshPj@5=nQbf>~j:c"X-]dZ:2Jz= Wr貹D@ O.dx[[sUC49)Tr DJΠHAZl_?Z|3';48έT7Wv闡h7H^>:~!9 V"誌ZJv*\b@HYzv5jm@Zj(5>q6.= jӮw#35 x,:] D %>.˓IAD !i-!)QU\2Wqќ{[As\7[Le&w$+=Cw6:2O.\cMRuR㐏CmT8^r!{6K4l>OW*.,7t迗dȌʦhXBc=Y(x BҢi0kYMQ"vYپbJAμmw.\tj"$;?ҘUׄ& Irb? ΅`@[ +^yl?TmlW~MCmԊ0wR8hcV*{&2DkbmxQdڽx~lHdt:6 yٯ-ԢUJԻcxHux"""-a6ۡO,Y7ޢ wp*IKGڃ9x#4NCAGC*'x<}}jϽqIZk'v7/6yl>%KIZ>٨yxP!5}Wkb?з鱗!Pɘw6 ewOި2:j\#Y4oWΉgMuG.6Ծ FjJK]ZȒw]xL+ҷ6xc̬SeK\2"K/ 3#gE9;g봽/Ңc1_O-"5Kn@p(.*qo A4~~D*: . <[lsi#9NuL:|+lR l pO @\RBUQ݆;f:m8IR5BOwz~~<4)U^/&7kx3\imx`߈zWf/Ϸ ]ّ?O&pu,Z D&A>Oā'齲T- |&/=@MAJÛq2ӟEAIڎ2 6u^2XEk˓ įO37.5*x{Sˊxrac{f6)5IT]yuN/zfډ On͘#&y8 Dڶ'{e/y$\Q*Rpa6s_-V8G2]ϐ>pdYGo'fq|wkYd"D )rT 6jpzR 7.8ZqDp7 is_.~ FxMbJ~asgs}dCeEy=WUQebЀ \0-/-1'%x‹@M_"BA.y.^VpBHRV[<Vqiה3y VPEVeI~.%e Q٢ #Mrq$ Pm@-XEːܫ#(u(2AWtWR|HCg! cx?V/ q %-K2ߟk9f0)vJ<:L>NZR"w9r"T,\CtIa ޲b|fSңk\KV(}MTrA9(A+27m/Z}ZbK!xEet`U}ܹj>k-.` jS Vpey(Fؾ1,fp3L5CSmk̩F[bF.ĎDއ*q^[$V 8djjSE2Ԗ@Vܻwb'#ߕ`*B]=#$5_v@_ge9#Y,HQeQ(AI/fn^^n$~׈C! 9q4L PL=A $}Y'\ȈCkh[N|75ק$bf>dq>Ou6e(>-(*9$j.^{|{zGOˢjٯ[7":v!-'BP. ғ,e [)TfG@8 J.p!|p*dUsdqs$@B}DS-yC:g8#nOGIix7%i Q~fEx̩a93 y7 ,RA xy/MP&{p^6mn~G$Ĭp2@+ۖ]0[gڄ7-A;v`xϐt|Jz`d&P!rUƳ ?O*IqE'uѴ‡|=7n1a^[mq1P"yuʓ9?:* c:={6ǃRIۿ8Lytk'bKz$\Fhü $c-rC5v;P5Y0sD`7hmkwXy~.`* mݐgwO"v޹O?RcGqgӳ+,VT Mn-5^z]/nJF!+Hd_y3LG?8m?Ւ`k7CGuJ03ź Mʪ k~9 p @;YmU@"1(6VF|~,m%c'b %|ռM@\ʤ`W'oe#:|@ܓ4fyTd1Ͼ|>ZCMPBvG>C>!傪&`Ȋևl Φ ~gRech|`k{8u)B73B}a|$pyoïڇXDK[An 4 ٓFZp۴M&FE 藇<"]pWJcvݰn |Rebʂ>IQ-GZS(;g`H-,\h ?>gB+欠 y{摞1xb~$[HF^6d~[ެhs4MB== ?Bf*&'_݇e 5[0㱎z477خPa_AJҭ_LQ^KU!p) RC[0a`;74x+ҟ=hcPL`aj<\%mIKU|4y'Vw!4 kuCF4Π5V7!d ܠsNܦh2_~ < v>*rUB#"_ We89"&~mY+>1,=Uh-<UَV(EQP-efsբ.@]{0ޣ[RP "68*)?[vDٵGm&GXq*~jUF hBF6`LaxQ)p]&I|;=̿yS4I*$?.1PHګ@Akyfx 3dFwHSAe#&ƽ*VLʹ]oJvlޭ#1?tq]LC,ӭjg7:A/#_)p7~F)8iߑ86I@8i-Vi3df&Y:(13UPjR#I,_0n+'F+}efOC(##3H?j_ಱ﷡ut➣F쀬'h] ݛ!0*d=D9R*n  Igy5 ,_"掘_:G1ګp&OAWΨm7Lr glpG>ڮ &kAY*m^Uo~O>뤧T3׷%^Y# ; kW[c4 R{Gg|@YE<y 4BYڸPe~۟w s%@tqnvr oS"l-n\c-v ٤Էf2'1^BH:"V{Fr/J'Ĥ(gc4HRs],ǒr$VX>9@j" X7#1Ȃ] 8,HaDZaҷ2!r1uAF]yED@"_qµ4=fLwq9`9?F},F/BE(fr$OftP+(܇/ ֮3 -R{˓p&WeUNI#@r7~ N6% GͿTjZ'z2ϝ]4{Ta;UgNH*Y`ii\sCt9x*\X3k ct;L)\̀M'_kFl&A2O%Á:_j+H ~&@V\:,w"s>sZD K 7si 1ł3M ]hS{8ԧ%* nw`o|UCEKM{`&lYJ4@ϦAe~TT PVƩhoxn|;CS:_^Y^YET6Cqow퀵|I_f: ] ܍(mR &{;m%2fa +t-nV|2y?Ux%'L~TDISɖdNQRS 8q`wĒ/T'p<tPR㻄ݘl/g-13d:wH:u]}:t]<d[*ny2[&xvFd\EgސA`D6zon-Zis 2IB?pp߬ȳKw#䚣u9R QSӨIxK S>g jU]+< |F&z*LadolAD1mfHM wvX\+Z} BK-?OxMƤTJA$*(Tz6;fҴ>|&c)KZ.GDֆ2 hg|O <..Iǹ}RS'AT鼄!Uyz]Dpww-~j&7aT Gxq=yi6K/FL؂[m4Ѝ5uf ;{/`2 % iFB(,s_"{#+eࡁf"a,Hvȡ ~HX'Rb-) h@*_VF_@؛^ eY]Ŗ7v2n)397Xr~,ؑR&]8ޟP>jDvwMJjKu RS͂7BW{@B>wC#A_$;Z]42?!ڒsƍi/Oٓ3Dn)Cf;)O`5);rHM\MK_K7&PU*ll\Vs??b WTlz]] 'Í':W|@Y=-1.UĴTk0/ Qfuq$K'K3J.mg!NNʂ/.VDHDX[Z<7廝ڷK\o]\ͺ4TP̂Ngup,߻-V@-,#>EUf~ŸaWBO괋NŲzTz.QnF}=" F6rƹpkc$/sQ1^B,kA%>O@BO!)m LoT'ꐤ{ d|f^ճ{y7xX&j4]5M ['*P~7d:j6Èٳfiu0Ľ `cfйxȬ U!M3W z ݘM%fb=xUQe8$f_e<6QkFmfuZu:I\P EOlqOxIUqB_ sZV(5K~=tش"7 aYX3#F'c,R ]7U>t"yGx?Gs>2 -t8uGD OO:9"*{6&?Γ#Ee~^4gt,FH@[%"+S~gIZٓĪ ;9юv#Bb PZ?U'XE~J< RCbϪ[}ϲ/`!ŒI2!nne:1!0-`UMR xA>!O(SL<*|)*RviTΞ\]57Xidl5e/l,LVK9g,Go҈ĘMH-c 8YVx,%emz T;Ԋ0"g1{l'E,o/m P1B rEQU H@Ӎ(篤{/Ch0もU;Ak~saVe 9!-dhsK!sV0PQ=,A U v7Qպw΂!lԳJǔ h*K;^FjcA4zkb<=4@c\ 4E%k7n%tTLbh9ա%~8$PkˋoX`gmjY`5'|֙?| jsD/KRqISx|s5ŭؽqspQ ~P̐<,ZC 1yI餻r>ѵBԜˇ6|b$TKP$ PGe idB#xUl)c)sv_,@0L..cPlqmhګ;*ލ[u+ -Vn&6턣$}dx-/x37Xk6΂Þ8<< [kW9`1}Py]""Q?H?d{Fd^u{\%YYu}[63F6G{pόLUM)̱ե~f(c2pƸ>Wyj?+sJ3KjkٓG}PJߓo/gD.IR<͟%0DѳDx\Mtծ!JUe cUTWP%kzsBʀDT~jHI0;W}5D]|_Tm)e'!Y0nu Ht*OPHJ7P"A{mDV.Yqq[mڴM>(GJm2%1t*^/e]n;0.jK,S2Vgzeۧ X tWKt9\L,L0:TS[Rk $Dz\gul! 'F4NJ ]QyO>| YVֈȹnPqx͕nEWg/+kmzz)3CyBs3}v&n'is+łAfMycEg| ,TNy|(Pb[{Yxܵ6rk )}0FLs\/1t- ~'Jeᗃ4wѰ{d;7-+hH^eahD`JEʗm=K5tG#Hݝ:X/!8 2CWf5 JD#!۴#_`躜>د8 i'Ffj`]?A2j?)ր[2U a YQ!vb/3*u j~g'!]BwaHԎ=io_B8|D,TSg[L,ᭅM?HvO=3w|Xa\~%}¡I7eU3a&YJ:#9 &XGIz3/6vgpFTt_g jw ڮ%\ԝFQ]Oݼ_=h&UI_|#/>ZLJV]5-|ʂK)gS_k`\ߙ]ƛ#dxES75=&_ !oVcZ|eݿH]uXo#'waiF)-:p*]2,K]ekQ2_$ڠ@LQs٥-|Q*EO;X7ZD3v \*u*` E_18JﯦŐ8ptDE#*#5ջ8vf~gwNըԒb^|ԩd =p:TDV`/%YY$;!dɴbw3gu PT7kbD8P?=F= 6 0/XDKkVO,>zx{9V6^}ցBKs^?5}3DŽ 2'Ep?ZWVRpͳo;qjQy7(pDsYgf57*UY 5JAN\ph720>|qx0@蛃2'8g[Hbgv uh+j>l ( r<>uZqVB!$åoGjV/"5<`,\mύ\Wt .{1\oegT#&$?$uU4$`QMn0m,PU5Ji/ȆP*9s圸0FV>q]&7[/nz1͐))ϰN\ XN|7k4AXf$GnM^|9,K=)yjŒ%"Wd5lљ/ O>XyP z,;ó*%EȊZDKYqH0%!5[c8}FAxA>p9+;kɔe/ ºQ^Yy&zE\{mwEj. W R#n?1CKٵb:}iZ\4߬=!vMk,dQ*8\[ wd ~@۳qY|uf`_!ԡZuc߈/)Qr}T}mٮHf2w ?\Z 9ŀ-3DWZ7NSK4SNXp&{y"Kxx#4^e66~ ΒBlGgeV<&&eXÅl6f<Ռ . c6a^sDǝ q}yB|_&1IrjHʻC<\_ƽ34~se9"E'%5JzZu(E7plD+A咁2}{iw"0ѡ쭴#:{7L 刃<VbQ4D^ErV>IDl7lp= qVh?QJA|ua>[5)Lu|į_D ԧpi]",`z/7ِ H;аF.&LkhyKG=cxh@ۤWr->}-Y C,*G1)DKAw҈O 7;4bb!eyL-&ᄆ@dA^l 7j[{Ϟ1tL9[♲cBUTE^)U?T?Nze~:Ÿw\&kflV]zK(4|N0?b}sk/"Is##[]tN[h3r!v4;q$^g8$%rE/ 1yƢ% [sJ,P$E+u00C4`z'h>"Sۨ\FՏՊDi=EfU=uV<0n!)M '9B+`˿$|Wڞ9քUlc3=F~1?H6  ť͗nChjGن7ga |KD9kz,,Lq(a tnM2jB>~<gMo7;=iU0eaSÅ큑COqӀZy.5!:g{,mc엵w-8WZV\w'K%G:s,D;@MCXRazuU W IQ6S!b,!=vKfs/ơ@GސX2[ߝGOEd˷jh 6On |ĥ'i:|%@G6㚿rFb6?wqqvU]idt]YډJ!ה,d;9-ancqEQ='7\v:<-pfO^C=ڽP:uն!;ItSܻ5攸KjuEb{utvLC'hRx9ծ 9Rvunjc[LZ0OW0IGF}7X/ܫ؇6.~RC9)]wt`K ysgs?Pݶqu?~q'e@_?2uʓ~ӹaIY7%C{;W%Nu,Ȅ1y*Ͱ[w6FH"4CMid:oyg,:7tJ_Nbn .}J#8uh$U"_{< lQg>t`V.~; hUO ~w-0n"7%9+t{UF԰zHaG[~ GiH7+k[ a|f?.Wzg!MYz]Un/ڈ;,``"G@̹^$5xlv l{աwΐp:qr|oRb~t# v6Tw^OBRc)EtY4lD=}cX S=)}0clVE*G11_*+3ӤtJ5e) ZXL̷qBJɂUvd%S0>) l;'/Eӭ_*_VpA7M1_dQbNaDZSyU_Sjjig;WCVo7nb (!54/%Sbeت@D$A%U e0׌?SaIikK\%W|Qw0ޣFv:΍轞X֎*y ?|(Dc]OVJ]Ji@ؗ@=\lV}=E0 \G3vF',Tk}f\jH:z ow=j6+;4; X|}|t!oaAGˍa 1)|?8wuCKdreG٢La5eiE.$K[jF[ђ49)ҙT8I.m}S)2QwJk@7GCǥrjWp7YXB4S\M}+ی6cvJ{#67t] u؁rxG + [֧<~F?oUbN9XG5!ɗޫ0qz33#ؚ]976w) )tŌ͖$em j&lZ2}nn@")suɣagqƸ۳ZQƨHoP]uL&i|OdsE#~vk(5<5e`J\{r4 @t6ߘsndv0J O8+vppXm|.| u%z frqǶ? M=7EP=85쇟΋Vsrn9- :{Xyjub( ddNmPF`f%w"@ӿ-ɦmȬ(c!_iLv Zm7 Yk>=e@̂ iF?z {۱nQB-dd DrS&(K@% {Z{;gdY9i8K#sUEK8oPcIzr;~`myzZ%~*֪#kVxnv2Y Nn|&DY < WDՔ꾊\lk>ytȁ 鄐Vp[=Dej}Adp0&4x3Pdz)~%A9̯58&֬$3u )S[S0z$Y'J"DL2V>3nG[h@v Viɱy>dQeX%h ă҈ )k A΄%DLrơT88P3eݮqt:Kօ+TW`m24`B`{rU]D,&WT(08EY߯>MҎh t} 799Wab̈́迖6S\";(FWDxa Gr68îUW$P}:_)wʳBuxI" M)F.3,0#L@ĆPTH܏( 1TgΒW4C|Mq7-ޙm_wak ?x`F{[_gl9p8F,8}yO[EM.ؤD׉st?ŮmpP QV1 ('`Ȧ`8S\nuI!I{ Ҕ#%y`MxL/(~`~0 pD5lQg1?鰲oW=D kX0&S'.cj M NYrdl RH*20Il]Fyte,Ifd:)5¾jѓj g8a<B!U:M@ D! v?.x^&R:ȟ+~'t`LIG&]fԨD/ܫH%]U}߳wJ|I{gg12 zGvپx填nmbA_V!Qn娮f@?}&kt ڜ9r7i\xMy3C{>(8t(?3PfTinEj_R  9.  L=Gǵ$t.Bxd(q$U%ংtYNCG& P[)Jf̎.Ke/Glg flDM8-.ȫ + 2Ykd ke6~S: c^\!4 ,V lIyZ.o ][ۺ,iy.Zx!n@8j#ʣ/F 'A&,u(g'q/oPTaRܲ!;AhvZ}t5?|"AyXNɭIʲB_`"({+ux?E8g[Qŵ!YT^Iu"4p6+Bn[fbml14}ʻG)hʅyO)k._\?Bc"$0** Vԑ>IGܹo,m0Dx%02RBYXO^\!Go>p;fJ{սPUw40F]3r4$ WIҧQ"LxÓԧ-\>ԥvG/=̼i~-!DG+ˠxa cБYhhM嫑…8ņPilxi#z`ulj=u ')C]9C~)[i>OkNYp}Nc ۚ?=h{Noxh/Q\KȏtXv|.:o+UűI`H'~R{D.ìl9ա>X#w Ǯ7G[Wgd>n)f+OvbNNʾXHZhO-M?5Qg %n$q> .ݏ\t'k._- V5Tui..yLg5g=+Wp5oy8c 뼸$By.wz甉|w;޼|`FlTj"z rzڶW.螃j6T),ͨfEN{ٿܳ:g)0ҽe(D:k`-%Ȁ:bwh+־uMO|w#! MISf##nO^V1C [_Ӽ?o@˹37)Syw`_p@Os  Rf#2x~9|BnT6vzo*og'vGNU 6[&ֳ0 ?*tUmS A%'e90a`-ho/Q2s )_F?KX!HNeĞD.t&WHa L1u?4\:^ZtZ'`8\3fʕ|0R8ɓ,6^}PeؤcA+Pw( 8:|m/t192&t4ԛjZnŨB8R$'E͞?xdnJib8 KHFC:2 |L tC?) S%zzi~FtV~'Mʿ݂BJj_Ȓ72o-=;ږU-T)ш'&ST`<]Ņ7i"UQ="}+KT'N(\J/8~p_6} 3˴Uda{ 31CpVz"dP̄ѧm Kf6I?o`KUw*y#Ri^"9E'x0K Y񛀊QאM%Ȥ/r_W[cM]3R4L$OQ!P eXM8K0@;TM_U>+7Z\T-oCqT0Ԉ2PSJO#%U\PyeIeKG>I6 bGEڌCA13`'Lks8SǗs1!4V[ť iQ J 4X5Zdn}Doa}[I+o*T) G?ZcSL q}^ 64h-246]Cݧ'!bSY L~US 7ڿ?V"g/q ^MMm9\ fo^KGY2f/< R)+ztnhvb`Y8R:/VѪ-f>`N<%l!cٷ/twdq'lRp%pdneϨ?&J,w42r7i*^{G^Dݳ-NCFZ~BbIg?|W.}ZmscHϘ$hPu玣 } t ?O-0 u+/98GpY$7->pV:NzH/ =4ʬ7>I`""$!3hjO5sFRΖlYazZrzR?WYKe4W8##wA yڒ5qHHgL K.Vk5pEJa 7˺*"%e+1&3e p ,7Q%?sa<:62a#O(.s⮬j8 Uz Aihu1vY%tO\| nk؞LyW= \k:%ah. {5b2AH5@1ZC"}W}&sNzU`GyPSy8ٚrDvQhN6VItg1\وxĕprO%OśPA.?/>M-*kwb.X3kG8Ku !s+sWF(+"6W! vq.뗑Y51-WWt ~Ku4nwhcc$Ca›x(v~u;2nD9x+nk-uZ&qK@^RsSɭI5ugYw9@M,"lb/̀ B)b)Vytdz߅?7GdŃ\?&^q>*vѭ5z^(qGԩikpu@̻}R&|FXlX~25l&)N/zyUhGa!OSl9_[A2Yz'WMѦҙŊ,%`7H̋.IhWnDtpGALݽCOrT{?9RޫL[wQx_,/z}>YD Qz&@E49i)^{A`j_μh쥙>D œB.Yf7Q5IcK65 pP=Ay9?^N .}AK2ȍ:M#\p1(IP)0b.(L5r.e*X@oDhGO5]= ͓uVe~"5|]2ׇ){^MT6G*h2bA Fџ Nr &˥|j@Tѷ 7,j^ͺLQnCu-?Si҆ԹtKw^fV˳qp&3N%ģl8X:qw჏;҃W 붓5<y4yĐaɨKYi.y;\V%2 $ m]'s*:X.7gRC@!ZUYg!F<}hKO`N|Z9)6,7i |ޘp J7 g7: ҉pul/n<J:I(6їj?2B;uf.f|^Mo0W\7 d} K4`bSJ0Q߹Z+3 g*yQ 9zY/Uc2JT!9bb7s.t/_8C{2 Wyk-ykaZ2w_l4@?t'Ƶz ד.,A"&tbŽa !k;O6 JLvwJ ^1z UE0^|ozD^,3+{K =LmM}.fgضi⹤ 9I~'Ò w4 c^Q($gjg9DXwWтWMXĩD=G'RX˩k**kP枈 B=5QW@>=bTPH 86X KiP581sw?sO՚u9D"gt)_\H CsWі 1u%uU'M ~~wA B:cqdž y=DT}7=χ~zwmeh?*W畊-`>)ٿ`x%Nf~GN3(o7~N/KRRh%7~A2+3)tfϣn2oRy|;kzL[heBjf6OL-D@Q?l8 [5O'Z%? F#խ3qb%Ol?kmړOEt_Ap w`)a}M][gҚL\9>}3U˫xqɄ6e3RI9[gcP}͂ <,7D9h_ӲĆŮ79srCըPx.EZcP4%>AbAv/"F X&6X ܙå* :tp:n!Cϥ:@ $ZfódU:IgRN !!Ňێx0㬕E FٚQR3^:9>2^T8so]"NDaZDk%$W^)|0xYe>vѰ@rl3(kS]Ҵ)* b_'tx:+O:{el'1.=rw '`3! |d[!2׮7l~%_vlA)Η9HH.w`  |q^`4DcWW'qGCi$dG]FJ% ΂N%k.g|P9^w̗vAYD R8~lQY=> v;9G#$߃:F菑S~vxt$%Z~W7hQS1/'~m!\8 PloQl&{Ec̓qU{M%{Cf[CiȊv @qSl`07s~Vtjzzy_Xh(`" տIs j)@j$TxL6 xޱkL)(0SpI?Z<<3.p@ !4۽-D`w̃pr_H uhĿϧ~YJ~ӏTzysat5 nY _C q國ÛHcTqTsL,~wO45 ȩ 7w7AjoEH`ԂKMcq6Ь%d!G̮Ӵ3x h{ɦ$,@㞋ݓminr-{ y |LӶ)*]W$PijI^4N %@J#WLSaxcbFl%[63#e2)Ӳ^hM^`{W'!' ^g7 b'I%Ѡ%&X&Fxw}̆N-2Ā @t/~˦Af]݌MCe. 0"8ɣE^h 0e9x_nC Fg4[t{%g>ɰZ6Um+FՕ| .Uo܈ @:HLGuK&mqʴP1VjW⢜d|6k=|<1.[ޑ@Sk[?E6lTw\ "Ru]̟<#}0Koz?#.7:F+"jsaA|yƆ1H$Iou8K G#~T]CL 0,kkC!]Sy@GXItAL$B<+ش;yKеIz/^Lv0Z$OF6h<=]S;(Z1t<6d+.; a#| DE@L[$пV!e-osyRg;DUd _6c$tR3Rf<\nLrF}5MzOWwW֝:jvD vCxQ^a~O $cR/OШTZÂF'4#5.5bHȷD%cFK`\Nj8zrdI{{`cZb0?˲cЕGc+.* TK]d2Q'KεI"(iS$ GYȳgiG7/*˛qd n;+Oz|kAdBKK,n"żT=bV;ADsEMNZO;5Uanb ̡vl%6QI^:ͨXnmtq jXo]]+]D!K]^u@sN8:nA'd[qt=8ڒ~%Y}>6 KS ']fKq?9gD5CjY)gq ë}{G|f:v_I7b^P?F[aJc5mN .BՑEZTd5s8VLܽ9=FDL¢}`;d:Sam ȏc]/o,xYo/3"Auܶ3 #C-ViF ;hiz̿1s$H}qDٜ(y]Ϩ,tߧguw-dFQk,L BC!=M{!igZ i&cXtRh5uVt^?jOY_m\48XRv -驢mّ:߽u ~)xϋn'ըT~8RTQpKy-r]Gx%RÁ_spBau4si//ȥk!A/vs)$,{~g 2oiě,cG0v3A0V vИ3+ b l1RXhl\S4GUC, t%U o=4:CQU<܍g5| ^gAR ]'Kӏ$>f PRC'=DTw¬Fִ O (%>,S؛I02#DM_`0Vk5Ig4=9{eI*a,.Hv\9N44,sSƪ)X2 Ri ׭8GƤHGD38:Cq`Y1*j;BA]W!T&$i7=QxjQF[ZU+awU]I.N?ll) ^Hv'8)3w9bvggGzSK0ҵ? T>:6Na_ 32$JKCsvTüvTg!Ou HQ{Hhm)R!@:w`IQn.GRswWRdwkio48sOUSj'|(ş+: L FB܃k{, "QF|KJV@E9fO|r$iJyH& 2o'TzE࠴>Po\-ڤ(WEt԰D-\imIO.#2z`=.xze2c(P_27N3ZH})#SŲh |Oڷō$ͱhTٹz"OeC+<ڥGssrF'wέYpNqK; G#6f@C,.L:IYaF@g;B >mHIw2QO WN1l=?dbcObb~ 5KI<#S}%eh̼A Wc(j*' aTW]}2zI4khk01o$-zFL:;;b1N-﫸(em䝸]~9٧p|{vkʨ1Q)c%kZ*yOh5G'&,_F !v'Ro%vsVT=yaOK=yUP=vGOs;M(3m;hDpk?^1V)'\([! Gw^U8B ZCB s]Bqz/c^gwzJ̹jFk9 !CZY+ȲNklB톷T(0ju6 ?sgHBRv5P>r/,9E[`q3/fd {Ip1a;ΚA&]tIoՍbf炴{d]6u: @Lh~K͝Mxǟ4ɼ{>TR0OEO-Q!hdcfi]@NE?8ƾiVW̄KRɺ3^U<2UZJ( y{;%7qߌIO@̾{DwP pB> _I_)I7LJ^.JKEe9z"o"^] 4\R![j:8YNWRΒ6=\_/eV uq{yKAǾD))۵ɨwH)A"3uMȚȡC?SE'>-C^]g # c0  G oF~̪WvlS3:++=Jj ;rq}Ik*;F)ph gDs=L%e?o)==0l9& qDe]qF/TdmDLT2L' ]LJ# ڡ\(]oڅf\eDYndEm?3.vk<恶h+-ol y( L򌮄_Hd^Vϓ.+_d t 's45{/mH=+:.rqi%5S9~Q "N~{F?+ha=he,j)!۩_P0|8gu?ltA lx5 z/A ǰX^݉)R QȞ-^I z1#PL\,v,& 3bW EzECs0Qun 6޽) ]([Agë[NIKv5a-3 Edʙ8 5@erRStL|yf{#]~q.qTH}'%lwB _mܬ)?᥄1|=G0+s56r8ʒ4ݝz!6cz]㶑rbE#0w 5trTNj4&](S+0;9WxGBD49i&=lw:ՁoF6X ZG%?|tٖEHVNRz8^=+ Zs_5H|]gŚ %jwoq1 6@z Է-9W1B#SBZXi/$+ pdž2le4V#'k;D#t'cjW"oѣs#D&7iHvX:2Y@ 0]q}-T?96[:* y~x _h]5'Y]1R m}E; &ђ"Rی+ň.$8^#(!,-ZAWuᩲ!]ވ|(łCZv͸ C.{mzx}&(4Gb.vƞ/ "" -T6/}JCcoW =xG+ɴrrQȿo"u*aJ*3mκPY{b}F¢!4ȧӼt 6҃^ZR_L*J:Om d l'ђT)0w&k&a_/p [!iwZ7*uJ !zՅ);< ,lTi ؀>^LUŇ"pBr`VAp>"i-=mǞiԉ,@,a+dXoz ]U1CCn s4W“5,FuKƓ>rD4mLOo.w6z[ 뿯_ǘxyDtp$*C͜\&L1oFQGǛq]!x,/S p&/C<]Hyc Y`n2`̎Vd 'Ȍ aPI,#6sa,%BPFbzy ذ,#hkmݠ˲U6CR]@@j}w\3sIVx:.>=<1й~R#- Sw4,}{U%^ʹjōу.HgG_Bj.4#ƯњC)E"bhI_eāX#A}#=d;%c`mco$Zo<fYZiF[v/"l_NƆ9(~d~<:)l A 6K{ TR(KmkV3@>_;D4Rsv2!tԡd?%y=C)(t0;I/(W-VY2b o$?a'W?w6'Ws \o; +:ء>.; 3?PXH'2[(K^ mL W]EǺjey|AؼOIƶv]6go3C>j骡VFba:_ '3,ݾ$;d@N-WR(!#?R  ,\Y+fktFa'vI4?3BMTՄS h @.B7,%M@:z-\kXa/f8tR)"#sa6sqk+//W)Ut!!=UN~NzXʻb4l"ہj½tꈱx~AZ%pnym]6 {ZU^U̚BԻ6dblV2`F1{EpxXOf4 2:j AZB´}rYDi_g8$+ȩekغWK͊] '~׫Sc"q#Ďa#/XRx|]5_Rբf4Z%3WًĮX4^GcqtTMZ#`Eܰ,`o<}ddt+b6WOrP Fm˙$` }/3zIiזiLe>|q$2;oǝ}2:SϨMQ)89)j"! -A042 lj ,n24G9֐IɴW;J[#z7Xu[ yhO6v/#z{WM" 6Ύ?ò2SϘ#mfPE\*qJ,4%t¹V"ļ]mW!˥#’Q^07ȴ*lUSI k! nyc wxv͓8(،t4b,BғĜ]ukHAz~l~Bے#MvLV"/0_޶ޕm[w sC$p*"dőg$?N y" È 2b0JHo_mËA6b<]ml142oa]zrmvK s|俓{ #;f8WyE<-HNd. "=<}lf-VV K\_p[ep+?7~qM"T0Aô{ۏ:@\OǜM5[#ܽ?=[jnT  363)BZ3yNָ4]sz2LFd:*gOaH;heDJv]C@N!F#uHxZ RӢCn} $Eﶒ`y)L/V+ tŸoe* S+ Lݱ@;i=ިc_؃D6Gq`-s{Vw˺>7m*aTJhR/,ϗPc 9\6H!FIb+*q}Gq*]C⦖Td(J$*E^2u19D[͸(_:X01 o D 3yYEb 80~εp*/N:~-ɸ~s,[!㳳Q6bsܡ<%ly/u ^> ֝esft2q0S[hWcBL_|w+c h`f3 ufxJ~ [J=?LôP8=aG(&g}U m]XZ՗.P̲UV%~[E*V ~f]6' 0@m${ ~t/pIMjsqTo{uD˗2I9`T|m>%Nj7A[i/o߀yֿ=4JZOfok&Mfuo$<2Oԣ7 $!*Q]/UE=V:nE:lNq}̕6G{0IyԛhrWbi ~Pw]L6ڢv-YAzQ0y`fex^ ce.Iʇ~\}gJC6C;lKR}sCkx,O'=7]sڱ%rPV84I֍`XXLIܥhDY0trtൡn w_t]A D u~1+14#K_<Q"$:MW<26D 2oֻ*SQl9@"CC 3,TBZUͣbtr04WfQZ˂*^lwi˸ nPrDLG-XvǺn mUJ' cB qj4ۏ]XC&Iۑp_kPp;m&e`l:Yn5>B0Y=@AP]m^%XyV4zqN=Pz&Ÿ ~)\5X$럇"].> r5dWRڀ(oaT`L_ HzBdis!=Dx3JPV:VK%zƺ: #;,95YOАs.3NHnVpOYc_ o0 0\.s_-z({IdzeUwmƨ0w+.msR9' -B(y6 = bi-}:hv z< L:} kTڳFgͤ/AXp`>(]FQ[U`\K8v*Ҽ3pXǮoAyIn?l,R0BlnhPUU\)DoF7 +vg:;O1Hs'd"``:zÄĩ>nȯH_YAe^o88c}[Y^a0Ls?<wCdp$WpM/8q``Ltyu%8c'Vb0( !eFwd<{z6)`i _ۼY+gVRZi||M$L{!W[bs4[vCT>Q-gVB$=5Y,f|Cx|lXpapx#S >l  } BSbhtbx r鶢䶂VNO(&ꠂ'* @Nj6QX.R;>#J;y>J2yFȶ[j鐟!rL8w|Њ!>+@iٳڜLt5ex`ؔJ?bѥ BX.\=` PǚB~tPٲpσb]e"CPgI,_EflxRϭirg:~ҁ%ޙԔUNF|_b9¸?<['T!2EL=&!^1Dad|l%-hDQ"w'ٌ4|fFaL*8D<2khv#ŸέO $ S*N1i'w{TN=]_6MVZ5r_i*j 88D!>*R|?9!l S4Btã(ABPQ71#>4<32okx(DHN" 0c%Seg-4P鵧zchvOK,M. ]'%Ҽ~[`}D č&VH16Q≿"n%*3 jت"Gy^Ogzm`*v/wC3LMql?Y҈xŠټ`zm#&#lsLQ9)B_܍B:HDq122'_o׀^PtΥ3v D>۫ybq Or7{-%S!S"i)lH1R ރ1_]C`̲o/ 7 u[KAmeTd=i6~8/.>0\8>i?.D@Q[IVl?jN3Ydgy+pNrYKe#DA'XLGkJ' s!V#ZSrRZM:P4糏W<e`ucҨ}PuzV)|]]*/?rTHBsT;>#֞3 c2&z}69&%sNn8azi@~ê {]ѕ(9Լchldqwȷ̔g!Ș,FWN64g]8`~r.zj_ g9lwT;d(kx3L[,luK1#i ‰ͱ=%KRC!XtneÑI,*+5dfw@` <V?>8v> rTdxt_mTjAu%sczM'krmIb <c8ƫ 1@>j}*ʼȐ$Vn0BA6G+43WOB\|GLKy*T A2q&a}rl23:&p?91w<.ozjhv > g\x+%5E o|¸ n+5 PK $_P|a,d]]7z_]e6;m#Z(rfЇs3$fQ@O<^%}fvL ^І ^a##BH 1 xZ8-; Mp,[00Uf)?'- R.I M *ܗٱ8H}Hi1Ʊ2H$:K?ݡޏ}WS}%NuU2`äDCa|ӰBRDMì¾^iz̧5 #b80GSh浤 MfJVieL62>?x׭g\GM2{@.C8|w$&c)H(P,5VM"Rw92z|ќ{h=n* f{uFdZJv$bK̥n޷R ¾e[`9LY׼Fs}k؟XbxcJ|Ǔ2y;g;d<VI-ґϦ#+x)&##F!PHx % UqShs{F|;D\@3 {rhAYzQe22 LT-ť[lꞠ rr{iCT~̗SG+QKD$(3B` @,A4sx$W8E1iu#T#WJ uȈZA ^ʉ4.\ÍXjU;0 G6B R{hܓuN#>\DCNA GP%qQ:PS#"o 5&y{[X* wt;Y}°qKy*1!8H kTeg*>&ޭ(66%-|]=p(fvrM1cïJ=z}J|6'fb/0 i)jmawMfc9dSޏ|H Ḑcn Ĺu^Cn^ ?# xT ~G~Tg 7`\xzAf0naE4Dm݃ J"\Y=rqeEO͛zQM05 ҽ=P2ݮ ه<鼄+QBGF.q5; Cq4T^~ ki oԱZ0#W b+f&J0hXR]μV z|1V-SMсU(10/fFq Dk ٸmz^Wd{0=b?(A@,b:m6X+޼!42~wBe@]mʣ%z:uG16.*C=ljd+Vin;9I+j|m#v/dPPsMT Tij4ﴠx.A\:" )(T'`!R,?3㍃ ePvґp+D.dJ" bHJ03SV c$`% &ŷW<]/xý<4J3!^%N4c"r%ڞ r^v[Sа*Į9Sdc\B{Gu7t\਴)\E/1 I0ƞcgll?&)5UW͐B=kQe"i&ĞQ3@m8aVo2TT_E Y֫GgKq_G0hӴv$taC=7qYD5OD_^}>5bxgޞ*(lsL*U)K]bA8/b0lQS0-۶7GX1xrRzPe_+ى+ z^/6V[z;W J^"Efq9e'&TKS^1(Vn0`숱b*;\FY[ĘvQpJF맖ji7kx6gC)LUHĀhyJ!E^6M7? K C s%.U$%YtӟEpNQt Nϒ~>]Z,T᝟|txNwL.(j[ 21>V)r)yO)Fh]-g, s~v})WT_>Ž_-O4؜ZJD9 |kPG/- ABYcj|ons9ygv{v}v| v%ֳYT@x$]ǖvO@]ѢaWM/%Tlc4uꚨPޛT?.M@+7"&1 '|*Xӊ(# Kܞbp,%>}?6 W'%ZE),Y oήqVZ{k2ӕ0:ebC7}u 8 ?f,_-&ǰ8ђ.M)q92gN#\c5s+}uj"Of݁2zd`#kN_[!t :cK8C/ :L|NZ r[-˚1*?jґ チ%P&1ox(G0~?Z7TLLGŜt-q{d,^²--),sǻkʐ⪰8YKZM;:dxIbHH>v,m̺Лx眍[5] ęR@3ߙ 笺QܦUbMGuax8qX zuçM$M ܪp\;Kxs_1_mH"0I|g^ xE\VŰnb! 86:r8i?_n8A٬n3:^*f\#j:uZ)N.βt~Y]YL].ao߹t?X/t5hIhw3(.R%Po|~~_y:F>Zv N8nE~:),(n2X)9x;l6?ȝa`-*,*3j K[b7o:O6]Y3iL7A vĦ 2=Ku=.vgd!Z6=Y_ɟ0,BMޡw<~`-aTk^d V96)иGI 8I}uЏPωʂq7YʳCRZ0jg(3V]LGٗ%LNI>P曈nw-9q)=g6ʗM w ["J']u@qtJ`j7eL4of&)3vi)RT@bȂEǘ1jrf% b'̳k+8zZ$pO1P/>.w2v2k6tFPLF6#,W@!?&e~hvH5QCw V"0e1CKyba؟:Mj~qt,gIgq˚ah4bBĤ@~!CD Dm "(Џ6gsιjr%0~veה1sE P7+Kq hpEu'_6n%'MWw0r3]@GXޟl.[#p GiCg*zXu~sJAg7ď ^2ᯋN,.rzx;,VpN*>4'=7AmQؘnz x9jBӷ/F3\/ԗky@n0E]QS` nd%Nd} ۔|,,4],Z1`t@Ҩ MWشuh1ߪ/ ^^P^ aB۟JѪ,Eyʖ OPK;>H] /U0@˅N>:JrU+(7/]X$Ms;?7]},D9'Ƕ90Y:0LDBSk@ܺ%\f0Ƅ3IY2 hXX'[ }YùvCX;h.ԗQj_C{0Or~S\غ x~t[?c+qf%Y]Nʦ .\ƨ8󦴢? jpUy Ђ-7M6@ؼIeTb~%=# i4F`ʭz|/ߴONz_Xb!3TtxHd@|k%#A`I6qh>F00L;Ex=*_2+,ٻ{L)VaS#'-1!:6&V!^_1"G*ʳ.:246VۼHuO±C% ouP;G}U1U3q3%NXp~~4pWwM"2,?41k=ѻ O\%zu&K? ) ol)w~i"]JR[(p:ihJ1i\X=悀 3K:'!rauy ڭbOdt&;+!cP LV-͉1NQwyYAQ{"ǚX3޵.\H8h-`dZ1-faez&&KOXY$ Q)bKxˈEe`&4ޚ4NҢ yw0nxYª$ zZ"QiTa*"ƕ SI_߀CV0{(X]2`3DqZԤ N֤@p*'SHǃ7~ x(zz԰")jX3∀-bGIc:34i[֑$[ea!b ֽ&2So+`!!]tԔî0am"݁+=* ri:rRZL$@'s5;'y"I5H %o^adwoXɊ}t$7@[,j==s I4:QYKm—`demr>Hi(-@t| u ?= Kvf݇S=[dhs^C&h*IIZ )5^۰i"ZTg KE E]{/àU{QX?=(ƇhCzk㟰C#o֢ݳV"[ٙ`{W7AE" 3CP~ڛ'.'9w{=@ M28H}HކሂBWq|XQs6Ue-k1 fl;m4UI73BwɈFG֐%P/'|7 ^/m8WNjJ˔l6xӁ :R<Ҿ(VwHB؊İȤK;v]\s MS[AnlW_ }ҳq$@i:aM«-0j'(Ap1n ~HO~# >܀kt{Tx+?A5}\9ICu pH^8@x_I.~sȈKe,Z 3ic?qq ][/jn*JFx/r`ƱBEG[F}'B-,ˎ΀=ȉdWP=u#@9)*I;%<^֔wJu> ī_T|kBJ1:U^a0z?qod(ue6tä';C u;?@'d>8 Q\Ȩai.)˿jZz|1]>x-cL9 {$yci/S =r7XMУ̫uuU+}Wq1sVWG 2T _)]궯{e;R.%m  `j`AiMw7Xv% M}͠$nw?ƃC+gch"'|4!dǔ18I3_s * gfRBeXf>r(Υ{ Sq7~:,xX e(ߎD880}}$;ݷl ŮtC (&|*ޖKoLj~HKvAzV9]w:B)Џ,F2[fGu{qл8s$Lq1Pbmq˱LF$(#+1ffPmnrܠE 51dB%7-:s< I47mPV6@{|F]$EFP֯8к{~Qim.W_9Etr:M؉^U ̂*QVڪ앿}c@VBF{2FԊ[q\(!Sr*u'39jO͘nWQE'Ed5 ?9r[Q[Sc"J84Lx"UTP;q !o'+NM1TLEʩW2nb/d󶩵(\(,rW7xs$\kl Mt 7$7F|oHo:Bv@67@=G[of̲BTV ŽsWqKV|s !ea9h|ki2FKP-ۂgEܟ|;1ł^)]t}Gwsb_[T mqM UyZv_ ӯLvl@Pk(^^|3\@x> aKZʧ|VgO$e"f,7Z0JɧPhmqK~Y>؛mVߪ^{|t`Xasfp3p%*x7 fϺCVSM0T9)X?0Jܧ'o0b;b=WQ5+M!(RU?,Hv!L]$(l]lxZ$L[㊸۹qJ@Enoc,~*GTBx]*veUNT7eDFk/!áw0 RVn-+r 1eZ(2Z9ۯ^Drv]maellC1 6ʁr?kqݰ.u,`(U+ڀ PMfs^lEڙkqI %KGTLO\ [c *1brɁn?3S? g3\Ul j0*vyZ`Y>F*GyOeca+RuZOʕDehރQ^eJ S܊AgdY$ ErF%e) Q8 c!2tH]5l$X11掁P@x_|%cf?L)'.{j6  w.S*13QW4$g4JXZ'=e)4[kwP9I_t9a pTuNޕ ,{6*59B3$˭.WuR$0Ȟg [i3ݎfŌ$QJiY.8˒j~M`l#;5zGDdj#\>.Q4J e%A3$[)وntu( 4I>И.u/wVt}Hߴ# }b"0RzouCS4l^ti]hXci$ sk˥z\Fe̔Z~~gg֜L7Rn*<\]aS*#}V'Lq@~93kTv%*ƱTk y 4ʙ?x@1iuu)dEvyؽ7$>zR]Q(YL1>QXH8M $?o =J2lr؍Pm.|X 5K;KKESv#א_OO>2,<ddkp\4K>e Ѓ$s%yXT$r>Qj:b7:3bO'+@|{{t-tg[KmJ "XrPrKiUZ!*[-({Vf唸+I}:uNCA l#NَϏ.M9Jyw\!,uү{ԝj6ȜHNu|@[mΐȧ 6h'8UUTQN`:e:CЅa`W*U`#rf|b`fz@:JhS$(LVāS'|ܮX{\ 򾋞\!=+H^98w_WJ%@qAa'PwC œj@Ѭ 5a?>Uf ̢N3ys WIMz-rpYm(8ԙ#1c7bz-[ekHègIGꊉbB_49tf7`gDff;SЀ0EuRH6ƻ*f]d9ytl/]q]يK^q%0dk+.ʲ oaoAyy#!jo̡~''v]7O y伅m*p\+ |L` jK5W/ԮsyQ]%FQ1eT+[u)F!s ]]󽼷NAE, v>  PͷӇ3 +٩{g}B09Y1wY(>>?D7cӃތWq';I7@uRX15)8?">߷ٔnLvG mal̦Z6fYO/>UoAjsn,Vbʜ |n ƃw><ףOIĦV$dzU VDu#ND=+K Z9qf4376.oڋզwX'f3z(,e4AQ]sP.s|gJ#jr7U@z#CW8^9^H:UsE97Ui˭|+J3x`/ɣU H.Mx!?*:dH*@lERț$q6֢#~O`?x.8ݧ8[ja`È^>td+vg*Z٩_2f@QB.::;ػ,m{*Ld_s5$Գ=7d&AӇA-~3RE]v3.>LSRNIcHҶHg#?04{*!2/&{F{4xiQrֲ%&^Ho_5Xg#sӝ֟p=wd5#Y#fASJ|ҾEs2TjJl1&P "w41:5ю/hGgp/t{Ů\-D"SSm/1ڛ(mjj??#>w^<%A"3:8P,N +4_j~;ꢹZpg'AAGVa)iz_@0<~t!%!qjyŇb.y5O;-Q>h$Wn)I06؆m@ 荳aVư֊>=l҈Z_pYW(qli"MyHOqyȡ}<0`W -#ia \b|ўa9Q2d 8٪( :Ncw Nץj Rɭ)&1ӠJ(sMސq2)i8\7񵾱*JKVbӕ[$|b 'B}i,dSth!%AbI6qBamߋeoLt,&\(yW{/vNeӸ OYxs09BTטX{I02Z(4dh[A+8RA _)$Ͷ>22f@RQ#.E*.F^O@}s"ҶTվE6#<=6">_yQu!8欓NB k^̣]I"P^ll5Ƚ_L=!boJ+[.gQ&X.5\*)tHJN@V_HpeGĭJ]Ul 4 Ζ0l,ur eM-*/ 0{s42))Gaςz[ރ@1”h z,r+܁e%ґnm^HC/S gT$)J𾪂 eQ}!r*e=ё 謈PJ[gCavIyEme Dflkne5~)fD?!lo1U/*> L{1(?OzqA.{jkI .v!o؎DejX&jIHA "-x!yTH|#\2ruB" `OK.3kiI3s'!SJmq$qgh/glJV3k&riLɔ%aeź NΣI1>8¨{+ܚ'^uR%E^z,[˜#/4IӼA !DdSKl<!80P-q.$O u A9ښ- =ڡ#_8QLf£M!PCސ5LG9]mx܄MxoLwAyC`4cŮ[zCn6+I{_9"M(gVjӮ)hT}Ҿ'-1 corl_fCH oM!(P@X m&<b!a :Kmʸ5uYȁ}ahn"Jij,G]%[_;Sc2%9zu*%dM؜?q)?]rK/= +k1Xn>Q`V}cZ r/Og[“к/OoaU,|PcEZ-i!B5/%F( {q7cue#9].3`wJC>4Ș,DiDIjSZnRf!7覹҄q?4!ےL[7G X0U_$.3E ߺ ]!aF- 4wLs؅U6Pڱw^)zª2\O8jQg<XLNQIt1S- {Ồ,i=л95|:.puȺ7`$bn`X|=cL  ҲZƀ(4(@niu|}hd 8.۠nm# h e9\ӍXkcHq:f^ZHxx| eFy6@D} 'Rd,4c(y20 U ɾx5MHqmk z6]" y0v:.{8bh] MsDsGSu~#F: i>{z[MiS$A%29ECFݢIKO Sb c޿!ꚜ%K I!8]OXhʧ\6bK״i6&;QQQ^/տ拨6K#- U艋 gd=2?Aö TJ1!b1y!VW{Gu4 WPm}rw] =g:'yVͶ/4~hv{*7aL>px8ԺyWk|k \y SE&hlIB*+w|gM!9uւwǼ#[(sU12/\M@Z[IƳb']&h7M)ACߌŠة % R֏d V{"R;ٸ+ 0XvV`(5;L#L :}L.ڂnPX>].bSwLi5611qt9F]*[ xȩm]llaOvյ29ÂW'}e#7~QWsHos%#,uG\f:{֖ +{ЂJV6|'X7`bb)J9HPJ-e&9KN<8[+e/ڻ0ŭp-n=y&py1xS&z苉2Sͱaęե/χ#XG:{2ldA{*nե}ᮔ7pa]c,G\7p;L2 yt#Hz,YrWpD00GٳSlR=[dv 1/3k)q7hmpiO`OZR &U^Z2^;;q?T!齺m<I}rd+"]ӯ Mt[Yb$! CWO\}jX]1+aoqvH>oԉwl/өPL:q$ pULl#Sp-Vdf瘜pMW6y `_U>X_|9Wg31K1þBߌO/Ϙ5:K}B`G5OZ "{f;55J>[+>_vn^F(6ٕ􈼿Sx5TPAk/CF8 9:HaPڪwBwϻq~HrjVa}-DٽYc3hRSUԐwH q]D/8eflPD8i|%!0l\%@d 2 4B_c2*|r_{5hL C 1P`F Ÿs+Yarp2w En2 J N\Dlyk$hFf( ӇWb 5塰`}x0P x1FoC]8I-|AEϵPlن*oVW6VE D;UB|H#>ǬujB}fvs>wE|X6C::q&z讲r-qf$Cc5QotTs@h6g͚(?~X M3^HMGK1쎈 d<*>8&Y`${^,/і5`0Qٚ#!T^6NO*#АFo%6. Qil,I;v:#'FNDsV5#1D~x7 qGH3DA]F{F2?* __I"EP{*8&A }[y ]f!T B ]d?^WGwh\#ۙ``2s9{#ŕ۔ =YmM)C~OtʇJC.U'F!u!cL"ctҽ;sGi_Gh(u,HԍTP缣qHt/bH͌r(zxTÿpKd>!RzzYc8$ qq纸exROz9]=ҥV` H=XǨP&H. lv:~?oWm>;iNdSdo TM*g,  q|Δ,R'8?.[I'WTf"m}}YGZg<9*]B|E95 ˙%m:{kT 1c}HcZ-UԸl\HG#R HReճk0t09z[)lI}b"j3ԇc]먭zJ+aRE:ԕZkx]2n_˿llԝ}{tDA=ԍM8PPb/!vO׆A;@hQX4`s*6? [ݽI:n)>`cU*b6#0hlc_ PU s4x4|MFqC%n["Z-@|Ÿe!+%}N/}*o4-%adut5fp*6,,V-ٵwxsR;X_l[6i 2^+X!c|ЅĵϟyiX'vN H3qsSU L4p{ᑍ[[U |@dʍ. >x*["?aEU)?Qhz>爕?IP$:m(Җyr-ɔBS:=N~|&0 zP5QXIz`_b\oqF-Je4}7k߷<؆a 9"cg 8ak*ZMwa8I+PL\}ͨ;!pz^q"S-A]89 ׾qcPu"CQW]a{{e&k94d)!>=<@NiVBMsZ lJKTu6T-GCB0l BT!~.)NFe. ^3忋)(cV:L8st@fOIjx%:Z+v^6c/hsdݖVv0p<>U'l1:AelBж0ctUvp{/3OZ -ƃ:ާma4HIjU_|O"YF@kn^o7Ae_oev\_Čl6X 6R479=7]M(rD(s^\ u:?7q30d̪bv0}DU#;&9_![9> +Ɖ|WntΠ q2uK'( y:7"-U[!"bC?ypϚgKsBb@U_E+ ^ٞ\'O).?8R9ŇkQڽ,jc9ksl0|uAiuM9BKt QH:H#hۉXb$q.NFK9)!U+my(!݀/Bd 8v&LF:RC4&?[[è:.T yɚtnh%Ӱ,IߑTI$+' 0$hYG-Viwh:xvϟ?%s".εyHYTfw\<^2PwdH6A/;k) @Ӭrgyʚ3MsJsf+jr~y@X;iJM;4c,U(p mVXWVgqoS-50Ž]QsQxNX ʏZrf&@EXe|GӞc[^a/oX| qh Ozi>p<"}7̥n3Ò$'t$^kg0]¿"a?rm[5DS+yV\X\68F3&!#omHMK5( ~ӔVg27"] 僊K];4C{TH%QV@&HݍViJBk%*׿H=͑H2p%{#膄 Xt]3?f榲?W281vWvl(sGƍS;I2tg*S TiÎZQx> 퇣&HXF9Ӹ!ʱ;0nBGeL[e2J΂1m<s=s5Yy/.q*q-v9U^!R!BQS4ĩxMW"n<9"Ҿ:s6Bko{g'=Rt A0CcXDЬ2Ky9o b$4R) tLyo-w dbm"q`h_ˁk|鲏 u1;$SSn$%\2V9or>^?-B?yh \"]ӻY&PU*Uf}u  A|7#_q:D(b+̀"d4S&9Cw>/vM5`E>PT6ib@IM͈ηtx8E[z&LΨU *W-.@϶쎞cq_$kZ= qʩ65fgvX9D6y||'M~ᗍ岄C~,inxA GwV Elhav1BZso'">S1R36m8gFj e+qlsȼ5x_z, QB^q#|t> #OT9]Ԙv"8 d &<4JsLrt'.fA[^W,9I};xŇ&+G e68. cC#aLT(a L0U,;zY;6D + SݲVTk`"2a"spge%^zi/S$ XqYsڿN0 413rP H;K. ~r/qED헀aİT>g\Dg Me_ ڴM'dO$},Wx tbYfG$U}ix~v#rGb*HDJR,-@ ~A,YuXH!* .(4]17rSPU4xr h_EvAue$!rG^6uOqUhyOH>E,@dS 鲠<lUm3B5mMyMptie@DnI2u#d `4[c|9e!?өRD{fom# I=8Xް&G[j" &qJI,D3biYmMFH_4M_>.+ dv',޴+xMCu!̲-/P"0A\M:Û nmRlTl5O]q_dBiơPւ~QC"V0Bgd /ǨPk;\WAw^F<73лy~ʈZ>QEnӼLFlVЊ,m8]K G5]= |K3F݂Lteja Y)@!S{YThXQBAߔ;կ$-G9%31$ ޼Hd'[yRȻ)_Ds2CP|pç"$QTA"]I=ɽB(YpVMCF!4k!rז0AQS:DgUN)/0CĀý>|@00$BB(JW6\r%r$B@~8+aktyH}@luãXc[j79:nL_2*}ݫje#v5~yS$`kNS^7܊aIps*%!g)"{o~ V1_VN@[Lm}Rс@ŬYH4b+RjNvʮ*-D.ӣlVՏ?_kފKN X7+YL锁mWMsk~"DO ًv(ՍSnlZ c 6uW2\86xŃM7dœsI:@=X JGeg`<Q,ڱh82Ȉs| ׃dπM9'1AkAWC?I-I>O=s<³+Mq[)vޟGB陉#Bf(+|}BfYm@$'rRs!&% u׏{JAti-;C>?_I5 qPwlq1lL)-8Mw!6Vlw79^lT ~mTHCc"ȩ\XДi|XcG+5t8qr4Cwm3̊8Da!,Hcp.Ī-L1`'Q͑Fɟ : b-ݤRVJȊAC롉$bu1plYuh @!=͚SGRlLw\Fk]2$2!R@-(E/~(d!ۙ$`v\x*k aWlJ{Cߍ Q m( S]I! k-ά@/&s<Ł{ X6$F}v3M6i A%WF^!E]=IȹOZY`6๨zM2B}o;:tX#&mp>mRK_բ'j^i> 5ןހy*aִ 4}v!K-1F*mm)O4mf)Ռ&NI1bTO6g8CGE7)G`G4اXDOl۪g_;>uԋsُ? evs_y"}[`(n[,K8<1i8ihKkOVyݷF0ߊiӬ)ɥ<%/ʀ|1cS;b~A?<?C 4"rpڈů vٻ.TVG@ C0M3%Yb[ߘOxݓ;4voxR3_HGsnC[=m݊+o/{ plNНy;r.#;! gli򤌾|/o^b o c!ikެnX7~X\ew{g 'z{ٷ4TѨ|}2{N3qW=*d!!+;Ɵ{,Tt=̅aWq4lJ z#؇RוM*p7 a+0!cjw`5!AfjepQwpib U\ l=EKVUJyvNܾ8Dnh{abSrkhD$JuiP۝ZnlZ*E+]9BmY.'W 0]~"GݖoLƘl-~TL.pDYHtQ]NvQHp΅L+Y nqXmYPtOO48xn9"WY9C.kTZD;3C86Kn#a?3Ng iNi~QAc}g.p&jlT,ec&v"9pjƙ`^xAD7t<|TU_#(j]4!#`a'3bIN95 S vC-竮i$n:|/. TԜ ō@m iJZ}\R8Ro#WF@>? ~v!h/?2_g'8 ؠQşRtP->Lq t:_x {ƼpOgh}dZE6ɋn{>so9RԅMxV8!4]Za<O#`j=H묈6ۻiEaSewfB4-PG ɷ yz:i],?PhJ?5}S/i$ qh{ ڤp5$կgiv[inɎ&KbP?X|yFsǢMBS k@KC9@l@=WBŬ IP3R7+tH6*OFjp2Ŏ[](j~(C&e~C׳[mfJ':3avTo0cW($8,X,kHT~윦XGf0:KFSU6ܻ)VuigT/n'hU3e"Bzm<#ID]DgpB$[<O'i!K*e|Rg'9UU)xy%&U5ʷE"WJQ2te~DG C:ĝ덗_a-]Y0~g-z a>5EkP;ކ]F;@N,@vPT L5"겤l6;zϙI|x|> R/1&QCc@US jCXWirYld&"ė5K,$wa[k5hDm%wvVn~.8lqlS*)n)u?c!GgF7x@ݧ?ƼOzw7\Kz7"NhUؽ)p{J= <;KLOMdm5[ϫ'B :S3.{>Er`_Ie*kyї U*oÂʏ EG$*L+ ,[ЁX{mi}LLxH &S祥n8(s@*+syeb< M1@U\tǟ$єavvfs&NzMX-}qZo:_Aڌ9"^b^4Dp9ZFXE TKD7ʜ}ў]w;0*܏ݫ5&Ju|ˇGzɷUNo}NS߉q`Z;gM}e[;(ÂΌ27tPF)Oȳ"fdGoXϞJ̮!PtSP"¯!BDZk&*0ƕfͱTˆd|?x[t-񤞶2yDDw{R fZׄ37 BӲkf[ÓM t#ƖiI? !֘T,@#(1w}% #i.ڴ=ƳunM"Hr~OlydW8?TulQy U&kwOeZڎ7'2Wl_9-a!m˴ٺ/5Ď ؑ *wDT#&+ z8BhYY6:ψN0S9Š\S]`XƯG"Z8M.!%<3bΰj.WDWhԔi=9; /gDlLVz(ŸTm}*s֬Ѱ7ڻ($c9R_C8/3N+uR3KS-"yU4d&[|`O@ߐJįO)l* pB 2VBI7iq vXsPY6czf 7/Fws 8HR#H+#O[XYaq:y dtHj3K:hdҺD/7aymΠӿÃru&VzDZ0V9ANKoȪl_"miӭ~fH׉r9 ƣfag%3ֺcQeKIgq4u~7D_$b(`V@Itt_1DkGVss&); !,.ErmՔ`iQn0>zA}2É#:zƧN "b7'Hf 6[숤}=;ާGџ.y^tyð̋1Cb򠋗_Y1!Q'SxIV|kW:/uJ;F8=HFfȏn dшۋʙCA$ThqWPc1hY <GnP "*1γ(Eݦ#MȐ勪DBEd3vhtyMHG حw+CHhI(Ap%@4I$mcz$L= bϖ)8 agwn'^enOH C}r#Evy9ʡT$fzkgDDΪĩ i(>/.o`թygyLS]N/zh2IUz2ɾA,UͲM ž}?6Fe= DMYQO8^F~Љ5 e6YSVjBSKֱI"|URJ{سpB$݅yp^"j)D& m}N^jS&Ja &Wbn,Uflfuj K0gE`q& 6fEߙ;Ti{38m#;|Eܸ-~k1bݧ&HJ7+<{½o?0PnL\àu5urM| Ţ@_Obl=5N @ho#%)/_$X^zaI:,Tn8}vI$Okaw[ `$u|rRĻ0 ʔrpn%R(RxQhē$^V^suDf/(آ˪7z,go=y+GI[dԎ t+M^ݾG0ѻXZcp+{>= |ma;IZ{˂{0zˎ׶"Kip+1>_/F%1@Y^Ϡ[-]^s@ܴ#FGt32R1]HADn!nܤŠM}8߫'XF^u' \_1G";}_~)2#q i2Tp-3ӠacP7LW vv zmZKF ա7˷`gڵɳlk^|<vDe);כ_#kś7`EM\SF)WLJtu==j5/ p{ґ*C`( 9Eok Ś7'1nj5P~@馣bidE XT!lD]9)t_yiFswp #;$v(SWKP \!}tc"s3DyǗ \Nb.GʦlE/ 1burosVJ1Ŷ1301I:nrCo4"?\k<< TFIdRG7{K8MHۦqJrUmwLOQYvqODx+UBLGC0lB&[n(`p&aO7vFRIdC7Kn J7+YrEYCK1Ym ųg!SG:MJtEc9fUs#9'ި|IA EDlU@V0tCroE 3`_,&iX h [X@) cj˂?pP'CJ0HV䏄+|]_j h8 *\PIhxyʭx])L39p xxBdshk !8Uy&B8ڌu^6*o}]%w1O4MT](w/Ǽɗ88>ܽmI%j;7Ҡ 9U0WWZpPYb;Do^!34j4^pQ7ߡ Z/PGmGr\Xȕs|2ޏ:mW~ 65o^QHPTZ ct`䒹HWv)I64c.Fghj-&᩿@"fy#kq8N;7?f&ꃦ-ٷ]Y,2cJ5Bx g Faݺ= BSu-WV"*Z-=ᜦ_# Yb AW>w}!`QXJDJ*bx: Bgh'? `qYODN},[+uPﵴC}ISAcqd;HuT; )VTO'Z%j֤=5FƒuIUg2:p?Jux`nѻc0 +[d7=" b#uz+)7@b-|QܛgvR*'v6x1܀eo"D46C=ٻxdeYƜw-IHЎ. GP <Y9+Ro&d,A~%Gtj-IdI3YN;QW}x_sbдB;Հy4#GC8#"f}.B$@w#M\U( o&)xIU4Qz_9C 2AQX1ʫqȍȍZ? YVAFb5ki]|Z_ޕS!@{C5Bca6jԁ|1V>kR\-𞿈XfLe`m^5݌ܱLj9,ffJ1| ތ55Uh|®A%s3.H.x`k/TJT9/j~KH-2RvOUukKg{[0} @0Kd>bߞZyXY˗1?*֘Sۣ=q10^GSd+@YD9Z0% 7Z)rNd*$j1löSqyw6<%6I+wx z=?a ;Qb)4E򡤂((JMQ8.e%Kxe>#'ԧtFa< &m(Nibh. fuM Dm'F)x wVe:<7" &-\ sB# R\:_6mW%7?$mkNH.g,Qt/u1uEdڴRm E_Y8`5G[x2$_${B|Kcʡ{3qZ:FmZ!nP_ޑ]%;{Qf*TJc96p,ǙCQ xI߳8mϦO]֊%2hيÑB7ߏ"$L[i HQ4Z-yu(7!aOOj\ t[ʎKJѰc("2"{žP P-;sl^>fJb/F6tXױod~aQgpy&( rS.V+Ͽ̙vcws~;tQu gئ&x;FO]!Q(,=h~rF.I멶Kj`Eiq?# Ajԅ%YF[ sqVtr^sAиtdФ"( 9&1H(F dh}r6zl+QA0 6,H˃-ߩMgIߐJ' MJ:@2G C v*wGp@oDS{}vu9B^c,1*Oq}:Y\]oĉ`X>ǀSpgF5 ѓ Ewޑc=k(5,]b"z(Lh \} '/,Oƅ31ܯI/_7*(R91y6JɜdbwdU;/4-Tu')f\Xg.ޫd3Pe!n72 xU{ӆe 5if@ x$$#)~U[`"ח˶ϵ9\՚upO/R ]PpKyK-:_=L FSm-0[gx]Zmi Vw詐ɨ81(=@إ}ZGXrTrڿ~S RP#0rT@/<zI@[W|gF{'[1 cb4~di)oԿ(4ϑy<8_~.O%n9H1i?ymF}PuN{$@-c1zoxM6-9.1e-.L꩗Wғ5B},tL˽lsA踋diI7\=@^o&~QhiC!gH&k]):BTK|!j|z0Y cy&T.Bqz\Y2z.*Q{9.\pPۨGz>w0&@4F]V߯ ҠN%uPMl$)3NaEn^h<~pN`!t 3+gztT}93 dWFk\u9,k8`~g.ד0L0P&YCoe5χ"8:HyM[ qvUQ9~ٹ]\xnk^AfwL_-X!\=EdO}_ ֓\|#4:E@Qie&`9aiԂ!48N%m]i4>[d>K9[؃? ffk`| 9ҩ-ub fU?Ե \BWeTc3`(?4t!#3 Rb!J5x4ȜN5=)G> 1JAs{wjr 54:E5h[{܍+%P$t%*Y;Ѭ77^u>4&OQgkÁf\od8h'=Z,t AJˊ >T-L\4L&PaHdG%k’ t nş UVǽoflaλb,h.1Thk뼓)ڡD **ɑ/-<5{!jv{U\Q&X )Enc];PX-{x`?|2z|a+ s Vz/a 0{fA`AU^cUSA.CmnSaPȉG3r</3^NOp{swAY :M!>`<6BOR̗;-b߽PAQw)Zٜ3 M{ۮLEb*%I# "߾x]JPYѻ m"9t5d+FߎJ27#igV2nU>Fr% ]D=k-q_X /eBxQrz)QFuy90=aY̑_oUbτD}'mr|zoOٷH]ݲ,1mjGC)J:=׹We*'CCZ' B˯Bl}K*{^V Ȅ"^8zKV\3n$0Ռpv+飹0Jr8h V艻Ϻ|Hg&d{*X_ 9z1. iA"&[&9v]j4;,IÑvV)~]EKwK sF2ƪ_HPֆjv]z:u7\/dg,W̟0X!ww|C\‚.n9)yGR0ZCRsXl0j.-9uEKNYC5 J3t,ALSli$?.!&+6!E$-jX=CSG׼;CuJ+CKI%'{ZEy%;h21(OzaG\/*r/ſŰTdj 2/x:Ж~-$D6[3wr-jaf[9NOǯ2U:c=@<]1784 [JYU7̭qcϾL/\џgP44^̢ þ['O4U;t̀T4u/xUOtf5nP?gvoPPb]u)iWۯU ȹu]6ok<*{Uc n~2Kd%7~m7K ŶCUjS<ȗBVZ RLz3@+9B#|XOh'w[o6ˏ?z~ۼ/ r29< ϣ`cvGS-P~-=b{2!jJ>l|rK ml~a*Ŀ(5Jt0w$W=2 Ike;.33g"P!.31(B|m#(. )[-'x/v*%_c_{~.]% #鄇Sz@ɕB=Aħv{8(97]ǁF2OQZcvosamZ2Fg6SJQ-r#Ⲻzd ,o[yX>^CPI/_>K%ƃ\|!7^Q(u60@@,,U-]vb{_<0q$`¸ `7vt3'%h=\) N [5tvz د nD\&Ym%7\ /%a++Y12ˌJ~"AP \F`OHO6|-#ƺ}Uмh#V\ рp,B_bLNDS l/)|j8`4óu@ #[kbir_h=Kv xq9H:f<״Mpy>g$ D'wEfOO[C6?G-dnWp5gRF OmEe8l;Akn2!l !W".hn?LpQ0G`f|E->/Hъ,68"]>UwX[nەs57tmc9?zu9Rv-23d*Bſg }әW*2;YrMC9&4P3;uBb0s|!bPx3M m0 UEX^smqc|; ϯgB^[~@Ƚ"LQb6V֓c膞,ZS}4aXqSg8۴]H˱.')4#{I"s-tķ1&ӞS(@pI@?mUH Rc&Uf ~-2½Wk\1zJGm@0r}I  r n^wJ|wfJ]Lڪ;N5"`C:| m?8r I>H66[K'_4*'5~˓FWٓPlxvGTwf⢚i23%_cQ ɮR|Ap'Y8X6Ib)1ϩbN^ۜ# .? C 26bcuDDܑq۟ qѭK qRHP&`y- ;KܴLګR߱a-O%G }(SK@;Li>mP_#mV<\SAL{le]"}j{ SlNiS.v?> l7FwڍP;/@E\n&ki玃_^{5z!CKZ"5E6p `@0} fg ĜW7 K,KΊƥ|K~/!'+}L1=hVI)⁰4 0Oj66:_pgYJ \`-՚4 hwgrLy(D(ډ]D}֔ѽtxA{U;Ãj#T[}DTنPJj{NWE$kOٌ0fDՊjG*ey l2)XK;|TҘLtGy\;0#P+#_9ėOH'kFp'3G"g#w )fBRm/S`U/M]OoXlrjv9pp#vpp&OulxMe(x蹎im2(N+'.t:Ek4xy\կQw^la2ꖏ MTzX%n0kx[:i'`l|)+W/!nk [4:K\0ZH_Ĝ*K/^S%1.r<4e~30X<\T إ5X(FK+.B`}B/\뫖=sOF]jJ- $J}\6BCPr|3/pC5eb VÔDnZc$U0i!Pc/dw'E152//R};XWW_+vчU!<==ة@cv]MĬd =BvvO.gW_%A '{8>K[$mbwreWSyj@v w5љĀ(!0F%"mrV9knYTV5o3`1St,'Use"LO9qB\x[v+*Wߧslpd`G+ ȩi(չ}'hȄ ["ЂR%Cj%Od?F(nLʿBmcV9U*" “ Kn(su/Nj.j$zT<4Rv6b?')[w'N9/(#\ljray[N(G9o gńQ;/U}O(w)U:G]zaT{ޟ&$)I*A{x%~"2 p)H]_5Nɗ`u\l˪~; e6%{[ɥS< `):t:(UA3&P~q#ѻ~d%. WrlSS7s|M| "9)b%AQc8$OP!M$pO`2A#5^xѣ܉[z;{5v9%pRS2B"LI%uر޳&~Wo7WIKѡ:Bт]xU8E}ru_hS_A`bKjACZ ۍ_֒{O7#ؗ!_9c~-uC/14%R~Xzd߷ɂ>ٴ¬8qx4pڜKa,[*C`DRN*.yŠ z8}=;5 h=($B];(xR.'=OH5d3(?eű.]Si߳±+AeD9̜'p JCIDjrdIUvah\z 𡲉]C:Ә"r0 8KO)Q)}K۰PVliZ&y¶LQcmֺ.#c48LA8Kdw1arw(S8?3,7NFOs7!;9FfyR%GE[E=|!ؤO[-E!/~K4m{28Zγܤ1KB\'t`Ł<؏ꇏ@\'MյV*Zqqǿ 󸂁EəK֭yV?]6P&ٞl1;#V0'A+AK FGjP!G@YC[qqoexav$hExXkz/*cWI?A>1\%+ nRNGT؜]A(R?ABJ.Qs I7s/|FjLlT:2ȉQҗU*JKZs'J0 `,I.;bHxU;{cpk_K8o\| _I)8L 2/Jg""Grrhu*[DI6-X?HGdžNjjNՃ*\M /)yP[U(@Wc/"?f3= s +--uS;[= &Z 3a~nN؋o3\DВy)&V> qٿu!Õ *`}X{$ha@IG;玽 WY E3E[- :X1[|PZh"(a7~W= \ V0P2A! rM^ޮĎ!!Z+<0 :bB6cS%ͩ I"n̓^\.]sӷ}~' _j!ciU ]gjdcotfpW}f!;Uokvl^OxJ6eSEF`߮`2O+媵hac燜Hl+y s9V'3EB !Qf+e"6zaj&ztP"I ~լg)23 -:lzNU8K\4GAXyt*BG-".~D3JbdqɤNDsEɵ$yB4+nb2Ңs)zڍx&WuF!FbԞ{0&~eUbZz8 /P -nQgN< Pyq`wx 0&FTC {%ƅ鲎?3_ld[̡ol2~riJ]4F_ x4\q<^it3S93܈?&Є&W{2kgeE>V{ji7ݔ{XxDN5˟#j+e?7B;ӕKPV+hӊ`u&hFHLI|GىX] |xg!( oe\A=9B I Jo?-K +U'XP7\3E)5Y_/鵓To9?j!S I{#ޜAǤD8l oה S"9K2уO&^ 3/̕٬ lR&3bcOͻ Lz\,Ԑ=+?f$[DjBk"*!'+Gp>lbX5 \v=N1t;M#8|!/0=%غq5v<6E: %,nC$֩8>Pg(6(asZ|,ϟZ`bQҭH=tlѰ׳QBOsUIST+/MD !>Y}8+$TEsvS=woni(ϋc9[ѐ;0N!Je"kNqfL 8\i8@˞P`:#0H\kξ9 \?9\.$Xdqk.k?G` 4PoB&u_%mD8yVJ9LFyyXvS C9T"TH6־A#5;suħkL pQHiPOHA^05 |kFx,WJJ/bkm«1oOKMU 'mڟєUFfCPgG yz?j@ *z)hrPb,<.a%6V"Yı?\dVh)eXOڻIq"xFaG5-c$9|( W㘄w蝲-)Y2YuuNڇI9 ɉǐ#:Dz:M~Ҏ:K˻׭о1ׅk#rkVll#+&rW w64wNGme(X4./'~t Һ7;$y`_?&*A2oSm(,Ô2"i 0d7+J`uf/j~0~tp]Ӧ>YqEՅ3!QQP>΃@`}a>I}T?M))\!7ҷtҲ{jCD)~*WZmA)R!ªbci6.Ӵۥ%\2Ӊ1Q&Bw Ҍ[k6![R @%0A~sC#/"T$ˆ>9)x?70dZo)͝{֐jd=#l+C(m }gkCm}Mr¦N[dJ '!ج+piE c1 0/PrdNLF0m9S,񨐥u%Jp ]TziKU7 Tx-ڷA{>yzʣ\F pv7@:AY \75zB́b5NoMo}m]q(}gs3J <,:ɕZ6PJ˙НULc1`sD,˵U&,8L-K1"t1.Kd蛰\D2`ŝ/^*BA'he KǠ#Oæg*m8Ӑ( u[q\6pLOϝv(.~6>P|U7XA&#:Cd/ț:TOy\Ź^c^ڌԖ FXy.;uGrj| iuxɢ͋ݚ5k' 5{G ;A)hbzRW44䉉W/2A:o~,>f\?A? BHsaS꽗h2 ->[kSc4B@KCC?3C? 2qd( W3vZI-=_֝{+[% J @0'ůkYʨf1pᙌt[ޕl T})rogx  A|1 5l4cSoƌrqƛƅSU=ijG^In@' Htj_&!/a4%F|o 0).ХYl 6+yhdu=@vz-b2F6߉L%R6fª]U? ,jK[]CAiND9EZT #FRyϨc`dt)7LHYiu_BL$#8l3ܑO6:e 8V?/2( U% `#Q%g&ڊ~AYݪ`Tw`υksfB,KfYā|lb[pz}aN؀ÍOQZ!([(0y[(y*Y7ãꍄl`$P#qi'Qzό3 T97>DI>N\|b߇"W$w XPqA5G}50/DQ60O,ݭHyҫ 2-!N7|c/c㺅I=sM8QS-ћxҶDͨA7+z\JS Cl'ڇ#(k ϶ߔȫfhBs }y|~WzthkAnAwx ߕ]f`Sm)rЃ_x]Ŝ%*q@,XGVW/Fnv(dAx[ ='eѧ,6N*´^fRve ,v+Ï>.7Ăa'9= |o`I]CQ]XAQڷ(V V!6^Šy-q|uΈ8Qvf#'r}Ŝwd>D+( 8zA0ݥK*1m h$ٚ6 '=:%a'Fm&n۷n07%@754QDucOASn tIn '$!(F5vD^sRRKPoL10Zh^3w$4I'.?c(0p !*!ag;"(k% <ރ`D ^bA0.h,J>Sf\ܢiISߥ(6=?X+4JZHAsMNGq)ҒKPA@* r^I!@(Ryj9ΚFC';6)CvqAI+ uM$3Ȇ O{?Sx"ͯh~*B /@bUW k (? QqǚNS=v.hμnLGmK>51zy4@PR.43I9rkA"BH֡7QўvQMux~RC^&ɑ$ Q/u;]EL)R1tH%}FONՄ>Vhkn B:qͶ,nKjM۟rBNZkA5p,`/!mHb2ᯛY=xH@֘blLJ'GGOnE ]K2SÎ͓'XEFz+)PT,뤜L{T&'塃Od7CdĐ*=*y rm[]25+c@ 'Ւ⬇) ݘB랐CG~D?7]TXh3bgl0>&.ig0*~rv?87q*X3L2,ކ6Q%ԗ'V $U B)y#15.3rKB8Y ]+unؠ&@į `*Bd:•&:{P4A%!?#] B2Th%-3$=W!( \ t(gsPHu7w]$P-Z'aQ;10Yk( &u'e0s(nL ]Xix*1f=bBQm0xuKOgՂ_LtP&$[ 8-p17x;,\OwF`v53ƶ{OrZeJVހ.C =Q*ӪRھ2y<(Hp1rWzAXz !-CN ;6lM+dΆW0B1D| yQ+@îiZ#*l; i%1]5 ҭ)N_xQ/!8GIbbw|Ş :U:9୻uo8xwIa*Sڦ\x- awSJϲ {0Z1cXG[H׎ IKfs0ͤirF5`D5K]thC_]iR:d93s78f{=y0 ȽJ5,#LP+cL]/s8HSbNְMxܠ auj<2,o6AV1!ԸaC [?,a);yDCwY/i k}V{8FYȓN{7l Kh&κ[S7rXN_bl},R]#}Q(d;q$?r*^[Il^r`V@hXk& g&y f >Ce"ݦ<2y+J>X.[.[F+ 1]gF :5Ăai)K:2ju}W-ؓ o `[ ST1np:HOp[1*1K^6k`0*5l!HB?V\WPst#?Y5Gj߭.K1ct! n+U3TZLҫ>!_HE3T%ZP"ŝ/aKanV,.6ȗ NZgLSL%H36=36=}Pp!CTVA}n^ kސPLTQy8/\.Y|z<*20^R&J lɟe)ʩjmU6?"ԟW$/M2i^qFZ*xcWPZr3qz  эI-*5? CP7Ǫ`œȮF7&ˈCOA^"gNI⭳u/hյEt(YfuM  9@8 aRAaG> >z.v;<&(2{B(ZI%'2: |) ǹUjeJb _bQS:}x)f|4DDY q*? oǾ&<| 3|D!"d?&rLwv˨Qj^yQ4%Ge."^Dƅ C/X􊅢90 Ǎ|CBq'εVWIQe]P M'1bdo!1vpْPȈH;Ipnavg60}$&=ƟeCu~/A'#MGp=5BKj#س -X/@Ky2uۡk:0 _*{b kIABwIQN3LyʼnF*vCUrWO@zf]StSzA5d,:8bi^YM(DzB}d;/` E`UE4#}*#7()l1 S%wueߘ_FkkytɅSI'LAp+Gء Ani$C }<.{m+>{iRV79Wtyd:ZǑ%?Ϭ6ߛG7RVjԟ Lc/ܿ;QFoO63 c&};|z*䂗 Rl,}Zq}.y 2Z0mx6Cfȃ3;Oq9,o j2E <\\{[ޓm4>l n99r0"%lS 9w.V[LHîM>µa1[#;-@uuoƬ$駫FQ 88SC0JeٯP\~QT%7oR!wtL}vK)3ex\SǶ`Jv6~qQ$ƠlΓ@hA1Bjkwᠾ=D0A8:`Z&tN0iV%S%4Bh ^ahE}}wk\$u׉>K*31 sdƒc|V8 4Iy=r({O3hI׼k"y`Xhn- h/ 3./LG0)  g{66z d 6 f^U`k 8Z69ѬJ.N Sl;[ 7)w /R󩏪1c!R'/ _J8ksG[2{p{HԆ$X7q.ھܠv@rur@! i=ly[kހ䠊A,C'gtpVF4rpA8p)N k ΛzR%6&ZQд9?)ù5%fc>'2!l`3$./ݻU[Eב1b> x]-m π4is!$OU@~> ~%}DC;&>!6   KJUMgG|UX! ؈!W)]D ғs_m%1L,Pj.Εړj8'x)SjR;æt^ԫ (n7wMåŷ5ߏ2jq&0POSPf$*D^5e!Qtk}0fCӨ>N3 %EY&"Ư!IR[:!n?gUBk}.{F]*EQ#̈ +tiZABV*1` I!j鏮5&Lw'&L -z.;~(jvLe>TĢ#VHe"l⓺i{5C[?&x s05ou%|ڢ8[ŎZͥO"gyTwEY o+%#'l踑lJ.7L.hHgԓntgt t G;hT]umȌCwI8"3cÎpgi4΄XKZe jBZ2)C6qXƀs]げEs#nncWС%nZN7٫6!;2M"PLjtJ@қ[tH6JRٍd^)32vOPV_\3}h/R.-e~hNܭӂ{eۃd5H%ЩH:vbޅN%LrٛD.mnI ^υGvhyc{Ը% 2Sut\7p_臌p]V䛵Wt&Ɔ>{9"h]"? N};l)aԅ;lRoͿ*DGCQa4h$y)({RYlk54 s`^%@p)v^g=BHE%gZJ9p[C>pB1H[I}DAF'aj1 DT1y;/ Ǵ)K(1Ot.\ȅz:zߌ<ү19vta'&P*C]*TaBu)A&LM*;+Brp(} ڮ)1\yAlY-&{~9W)&; Hk_7,_c rx:lWȰ&M''u8?M1: pc}V˸Ƣ1kUN -pZ1`>O-]FԦvH? 69VCs35G2n›O e2@.,q5r|9$w~P٘eQ_$i_),WK4VTVmhVeLDw-44@A 4}=: `^ ѓZI5-c f K& PO(mh!zEbζdcG5-?Ni7jm* R-ebrRK2=TVy"?ϣ 5RJ gI*QOpK.ĉwɂW-1]S.TbJjiy:SO?-G>/@3D9z.JKa]HXZP E %Tzapc|3ee! <d!wwI ;QJ1-gيH'@L{7IQWY ZQkGA\~)(E-7=;ϗc3';$Z^M z`Dvm|U& R?`%E{ T*@4kV=;s%Ji)ewƟpf~]qZl-B& S7JI67=l_VdIt2B: ˫Co%1ڼ<%V;Ϡ]u1Z( 4QC* K*QS ieux"==c4`ګ LClZz$2sq&xº;rpI;#^~h&8q/g]=r!5aOv!2R9xғ!_o]"Un6XH$DX,]l$2eP7-#=?h Yyӗ@WEAr0kH+6E sHvLٸ %3HI^s1ZY{j5' @RsCg2l6f0o˖ ]o lIhkmɾQxn;Yp\{GYd.$u$`zom{odV8+De53Wo 4 %ʩ'(>^ | )Xcl Ti}Zl%EYdL!Ɲ0~hEoLJrg$ ӗo #n6Jα]ɧLD$kvhz/y&jŬTd , ^ Ր _kl޷=^,Fwvn]2Njb9F=$=M*Q j %;a;cݩ?:c$6=ॎZEò;Emnۉuj&RG~!pyMpLڐ {t7?ผc9dְI؈mpk MUo)qE!irzB#DP`/i l~'Q1DdO)JpX26гׄMs ݩ1c5:O`H> n\Μ@|H!Em/zȽVf^W"5|fsf@/{аӖʰOF[n}E\0N#xl,Gp,|"M6:ݻ ~,ǴuC<)!ɞ-F)(˹Rim[ Q|f4=ӎ6f[gs.V8 SsF^v B kQ#ȅ+_l1^NXũ3j-" hW;+"3ǐI{HBH}$^֩^rkG m?Mʼn.DYI-p 1/%GNQjcTnL&^HpJGF1HXsaX)+zsNe%جvCH9v "W@FYQY DEnG ęSko3 u!iѤM_nz#hB@{a%AT m#K)wV"Na_Ҵ7;q砧FLСY,aѳƍ(X9l"FdɽBD]6<ó ”:?~-QG jU;`X724uYE+Us|=|H}y}( vGPv-Yg\,GDŁTsclksr*r¾wAq+*"/\oR@e82MJ_=|| Uj83P<fhvi)ZX#)bsBXr MS[TGI OY@*vAԊ s|]حTS]׶">2'lPѤV=ϛq9KYnjoKd\wX}sz'*h,wpv$؎j f%6YeľE C[Ǡ3(5NmI -Hߕ,ߩL W 84cO4I=Ⱦۀfu/U:){S,yRu+aJ`dNZL1(4pJU݅[>젔?QB y,2-=ٵNui;i$l˘~8Ar#Mrm},jIώj'9}/B"vӧ?ծ_>,ͅj'3M(N_=8}y %S܍CNb=r@b 45r -g{_M`RAW3 6w g<_Xo4B_H9 U Gihë z/؍z5$iٰNH~lkY2ѱz&|tvQ&*'W/BK.ƴeY|ջ G&l% L8]6Q TwQV fbC??Bwj::1qF7r$#KS-]f l~m1i)zR*Uu,Nvh=0⽉9 )my:d|AS+ZLspL-?{ ѡaz;V{*)HaQI @[iSl:ϣdw°Twv2| BL Wr#MNT#ߙQ d4fWjtde쫺O*lD:<)mD&Ϳ'Xchc fWI9j'P޼w`Ƴlm # ]D&:D>sGZ玕<ʪ}CҪC{mEPݲuw %&0/zψ"EĩF /.CL2 }Z?Jv5-j7{xL; @1ࡾi;MH:G%SÝ` _i|UmPXhWkRl܅]sC;A: d ,]wbnʶ0̍|yZO|hBʷ`sԫ96v>9<1{ynXd`K%vϋK1p6?z*ÇlO IK$6"OFOzw~0s3 .4䕴/ T 'J uMBF@PLuJ)πKv$ȓnl қ| /tJF|r85}!FloG.dXޑ& |OTB<#:~/VB T_z4{Z~EX\m {#/]neF,0eE?{vpSH~iXlrEqigΑ |G49g5-W1aDtf#!lXvv[].XtX<~ nLX{@3I"$Ye@jYq?Gh]'as|>&Uݏկܵ }J֜5 B ym&#̖Nc\W>8d)Hk;BXÚVزkL*<赉ht u+Z],ecjR453\@QGz8 3вݸđDbٷ}QȮ{WҦ4LT$yJ]?-(7 Clp4r :qAsa7}!!F XBBl|G?+N*uP ;wKu z* .qWC8h^@Nʶg.4ؘ\4-T=ئ VAg f {ha|7fj '9I:g x#Z 9 8i ˖ 'FիGZ>-U-!iclކDhrHVHya'**2Ns007q)DD6MMph?xVi' &+oPh-٣<)iN~vm\tBF}?JDnwH*ӓښ*~m|R_q(Ȃb;W0]K{j$Vf'/tZT92H>vBR'Ub@A탯 ~HvT@ZBkV5> g6ASJD M%5U,0y͡:WFN GmO8̆2Xq6un wôT{6[Rm|`< }nwdi>lzj[njpbOB'MBc~rZ%,9acUhq1{%"`[h~] ɀ|wG߾en3r&O~;<E)HI x'E s=)/q>jog1a9dSƁw IPw L'| vR3 JM%0Y FK(f[2?5x XЗ2Mֻ$u X((&kԨ_;een} m7Pf;3]kb;"&G7u\~jŬc&* h}W(E&EIwNzl[CRo"^kt¿">XcLGsX-*lD-0f^ef*}LhH~ 5]j\n/T<;k)3xY!x|)h"\` bfv|(TP҅QQ1ІnIWSmLO!1}GB< Xm$2QSc\;"ujKԮEۺ˿>MD} 4A?0LYZuKf,dST_0Z K*A-|DW=6> pBvB jĕ`rVb?u83yTےdJ7zj$F[yJ= dqF$?*[rωeW҂*m3~ 2p >EâeӗLFD0[qL,x"sǁg`R@?FONv4=̍l]hn' d$.̥cz"tTq_ǭ)$\"&pvE NM>y9CV䲵⣑ԧg0Ã_g9o,srX.\bXڔ98:"3sH*Ppl%eLCcٍL෯#[R}_ .Y$|pA~'ZH[jp]am va o֎\;?@0/f1ykG ar=ϔ?7Oē?_X-?,92TmaOL@yzƭ0 #`$(J|&IX򟆸$c:cñl1FHk4SD_F!կo\5zMZwZK=dG+uҧT_4vszh'FkI0n+}8Sp\$aw;0AkU= 7zϵ+r(c\50V$FpYŚt /4b3 Ww^jLH&P|؄T/Q*Wp r8v Qq%Sfh# M c52ϐQps1M*Bk \l ]NA]?M+H¡Tw`E_!ķRjekƚIU -6ԫq/h_dL_SRqׂx76hx:=qD^5{e7(k;8 =PУ* M}CxF3ǜqՑLQfWjl sHoyW]'p Ewᔚh38ݢZO aݪΖiyu)7c=9#޻kFrG|k0 ӛ3C/rcoɯ$[] . wƪy:\QI {4U8!lw>"w+4*鮈pJ%/sP~{ה.񮞐 ^08-&K]7ĭv@qfn WKqrg松tK*E[N٫x&CUi a"cL>ZR>zqL]%K%(Mxۊ ]ư9@Oo@>:Q|Ԋm(ti. V1*3J!Aռuj \_u՛6v?hP-.Nij*J1˯zc>%;7Rq͐d%z;}}m{\pcOnsD]. 1`[*Hqœμ^XWlK>MCwdQ{|@vNPq)U!ՓH;%%)@@$uB hr%s̆G8ɡKlHKY)ЊҾ`Er]%%sXnLHsM{B3eᕃ:N5·p6۬/.v {O a@M2i4B_L/u]^#DoqFWHco*JO3FD̒YA-TNIy Վ: -m^+(  b9+, &7{ ?N2[1z*( cvh ֏dǬseMUk4,,TĒ/6 FEjYcYԕ^жFCgtK% %޴&S ޫ'C+- y Bm? :'DԦ|`B_&I=C!ʌW/F pOtUhz,(5By!f5/v}bp+Sv3+^X"HcW< k1cJL:*^@z L[㖏؏+J\%Nـ;zksïƘWzKi`fF1BH G_mȷ߁hفXZ en S16q<`;K/m?[8"?`aL6EDvKrʣiGp?6c]'oMCjKnC׽b}ԅGU~K%jX ѷEȹ#0R OruY=;A~uN4B1Gt*;z51)LchZъ P|ťbv+zi(_ fvtɜcTKnI0-cVbaL ?Lu~Az^vS÷d_vXbK?M%!WAk912B<,KUK4!eŒ'޿6ªhwnokVY[ΙуX*jA䳎Ocgt4$f Ew57uFz5>cNs-$ǟWp(HI4"~:ΣLt#SDPEfXK龗!";[UVNa K6BId~, d]uWLgQ+ /b ]F? N gq%^j㞬_]c\oWiAI3+P)v Lͺ7 ykw Qwwꗉ^T&7(f#˞8/ep"H$7*͜/r"6!~Eve#}=R}$@v+7 Y؀@ANrs#NgA_GcW2ځ*rY =tq@YJ7WIf)aU)5 j=IpaYo֗=ɗ]yj1"~.9L}˭M Q ŃP$8Guq`JA)#Hxk+_[̟$(z`GO̴eUmjO*9l+iemZ"!!Ğ:4D!.A?LMZxShй[p~X,5&[0&g'ۑ"drOqEGܔcN猏m8g< cH_eɟo|;؟DfÉx0^XtQQ]~7PP'BuE# n=Ւ;ťdW'˱T6B]F@'.o#Ǜ73:ҦcGKشB P)(Z]F&ebArrK{8E8ƌq{Ee1rrhG3خ֙Hpbf哋c4rk7͞ X,N&S3y>Dt3Ο>|ܖ'3X<M0t;6 >RL)dq5D}X)rUe-f,:hD6l*3curr- $LtALw@qƆ}Qw`hi*:'_RoM 6}>ۖZNʚ$߅vU& OVqp.+G2Wº=6xO!>bD ou_ 2V?ȼYטQd $W}J(cC[ t,6-lXBur),6rC ENsFzT:W=ڰ}iq4<W$IX ?? &#+&:'>TYlQEKPe晷"ߜe  ˘b//_M+( =@ .^# c|=U =& 1gv|Ac<501"`_JA*tഉ'~Q$kKF*5*! Rx YET&w5FƃBv| ^,PȈ+uQJe-?ӫB$*YoOF <=k傻xOGg"N" npóyDt6}/rւ%#CSrJJ`;$J*_t0H&1 {v%V,IcU8mxBYƝoIkL"_ܧz=kjOl>P/LO{9M١N_n.?[Ih?"?>"jU&ޤN 2E\D~l|MEF9˝wK4ܑJ'0vA]6q>iOn*sZ&>+ȃ79nEP^eЀbmeN 殧bZN8A*7=V.P~6-y [ο^sɵApfA,F&^ZAI#p9I쉟uhs9 1F*`׀%l\:Oy~V̦ve;LW|(bNl7gu@?)U["\Vd.@C8d^f0%N[\ `lIMAEƐ"Iu)V_@ثVV??Ѵ2jqF&Q}F\U<.7`ހyHsrg@ :L@{&6˦xS\dڛ K%z;zYGurS;Y%UiC>]Ɔ0CC{D9O 3#X'}9/top6 [i^G_cLKe}\ޔ',]G ӗjiM\b}ڽq?]b,|!1B. y:F4%U)H&ϓ| 0X*A0x)܋m+ad; o˩jgO HIsƄGFI^ } jĐԴpp3Y|1Pa.VU{?zx'3cnO(Rz 6Q~}dx:~}]{+r }8(EڐrǿW#y휉{LWU ^9GHcZuNu[?q~' 'zd%y?R[}N)T[x#֒8 A.F O ,G1Mݦ:% rˍ|%^9Eq 9>pp@UIPٞ&Ga <43ΒB#٘H !?m.DzHS,*6 ӓa4 ڋ+|7?GZa@ dDjYڒ.Z>nթ|{np<`xk4Φgȝ}xP aaELдB?r_:>΂\c_K78͉Aɫ53~59Z„I NZ݂ete~غU?txm.'"B>i=M@5;^+IcA- Q62yKz=w*a{P@@?b1FU*߅ l >q&Q,ō.Ґg:#2bD*35mQ)Tic4FgWB'o G _aD/aGYisT1CrS2 0#A0%Ԗ:-j9,QDqIM:/W2z2;DEⓚSA[Xx̏?ƫdIdЛZ.цW/"|A5JFIG˄ICzZ$~9ݞ "xzNA y5>ؖ4*]`̓W?-E~,nvxX5].'Ɉtz8uN@"Gc=k3fweI^<3UZ^#c+\¨/aWI,vfb-Τs՝PO7\w05L3ʱVΈZT.O6+͹Db쏪p!&a1If/RXjCdi=~5aKs<  = /8H"߿({rwB(kozTi4:t۩kXÎ Zn WkjE ~4싡iѼBєvGjYewG%"TH١jl}$RR=Z"^rFcbH,N ?@OE+JP7JYвn!C|]KNj\tcRUGrd7 |2D"v߲:L0+`iP:6b`$TFl픉!Bӊm)Dr_>P4xS|*@pe,k[\8a+U@nUFo{/iX oćq殁5 HvJS7*R- ܏L5G,r61EUrAXʢNբ\zddqXK՗1Dž[(,tS.O1y4J1?% m~l#ϫVY&*WpeQf,չ FK#Fpwb-Ko `{~iu/(<XXI-m`m4@.6_%Voboz׿]7J=L<ә`x7p635,vqYπ _G ƔAOӉ{\*w&qpID]ɓe*y(n`[xA"J%љR:Jm_FGr6*X᭘'tjuMfϮx(jSpY C5)aRr) [su\ǴLftc62tK8h±;ug>(/ゃB,qѯJvY(@*ofCwt5ɻ/ HE7eBk?{-QH߫\U!GFkJܮiOS/ 4'm i?HV#5 ʻ'xvA v&4 |ԡG=b-UcPUFX|S+vZW/f8ѫ v@E.' ߯f5IN CF!xr%k.i CvF2WUT^{WLJ+pIC8Pyqi!4%+IøF^4"A 9ߐ? XB1oD-8:V剣.;?ح;mKدlGۆαXT:.*o@ߒ#ȁ0jJ7|fk5 4`-P4^뺫g &Q:$!4U)8:GP\q^bJк!'eh?7%bYgȥ5" qDZ^]55^ v”M.tKbKBc*>`ш˶<+"8gj-j km| a$]Kb'Z*҄v ?%֯* )Rū>x ;ksP/1>mPcDbGb Tg5sEy&r1DU(֣{_pFf|8a*\ m"b俑Ñex^i!y唿0~-eh@T?@ϩQȝ$p  kVl!*k вH^ieIHNIzSZ-q ^&Dc 9\`(]Ta_BF]<:y6<$td=A"ߏVBE5{٬زm} * z. 2ej(OB<}N@qWdP-Ɨ%}]ň F\@ѯksKpB8QҮ[2^pGy [ E++^,ۜ1gMz)jyWQIS;yZH/wmvcȆٖm 3¢/̴w1-sk^͸Ԅ_n(ȗoҦFD{ wd/Un1flFg"lX\AFj\q;;(TP8ӦNtW崥;{g3 Ɓw1t =%GX*:%B>d(Y- )i$^v wR8 Bf' yo6cmTYB LF }@kq;q%v=%J!#,7$0RewøO]4&H(!ffc$LYXPEmX wv[5]f8ht#g;a}ń>ͤ+$Q(fτCaiJ!Y6(y '[u=Zx_^Lȵ1!Ce/_IOhcɼE!+;o$*R?5k]`%Ni!7Z/XEnE[a 8q}6aLO_8>7lTUkyIHr,vA9< ='+|l uYgPfa; Ȇ{Q+1d h'EPN!-~fX+v|Lft;>> 5U+Aa%tTAd !+Ypq~zh/;Y+j!m.٦1[0rM-!P'#jjݦ_dw)-5 bgkMfU&>XEїCjDMpoHƑ׆k33wAeE uiz7Lm9Z]O(e;6ϠAjY}ۑaKx*>LBۭYޑ FY pY,|*1T~,fe=u/#Q@T`ڬXL Q+FcqSHN2( .@y0D[U!u?p"'/hSNzi(s(7X^@-bHoo0R~uR5 eXBE80!tGL5\m76])W}\vڲ#5)JFp& ̆qs)*xQ NIm04m34ЪڳtNgFږ 8竢TLן͝l#_WӔt ?'3/DuІ2Z[=Nl0qEJ%4KqNƻz8cO 'Dv-hC~  @gS|c5b=b oцYT5npY%x뾺yY n0s^V5d]XLrE>nwȗҁm@ۡd{@*ʔ(06?KzFF:&lڞ.t3מJt_kS5 kv{ZU3]NgB@f_Q !e۩e",EbYNüۤTZ7'nIa;!n1ÇAvV^5F;ܵ$ŒgQN5|[]Li?P#9SǷwVrDo;E(jbՅ&WjfK{qeJ>6R|;Ԩ _(JCܣSi!fbL@\ct{b_,X=? {N]A7PI<0FlmtML&>*n H]JRe7rp`$axʅҡ8`,*$!!zщ$ e.QdJ;[L(^Iٸ:H;mGu~_Wfa s#⑌x`?V(f#A6n QCQRu/E3]KԮ"-n'bM) n| X%͇GEPr+K]A*{=lDZw HsAg^m#:5޶cC 6-Z%R(QΫBiJ//~YbgVHsZa*= 3VGSv]"R%g=P4h5_u?F\ҬGx,vᡜ|3M(1~yf A8art/w;D~r}Kts7|j1}@ IQ(F=UuDp&É3?맳wYѺo0@;D*8!މ\f"ޠ!&H>(>TR83 6N{Aጫ<[}:_W .zn jʼ$|$= G؄x>-$ {ړ`akQ|T47=,7+:I<ͤCͰs <*j 4kYݱcmTu ej0ma1Hf~q ⑨%*/6[W)nHqʝ-` c{Ҿ^ĐR^veZ%K\I X|3VdTj+<ׄ|APȖ,Wh]'$hTҔ01)b׹̮M7Ib5Y gtbmE$dц{'6t zfY'5+| ؾ7@~dz,jҼLNoYU3]],| DhΛR ֔7lv#U O]p-hb\ 'l 󌌚\pƀnnb6,&ZqvapCe.֑9ne9qzZ]Byߧ>io-JeMMx>ddߍĘ#᝽<D+^g$ Sym8~3-u&83~X<+7 kL"IPs"'CcJ-td#͉:rAJZAsG~]Y8[&{//Lg(U"yTo A32n@.>UQd$/<83?2rZx{@U?g'}odx)Ta,[R3̙ hР'+'"n{S@U|ŞvטmPb[#Uū>e)7S-끃ܘ|ȭt AV_k$Ղ-8٨FŞߵD.:%3(-)2n\0z5T0ܰ鴉Ɲ,71y.41KIJ82aIMqvZF@ {9m.;n}mPQrBgs: _:-:K4AFo BR`NV+ tG^JKA!{W}K itkv< v [.&[@JG]-7$> v- j!Fc].Y]Pk/1#IvA> +>,a:3ǝlPJOie%Б7Lȉ%DrfYu 䉎nos4`Gpi0)PȒE];܋fk%p3?8 `{4O>ɭڗUk#J#8e!3AsC*gP `R$M_>MgbB-_(Fо/2Jmcx42Xtam=F5fޟ ؕN|wu58y(Z"o }!)4{ԯxӲ\\zgE5Ҿ=+8v-S)aa T؊]!)";.>.1 nw]FPTxQ. h*(!0P`3]$~Ȼ(96 -oA%@]llę Ъ\W}i8&@.t0kh$ qb`Nmˀ>4{.}"8 =oW:zE%^6[Niz)ɢ|q WgG ;J|b ?JXV YAc^g n1q,Pcw {va+BnݔB®|Kxi361$zq4 E% 'iہ-G`H^A>"xD![ffIǙT.8t_)Au15^頤v)-xcgМ" xT W&A",I9̦xr,ڟ& C: #QoN`2q(4mբBTnWѨ3N8O|wsRXp4NcƁt ʏWn_,5teUS;rulT)%-SQSo&)ka%B |UM~^Z%ŧA%n"qa>OHc(p_x 7oMLs*nk#2*8 PC]_M.s!F^L YQ$[F 6pU/ _79yBq%V9%" ⇂:wd\<6mKm|Ze bN_[(6gV֥ frJm'`MX7Ɲ =uG 3)V*@IBdRBTԪb}Sfϋ/}9kqj31 eub]2nU5M9ȶleEhg&Gy}09SXgonY3 "l5M B95_JO*sF̭2f]FP67orۑucZza.;;|ˉDX!gҸc=PFfK)ׂZoϐj%*6N&<&O[Qm'Qr 7+ŰiӶ# 9)KIWH\*4{'Gκpz^0&'&G2$.a<3z|dM`v|% :ǸϚR 췤1l֌p)e/~?^f&_]$zهAf[K.u+wu֗jlA !2 Sj3TQK { @51pRm/ΔuK # ճ6l"JŚM}OmfWQI}bDQP!($'tQ}Ğnr({Xb|+owi Li#=$^zS Z5hOGc}O؞5bݏ='Ss5TC.:zRԎW/ZVplokk@'K -zZEϐ-Ewz @yA}^q:l3ޢQ(#< .&&R GMGG\u5g hoQxq*u`[1yQ"{=c.f 8DIX *umFI9"iBq ;¡7/N#TKw#lf? PP$lԞje!}Paq) XD,wU~lgRXunHd^ YɃh@W/ z3}0 ?!{ƀiwJIyP2'mTZhRd0Sr$S0-=N~d"zoɲu]L5Τtw |nsujV^* >_*jnc^:ŠF;!M*skWХ3kFvqKfo(f9r~94/T_4 UyvOI[$S29G9dcmaj~BshXA7#N>ogm=aFSR,=c,KF{кfdExC%cG Oj빈!lZw5Z7J6`4cQ92A6poqTel"t 8#C*8&~AB(BrЎKB0 =B1.{,h,itquw С̱벊O߁Z&R`WԾn?X1đ 8+j&QjUbn-ofpZ_PN6Ec_̞ 17`JAT䵾^dTnn:Ajnv`owg\ymCSdkAp̜KO<:]-" H}<hVDxMoNCjRU✳'ʥYg!rӯ{'SBM䴨n@VZ@<ÑOkEqЯkdEY$ CNaj,NN5Kd6_|OYx>ֻZ|M/ CÐq8Ԟ+/1SV*{ =wga`w }p.C!斣_Q 1{>]jZFtVIuX[s}#mG S Y_x; #r; qEt3ji2i%=fG(Ib'vxˆ͉/7sŸQB7-L#Q!xo2 OXWDaV-(o?p= K2dTEU{t"X%w6_cM&^T;}}U3ҁI *6 |nfa% & |؞8.++:pJzkw!Ŕc`809;]el2_OI0[NYN;mUBIX3sa*d6I|;֜T'2hUۗE9˗4.7lF}#n*hٲkk@*aY֖õՈQn_j~?(D+i/CI%j duR~j'M eV4yfFYbl4vm bwQ=oҢ;|DT`YHXYvUfjH$qEN(syRVu`r,g%,IX3lX'r[H5Oj{BRq?@)H tSC{4,SK ~f5!F(<ֆ Oq)b(nTKqS|&~!dԇ۶,)ȯ":cȁ-8| 6xrC`^m5Uv;f wCNU r绎vx]v7-UegخykKa6fփ@4RD0 .).f<$RP3$-$z~DѶ\1+p))\L/h'p}pa&h ;j)Oc%?v {ZN}?W.{Au{Hyp#_ˋ & !HkFƳ`q;끬˼1 9:ǿD6&%M1 " yjRRz[a'\TVP>,)w&n;WOt1}jD&j8nPJ'ӬeҰޤ1;ʿBcj;Y`ݡ W(L8=N\3oewؒ6OCJo{|(͐(R'(Uig Ees\mW)T!q ]j \B.vPo_i -q'a6gk` " pQ$Ie^fDQK7^>K8*pf%3(\vO#sMJ"+חtJnPHۻ}rV#Ȧhʌd.JG1!5@-S*{^OD38p0%+ƨӥE?R, i8UH&D9L3JQ;@c!_)&l]{`*`>A|S,<47z3IW!Zλ-TϢl<ʱ'94VZ9󯯺!Fh}&w~AVӼof:>/P&-L@0/oc&?Kv6o2EX-2bx]9nu~!&m0ޑ&u7\ ܨ( crlr[Q=b O+u :` 79D0= vskp -T |絃aҊ#,L= WYHV*$o ,/n@ I6/ے6}Wұp!ns=]+4z#M*ViMdښ \zH d |e 4xC \5M{{'#7=xqCY*L?'AMMJ na*7s9-w3m?~4SG&MTkAK)WbowuU-(h; ?.+slДfr?{L-9u a.LZ+]oڲu(- :TItڣ/uxBZPr;t0P % TIEN >[(ۚEKm4XZSnqK]# 3SXS+b0uOǦĻlpE}Nޓ *aL9_OIZˬ9PeN5j8ǃAD.jĥ<( >~+fȐ)h%ͥkBa/fK=-3[fۜ%q~뎜[r]"lGmFs l R|/] n?K֫bIY/oK bc=\à*yY>TN4W0n떾S=:Vg2_D)<# 1ek3R{o%ק1DL[:4ݱ6Y8nWA`[޾[t :Hߑb eolG0?|PH#CC,7<3+9+ Ax^}WWU*I2st?g3:( ۴EBE뺌ZgUG0^u&5N$k_ _ ANG@-tM0fzD|bS{s0uH NQhPA}2LTv=OY1[! -1;KQ4̧"mȈ6Rs{C0qP :^;X+0?y~.ᯝe՚Xe[W-''"旬E:ڊMD vQB&W 灉+툎 c3s'G<вcy XhP!;Dss aMSpm+6+0߾8kNqk;*ƈ|&tM\T\\;L n}e+ x*\G%&K34ɜv+;~09'?MW~-WLA `ms.am3B,~Lkqs.HC.@8~ =vJ=Pusc{'QA2}EL|<;C pۘ Ay_fg8gM4f*5LuG|K~=(3.rO:[tg ʯܟ#@S ~3,!ߜ ͍tz(q)ܴ@qQV3" 5Iž*I#=U{MK(-%e'[GtpPxZo^rߣ4A4{ݯ]Yt%eq\rZcEݥ);ٗ5`z:BO10>'K.|&b׌_#ŸQjZC㌑Cy=5' ؄F:$Kyw4ߪQ,1F(cbk*A70%[7g^eWx̮Ρnaq`6aox.ѧ{m2))5_,n Gaj_@%"VF_f>C>^;\hW* `.˷"byclnj6qђvvׂC&uWr\e vA28Hn+?˚e#;1ۗڇۯ|UȞh`<$*dPT֥:(mq b ypQ𵒾x >F+ֽM i?B屖~?Q v}Dm$\N]!ΉĵqC[%ST+2~3qH5\<JA{-&ʘܒVA<غ3lB\jU iG9y#K 1'җl aATTP.=PuBn "UsL2;R/mZ=v4?tN%InI i:#H>SeIʼrVœ)mKWÓKyZXp©\=nu,ŘA`|r4ϹR ~64[s9T^@mBcy7ji]dͷ jCvו刭H _-St9x9_#4x{>; 䟊{ǾDxZ]GδXޤ3uԠrLe|ʇ#WQ= U- #U!7>TaI+"!U1٤{*ב/9\'J5sGE5!yC?BY' Tx8u=:PJ%\y!?utc!ƗtMuu'idD!_;ͭG=R"CY't"um<&$kf[>bHpɤ&7QVZBeABbGPKG ,Rr&?<WTT[h̗_L9jTx{blDk(tA҃-hK}<*6&|B@K}q\dS:MVXyc郰=R.fvZ[(Dq,_P.7z3$l%uf{'iѸ/WT$<"ɤF2sMOtDҌnnL{G6(ScUm O-^Y\vRU 5*F" }bc#shK~6`6oς ooS$ ZJ} 0/Ո8' ~؆ yZ~3B]'cҴtEd;1h Ry:`/ Nk4?ca/㮌x @$؄ۣs…2"9ߡSoXlȸqǡO5ГWÿ#A=B*ԾYP ž3@v+P@X) 16ʠںȕQIKuط$宐 1,\u~:^*|BCH̔_(K]k.+^v9j_Txơx>$̓ Y\Õ*ՙ?a&+"78Vb499rn*#Pw>v. yJ<6TB"Z#U(W3&o&ݠZH44aqݞM+K$Pyq;Swdz8)CN BͧGb6}JƳp+Vc(Jڝ.oLt"=2o)iI'b@nPKeHtc|R`ˠ lJ0ҹncBM;r~#ߘ+&P7][M锈n?~4>OW<I03nfv& .fȠxs ѝNVa{>‹` ?t_/=b%tԼ*%y0c(\-u닽$nq9"7|8|\VJK>|qjy W9" ֦Z&S( {w{ڮr kY&:?\gG=U#1w_E.Ь=2;S* elq=O@$G)\aPs|)u4e.YK=S EL>Ϡ/+ ij6iޑv i< VȽ2NvJr-\*:qY%RA#VMDš,0}_4_oVe\$q8w%pػR* <_Bx ǹlr^z anچ5myPSo ۞ZزZ~l΁HiCJ) *S/W]5ˤ'@!ר3 ]=I xr, 3>_ZԺf$ُeZ%7x(Au "00r#=`e")@BUQBBG @i/p07EvQ*q7w0%HO11})J!cA쁀xjV7yASlK72b E¹]Ȍk O?${+?l)L+F2Mͦo[&q+o׽ɒxN}{g䬧ƜK = Vz/}bN3~|Uqq[4Z5Z)yz~ QN̑)($ R~\%Q{ (:(2+(pa9ߵqHa"@FIwEn֧uJ"V\^p/ٸ۽ %GҤ!{AzkLi|.GmP7`*sD]醵xG+.ꈐ55T+tWHFǥm-?Ex4ԍ꭬p1:7o*DL;}nMyEh4a瑲awdYkk9`#G*l]6P;S^CH9WMJl%G)iϴ_cto,LC1t TP c3Yek#7W 1ʙ&%,OjlmD'iL%S;|Oq_]74I6M+&nII/,g6½9_sA^L^֩PQeǏĵH-EDVMh)9Tr5aøIT@rr 6SVjZF@6(t7 U&n/$&,[S>]^1FM[אd݂]:!kJJrrj*5q չ텷9։l*pN"٤SEb%ڲ "Q*J{?VrN许e%\6o 4' N:掯yeɢ-:s_CRDHT^*Ս(Y;7^`e='>G%;;_W4iIy#[Ҧ&RPsg#H3R9R#Юw?h7;G,"Qq|t+tk'iS<'Pp@S!WաP!%w^|QNUÞy]R 4!A.hD/vFJDܓb ,+8i޽|:8FdXs|X3ln"g$,1g+I7Fu>cO1 Z &爗)EjEF3_fKeug1[f]$w+Ze@\rIC(icPn\oi_G>}NCm\<ԲB=ق-yW5M}2!R#V3*ot4/hPsO:gޅ Ydb`ggԖx\V˴ Cp7;Z*h /96f Z(^E)9 #MGzcD—{9#5Ia-%<Š03#Hy&Q4MZqN'koQ k a˟łbIDԭ¡ge;Na왈TA۬P|ڐ]S< N̆U ) XHշ-\~ +3|/9:у >~pU/uj 4Htn-O3lslLC ,?c\7·x%lK@%Y(ߖ%qj勥yMax  JAz"ꑞzҜ4_:>hߔsCOxg!Γ_Uz6#Q>.Mf ?R PJLaWYJT$,gu:]1rD;?XyދE('CUU+XpՂwp8Mj8@7Hf`Kv ٟNynT_-psZiD$:1Eh;l7HpG4MR q/5̩w4>toG#0> xd8zJhPföfm%k"Хѧz$d|<"L?aRz/F'y%k? MFC EƬA/Y(JJޚToD,\`@i iͳW3~G=OV gN|".\۟l1G /#/II̯KWsh3㚹8>U$)}i8 ^G{RQ&.ķ t%JZn&' m5}:{U?kwp|EA1@V#- 'O{!>'`}U&Z2p3qNoĊ\hDv 3k%>0ר.v$R:׻_LEvt2F*A G`q YCY!:jΙ>Zzian.ZRWPڢe3 8ED pA;/^[͓A&<9D*sjZlD$8ytsDRxd&;Br1@%@ #=fc A|hiyٗDEkhȒ#z r-&>4{Xk *RJls ^^I^*Ki8R0ǎUf P=@kDPwJ w<.hQvњI)DŚʩ'kwW@pP\U_@[9iϘ=(@mkݷkN'8A!<-zMꁭNQnL̫|H%FyLɃ;+/1l2H?2Wޥ7ʜZ311-FtV}vo`^֖tT;WPR.8c[8IK>Z_Жț"+l'^s)tq}XB؂;QʣX,*z>fCO{&2KT ,em!XxE*rޒ`*Ɯp<1GE&cRW[r18KGGno%GG{RЭqj{¯62/jeQg5qTwQ"RRƂV5!) 5 NekRI®.)K,Ѡe5W)0XdΤ%iEK iOS \P*d+z-6D:;uߑ'(nz"XcYQg*Ц&KW I:d 1@ T|͒ !G賑x M+ccPtm"]YW,@V~QvLF'Fj6 @0Ī cL,6o+r)8ݒԯ|sqK8JyRAO/)6kl>7'u3+-6)TbL[l^CpZu/дZ.FLOSO&%FO8I[}ܮllw:-',~e5gqqC@[ʖ9{Uwr.URѬu[JHNƳ>jrahLڛuP7" ؐVhw}*w> fe&<)&/3ق?jµAuIL~͍z=C#W9K6|sFGu,DsiV.I&K`t4ɇf yIS]س4h?6yzN'΄b)D zs zv ?A(:D92 o֝ /1u_kUFmz%`DX-2RD{ dnx\tKi//L6(_ #p &q?o4[b`\D8$4z sm~q&ztksΥGFú4wVFhB;"LxZ{|)]z,]Z3e.gi*kBT 'myŕrz,fsމ_b˴ s#Y*Ӥs%NZik}K0A|.P GG4z.|_۸fmHsPx'ꫠu:I(am]ڇUA ul~gn) M=ꮑ& +?¯S EI*a|,L4k%e"<x98^Vǽ;0;X{@f#&3Q9cz %MB]}jmO"q"'tjD:hm.BɤöjA3Zc`2 V oڦQ+Q+*47Deޫi@˸EC~Ň҃?}pR&gY \xyR wT0U\E'_A1X zKr\* (4ѡ= > T65ϛ0hg<0ɩTVl"@FJod8.ۓ& ?^X1Bgg,,uk0K|u wv/;/,c'YJo.(zmr P`٦1>)<čטa!i)l\xY&p mG<`< xŸ:|u/xJۧ=Y>.*JS@87Δ)IXجM`φr~%i0/N2p\L/h|pۃ,1=4'-鹵'G/>ἥf(촪)Rwbqp@#RUl>Rp⟑B\3\~2j\,]c}-%FCu;q&w<^aG!/y'<+zL=hA5Q!e&4MGMV`J,XZBֳAro|BՊ֒*_}PgD.Mc~_,*0L,IUn+H e1\‚L'^b[447F2SJqY"D!iG麧Lc/dM-)z^ItѸH/ @=[8<E) 2n'Г=z+7n(gS Cp.+I6K5i #+Cw]Ve^?A`SG2YDZ;Aڻp& Jk(9s~ іTP_hso(%9;?*G#k2Te~[aW,0 ~4X62po5| P@'`9hx͋D0ߦ;,Ooa 궫]f|J]9R> .*4v dz¢k<,ƻLE Qxoj+*b)#rV_4n^2_0*W[b(t$VBB풾6R0(L{yYrQ6yo1#zv:x5WRV7;}uVFSQP+?QxEzX}9}uV?B3LUvk'a2S*yzuµXM%)Q6OƔ{S}5d#r#B9Zy,C6sHH6'kn0nG[88=m]"sR-mŽw0ӎau *}hX "I;%q(먷ŕ$;](D*E|C^_#ʍf:4ґ7@P"&] 8K^we൯3qB=ә.{- "=S@2TonЧa>w-T롭HwJև0,LLDd7TDa fC44ْr;s?:Gi؇Ƀ5?xԱ)$Mf>2Ij`LT>vSh_rBx#a [(;]7uW7qB*/e[g7.Bݗ Yztf G_FqO-p{zYu_L@[- "8_WatLi#P}|B2{|X$8F<ФSogS쎵*A6 Chh_ F*cnN jQ yt~cdT $>y2 ί? Шmk 4u#M:iH=870:wZ= 8^3 R]v<:#U6"u,i&ȷ³#FiՏU: zK+h1ޞȉR=ĞC]ZŲ B>>ls.FWg1:bӽymϔ`w un(2Jp%sY}K[*-3ʷjO2TEQx;+U~*ue aV4s;=8d.s7Lv/7f"e!8042XW5CJ3D$Ȕyc3km1vYC)dGe;}`sIRsyi5=YE{)^IiCfDo ?+7KF˾ʹ_@P0@G_2bs.4)&,9" 8 Yx.:5qIw%wӸȳtڧSs095M fiuԎӚM*.E}ĖC"B~bv^Lܺ{zl?CBij 8Yy)~z_sOڬLF?ag=Ӌpp]o ܉_xsW᳷k ^@ĴKaHl9x[2IA V܋~:lW([Fhƴتm(b/-2fMd<"DkT"GZ݄ݔNTx<7%aS<猒0Nr>%}"$ZBVu yT#^і5 !i6ޜ|˧(>6Ok*|~ԪIlwOט 7_sa{3 }I7en/e"֥iNb RðKאgu+D(m!Un3q׎>1l™"_VE)}7W/ H7p |%aY0Q1 s1R (Nд![m;T&мS eɐUAd:{H^'+:?XD- LF) mo[i#v-agp?<]@Ս>T~9}YC]rhZ5Jfww.zI݂naҲ5q',Q B!"8zL#?m!|j*͌W!_L!{QêsP;] ISPԽ=否K%!cIl^>:WTTQL|y8Ll(}7SI@|灓Ͳ%LuazwT'=6b8Y0$:Gj14Ά3䚹}T-a|{11HJ"[$|BM:>NQ^ ]6hۗ6ģLNk;9dy'6;Z3&~azN o. zp|[ ХL\FH` w/_<ѹ$WA{ 댃d3z㓼>p)CIUsl_eo9,D.#~r5ܴ0L_oJ7GגI~N1Nk ۉ c{lT'a$Kܲ,vd>7fd1*lW܅ɄB,a9tR! v qsGsb9 LD.ua9?w =*AݹflTMNuuvv2iaxVlg-{hV,XBɁ$Z117AÏN含U-ʂNGFK /,SǞqo͇m U(m.(ɱ]8-[ߨvGC5)$F{AX j`rJ,NebI0̲)9-p>oxo3&v3:<-HG4^jD']xW xl;҉Euħ^lH.7SxB՚Ŭ]L{^r̳p^5XE>"EX& zX 0+?HeT$S 'UC/Gz:]S/sȉ<1FҘӅ_*˄&'d`Ԥ0(BAU( f&MRc\P? ]y5J=+!sҟ-oᙄ .dFٓy2cH _Ntc8_uub(.Ȩ{@Rڔ@ŗ],V,C {=?t:n8P/cG7-oQᏄFWV#1BQ:aQiqd:L tAiSG.0𜮱)l"HUX8.2(%W )O Z(r<0=UI&? &4坳>.B2?m))[ML{%cC3Z~[ћ$[XWH è[%Ƿ'&TO.ld N!:L ma RMM,n8j_o[=vD\5({iIţ}Af (/Ί/QycT f0QR6Ba+|3g1eyNH^-"/g.(KÁAtK%H"٠4p֫[҅j7F1,Mپ +;J̫vmVLj؁[vt$6i\2O0U{w"nfQ#o yn+MGkp5!/_Zȳ$y +xb9#.; # 04]٪G )Hqq s9qtAP{r?*!N/!in =n\ʢhm,"|Tݛ8hC[{1RBT=9F@CP|*f aMbөK ʁi4tF&Ls`Wj%r49%PC.A蟒w{]J%pV](8V.5`.#2̎_c EFIW4za5G߈`6,CHmcНUN+U 0e|'/7kثb#Tҹ݀yRX)q աbJz^<9ڳ\(|=Uo 0UDIԷ`m fY*ƗC۵vqLiRdUJBQgV&I_WAeM,gwiaz*th:&.8Fi pFhh #@UV(G!]7""[u0 Bugۦ87΁ofZH(~+<EB$XPIr @ǯljE32^-,Py1XCSoaZ&~;V;^1X@1$OC4'`jfoOva4oAfȟGA3I-1X |{ G0z RkcNWG"5(ad$3C)AuE$,vKb:pqw+  _:6R9ۮJx`"Oϔ ƬYE9L#%.r/}nvÇ̏3)t%e_,E2 A tY&Kor-7@Mj5 g!z!XmOKtQEä^kfVb8(j{GLVx;eMfRI1Qw:aޕ4r[*c`n3 p7S:]R*}y1i OJ  aXZ nwۑe/1TK p'Dbo1FhGDd qlN&^گ =Ԃ՗8O4w-PpӮ)K˲mw1L>O臻t-}2nD`/|]p0b nE|Pk `*޽({j-ɷֵ <푍ռ^6x\OAwLJEez@ &!ܨ%ʗ tfJآܰ(/h遲=Xp?_F:u+9dv|Jƥ`` :HZu \W"q-=FGVFi—"b2 FL#yq؂c Pm7S5i{&Ke#T4~00D>97jZ&@2"d]etI&ZNΏ2<#hN@,$|%kr)zl3~;|Ǧ{NJf.zewl` i^;Vw&6_*S*<-s|xS/۰d S$@%EB/jǽӻ̭IxvWZ^H[l_hʖzڞs=He4y{p }EבSN#<8` Fp|Jlnv֜|Oh'`I\IIsYp/ ^ ?$9)U+Ҝ?z꾍ą1žL,> zLó >G[]HnH ؇ͭzLG=66nDFIB$8!,F$`T, d`3}~!t/eVIO&lj0 7ma gz0dPG8C #=X-ՠ T,(%ЈǁX*+):.4 ḅRlqs].Wǵ^MEjWDQ,| PPa9.}~ HO3 ٧cHҁDD߹@xǘWS (0hcy?# t+ϨdF@ sǷt/te`H 3O͎.&5RS@~GhCDP N^ͣz-@-mXɎ=oL@)U<.*b?ޯᜂ T^DEp1*lFv tc%Io'cB k`u^V&\J}c\a2~I/LC8i߾ 9-#4ZU:g~zCu"*HX f2hU@qqnZJ:ؒ̆O,4퓞c*O+21lyҡrsart7FHlh(kS0%C/պ $r f'_![ƹF*հ.V)+ 1Wqy7HPx/ KO =1 _ˆXAg4X`D-XUخZM֚Hq^SDI&[ҋ&2J-\5ԲI_cmǧbɀkD\6߬ 9 e/EkWm{2cX(;.wbp Q GZ,]$Y"?pIJ >hyMq 󅐬n׈P#2ϬhZf=>y2oI:ްuJEni@M 2Ȁؑ\cǠU'bE|P/تdIEdVjJm%iQKG+ۅ{kr(kp1bQ'%F0^xP ?O.k6li0Aof%WӥH -3\s {7_q1RM+Įtk(,#vbk`9d=P%}D9 I0{㳕cN|#l^HmKNEmv"۳<ӡsV09w'HWen1>[/Y/Gkyr %mjckoMBk-^a}}0:JiRyUml+l(I=^T1QBBE4 5U.$ʇrԒ+uvRb EƺL@-a{^c/99eE!WC v/9k.2j=8$P ȕJ=vz-zϪaӣ[ډN]nJ"X4\gqB>޸9@+}md,h^ÈQ]E_6@_#pg).&s`}6~-͕sUH6|cݻ7w*,|rV&-H%]6 ӷJcTzo^$Ldlq$} J♞w2r@ͷa_P&CmvG'^qow|YU$Ы@7J '!.4swn%-QAἺdHCr<p`mvoRےWp&PB}u$SP"N Np1::3 [٩%3d v53SmirN<62@Zj%K#hAE2o~<& 8[?8K\Aϣ5j#O Z4~ Uf4nq&k]C8ۜ29.LO_D U2CѢ] 'LƜ'2l4`Yļs fC.:+(qLݸ^.֊;D38zzgDPG]H(.ɸ `s6ӈ.9K35t"ɭ%!WK;y$!˓ C=0G{9w# -p#樔HFz/y- R`LNn _65Ⱝɇ-pvm!Qև^]F<'ER"M> N?}|%8Say-]-W"h:J3:* VH1@yUSrҭ iTPV̞{(M?sPOH{PAۙL`p c%Gu;H-n$b tОEwm}*qEoX˝дWo7['.ӗCr :E(6nB7MN^|@Q![gg#izQ? ظ1)6&׶Ws`2)gam XX80y 歷2_ d-Fݖ'x||FOhȚtpE =;Lm7i+r+,N]K_CS}+Nh)FQ2x~vz$8Л7~{U Vj+:y l&!̍E@ |D˟Yėa,j B|TXe^J뗾NiEM'J)QtAHG2VR±Qws\5$Δn{i脟$mג D \FY}tOVjf ]o'q0tun58Dh.뒢\JYaY%&uNL#/\À'`ldzCS*XhCc!*\YmW Q?ypXzs$Fo2T g C-a@_V,%wt;̐PVs izvYT2g*f}uehdyǬ{rE@J÷_U ȍʪ&L_DVE:+? zExBG`Z/M?-0\ݵ\gMEs.3 d,gH^ѝ_ĮK3rMUJ ~G7eG39K̲|u12Z7#[ c>UDP,;O1\5l03Ѩ3knxqRG"(k7$ -,g'0&^]* i`:*l*b_q͵T؜kiz%0Xc 2ET<5C{*j,>%WL@O|aKujkAaP^Q"sX{f'8kϚ$7TȽ0K(/6rl.uW KԹ |'5Naٍ^'Ș r1_[VVv2/qB>j}]/E Ou/AR˰$HQ/zmh(A2G=P\J D#T(W+.7e 1su P&_oL") =}c C0J/mjvB^eyKq4_A1+r2li~0o98,kn,7dI mߏsD;vB*IBGx}Qk ո8=F}5-oX$ePp!,.Q8LN׷cvtoG擊ӒCоjp'JkoIr(m)E^B\`xu'ZW~ ߹KFYy<n:_P9`@Oc[p@Oq/}ORzW/7RD&_ qB!Nkjmv \-e<{f9Ub ?k\ [Qu۴-RvsC.$&jWoLw]'>/N?L'CĪKt7ELrQ"tY! >c 2ddeKFs^"޵1ᢖ[~#꼐Iblh>A k[P{3K}7ܞelIJNݦ&"EƉcC=X9QP6t _&#a1?t^2C6 !IRrE0-dZ *S_MI*ΝJ+3@y #ں~QTj( ~ c AS[^YGna^V>r/ -?¾KϾ +?G 6Gb~ߌ,bWJɕ-7Hz̀׫˦?x=ejq j]1UCe=6j@!#T _yNwզ4o~[|*Xj'&=ʹ!Eї+b;~9 좛fj7,15;2]ѵIRѧs/!2STct1 M(2tiHM*j<}KȼnCBrbeQeqkۼ1lX 'akShrŢ!N进 @wT~#ٯM?~0]d#\m+5g/Vdck鶯mxŴJ?H&ռY8@[ROЃDδ@s"{ |IXl{ʁqn4j!GG_{SͮrrTU(jps4.Oz߷fzC1Xyͭř>g:XvWk4Dd[p…ht*=SEgv}yQka[" 18p1ڡZ%͕br\q͊q!6PPֹ|fΦG6hAݦ~Wd\W$8͉) Aæq0΂ᆫt-BYn(L%c,U,|`@UEl^忶 ڵއCO`. V{@&)I";聃prqiaf6=!nPPg ;M)e@=vA]xQBCPqA80AHTD}CHikh:bTc4k0XTLҽkdd0@ib;2=r?#̚O } طPȌOa1<ۺa5I:06DSHr)琏Mеsh5ǒf.r(NQ LoSR?Ml ׁhi FNLU9;b4ZgP䷽\IV'>PffQ0QQڼ|}a: hg8ϰYtc san-Hc^}#n]}pנ*_?)zU&E-Tq\Q VʅPdٯE$%ǝ1o3ux+R$[l@ 5qr ki=H -v~bBӬ2R}aQsgrğ5=+yWr \_yVVD8!_|Xq4qQ%I' _:dOSLm]JZ˓ lxAƧ{K6G̙,Mm-ՒkY{=>R+5ĥe ʈpw Gۀf42~'?5jbQ'vvXuL$x=t! l҃T7M"F4^!ZV8db Y&WVJZ!Lni!rUꭍmo0Ŧ'J$x7qYkw(#L=x`;f5w<='Vn=|!l/8NBtω|=2DG tmMx0 ~wGJ tjzQ21hhdž{ɆW  )M7hLR720_&\9GfA>Y$ow䂒uڣߺ ώTtaj_ߚ|L 4EBK>%;qM%lk`D&ih|=}B6BCR E7RG)cwhHWݴa<:R=6La#V&sr"Ŋ^)1Su2B9Ih%YrMGm.˸|%lVC];Zn#l׼ 2˯HRK`ڐm jg|P2t5oHRW6k>wf$K-ndp:P'B~ Y!_3 ~V]vr]:q.d.gn^k-$VW+\e 3Ƣ)FI${L%HXQ0,aWv ~. e;--'r[sYAuvJNacDq́c2[Y]D*sb=œz0_?ګ/PoHa(a{{|@G$HFoMQ5K`чM(}<6NpeÕe|LL'/bO Z~|g!sTst8;^3\,\n6b?'3Sh*ߍ%.?nx16GvO NfÉ.T@?W4LnhX{3V̇0&オ"۽ "0z.Fn]DhTSWUFO0,$J`[|HN[ze 6hZ,8 M )kq 逈ts7k K)TNG2a.hyjX[7syqh #9T/dQ-e)bޔ~` %(Vvx$; ʸ<'q:঳Af7dM䉊|ƳBCaRCAd?'q#Wx#6iJ#)C(Bm-;r8?"$\+WT!`hԾߢWX1jSR'.Oͫ M:PMk<1ǽCf^%eϦ7'1u{"ڂqӫ%kqץkϲzk3925"7yGh arͳ`VO"8Sr!>¾=>Ўn_vZt?ai=]c-cC#R8ƠipLBV"҄.U.Y;rlx&2SLߤ/Ns6IՐ=[e%'!rU+B?=d,om3 fqn9-g۬ąCAZ6B؍%EUbGX}QR_2b2Nfr@w_(g˘ 6Zők~h;#V=_K)սx*d YW D"'q. ^Šb˴~U#0op:}bKQ":yDnmZLG >wJ;Z1S帱@V2>dcЎ9l}T熕DXEGj]>2Ҽ1Tqf}m&?}Kꁲ U@ "qڏ,\שq쌫Gʣ%P&0mh`1n#~zYU:lz!rɤD޽}:ՑB?â,罞f-R45r_$8\;m kZڔd7n*l:m[[)7 {|"6\%l\ rr>cbv ZP%)%1dpǩf|~ RĐab4LA\%lj!B2/s& -?1,è{~k v`m:SGYWy~Xl@p[nJHzÓ[tkM0kj$wSvԝ= Ef^b r4(ej[90t":X+BƑ v^&}~5d)Wtۋɂd}IfcV$|1bD_ɇt޴8ۂpc/%G\SۥR!Yo7g8%@OWo_A\v1~:̛ tW= T4΄;?# eQiI# s:ry7..Ȩa򭿒hp'xY:`˕5 #c6So䶊Cjl -p@cUھ#T~ ja 'ۡ D%Džs zPoX:6ԋSj4]F4)=SVҁ,[_eS+/XvZ+=#Hhxⷷ(yG@xRه=+m[GTVPP<,1-lK+-|>Bg<- d/0 ]<6SIg89rر#Rث 7 xُd0 9/Zj`=,*H3N2Ē:B0K,Ќ 9^yp>1Fۭ.['ذ.Rq~t}߃|1&oR`Dc%H=jv͑7JnXQ5e嬤D@1'1!sE!A|2@lYG7X/ڐ6_4,]2=3*L%T"<&X oЇ굽qSCDIxTa$$e!4c'°ml!ao˺u\7b"5Q< v] 1 %]9ABvONRblh g",&7"!7,d9HY8%Q ipY.VW;brK\ɲXQMZ +{(mId L:LHZdϯ>9Ͽ"q&Fw9Cg-C6C0۔F:,Xw}^*(gg!Ê̮eָ)TƤEX:3U>G1YzſSLH=jr|>"~)H,++xir]PDCR6ȲrDု.kU7^)$Ʋ@z+b'e#l|Gy*[\#w_? Y0rݧG4.>6'C{hGXʹBa}j$Qh2,5ݽwPi>:x_}D,r.Lr3 )ӇZˎd2G O~ނ·NWOp=;ku(UP46Mdխv+P"UoآZaUFe7:s+%;CG㰅3kuE*m2%:g&(\5ia<(Q#qWz!!KOa΁cLieՑ> Dgg]jzXΞV=@lHM⯂x(Jt!Tg3E$074-6Ӥ#"`38SDY>oVq\sl#0V 7`gOϳ>|(!X |0?,gnk'jj+s|,yBU'ۧ3JSWHæzL,Z`<;IY)>֦ZM^8Houʉep.PyTy)/곘nVOF֗*QSletSGYY_}ŽhX~R?CS۵D)ڜȟ DX akpԙx1j#,NI1Ȍ_Z:(\L f#8#'Dy;cդ:gA&O ?^Xgݢ Dz P"𡢌\=8 P1E@zTiwvy!_2v}C2D_^x}'¶bg>܌WIb('hЊ Vw4ϣ[+@KkjU7=ܪO=Oœ{^itvP`D٦ئe>DzNUZ0 ѱ5-ʔo;,upz,}Q7q F GQ*V!uHSw^GFuZi/ ~JT3BX!\0$ƚAaO 3F✌l\j^{9DIuCb4u9Qpr-گP:aV+clq^qX3Nxu;3_f)ϒ*d:5cW>Qcl4QqԝomqG\c3R6@5LUZ rۗڂՉhKqd$ wJzF(m]ɱ]<X'bsx|HEQTcXix) v<pDE>^ .#*2:!ݧ΁VلB=Y$T8&D:Q "$61pZ%#q%f8پNMw5St5RR~-S9&,FU})$S(?;>c ;4Է+pD0\~[&rxNi拞 VA* :}#oHzM{:}/1;n>[a1t ۠SIKvOu$T<(#͡00;lqbY0K`W#о"v)6A'oV|\{W jZ|p4P?&:Xz"2ќKΘջ6ܙr'dZ=pWԃ@z=-)ڥ.%{5|btD.zE r5mVbjf&'z헁XN3;_ݬӭv^;u-\kyHߎa}7H`y"pķr*9]5C9z0 Ӷ`N|u晭r$#٨q&I/3KI2:Nۙ~V<?@)w$M\tOl1K0q}*)TA},D?w$l%UE+(>\˂2 4u'jvXvx`IOWxol7rfׇt~nDX4-1ď|~#+d*T?fTۜ쁙ip3Xuy4D:FXd޸[VEGӑX0dA6˕ -nlTە}q|)r7)[^b  >E6UI֑:MVi-x0tefT'.+b!A4mG"c? t@1 SshoCZWh~ISP&6˷ss1c5; {?xɡk{'e:Jպ2ZnlkGXb/eݴ@L ˴o15V}f(&5_lOHekTZ"T#V/#A?mԩs<[Rm1Y'/BM6:9c?_CH ['p9{##zyOu9y̤P7akʲ累ڒ|g 0k: y5,Hz]Ij殄PGCMj#*qX)*n\t(z\G$  |Ô7X.)Nhƿ1wmjxuJ T?\FΞ=b˃/(۩|}:i@fZAoeFF :(צș;y2.NEN\8@S!+^*8е[ԔJIl,n,ݭ"[E6D8#MQ7 @v=I9tEI)ak]65vcaű \qb{Й|YDLS,_xFE˔<-P5˸fm>7Meş:e4Wy;Gad\Q)Yيh&2q0Zasv`6CMqjQDqr|2MU1HƜ0;$u7.WL!608٭fg G_.ҽ]Ak ݶ 5$'SL@8նfIM"R$#RہyCטM (#wVO 6x3 va=QF$^ %Lm 08Y;ﰮ@=*کI;V!@z6Sn<Pc⇙鼦x$mFnc?sf\ĵ8-BK 6WxK`}6`uoGD;Ww㴷/{&tUbЎǏ(>¬" q anE 0gf4I+DهjeQ!eȓY|Cr\30ݬ!J}L5APUdFOp0kVh0:,lVq%z:75TݒX!?OU ČHU!qiזFg5N썷]%TEr:kk|| "u=Rru@wTt)(VȜ:RCG:DA>LJYK5sڔɕ҆9#+&U&ƒ+氠\X탞+E8)KW;5r}<(g*`2:Qz\Y3dlRJ[|kNv{߿m 1YC;7.0' *.3ߐXëmVDJ^*~md_0f{/T*a C_7:UٗԽERo}!U|9+=;ygDKu+cl/֏s;1M01.\ϥ-$G,U6q [+v]蝑%į;z(G{r" 3j9 fCWSd{aQFg|ڦMPq?_ַO'&}ўIoǾ2d wc7 =l `'Np0[82{/ }w5;^jI:}=tUe9Mgtz틻(+Ō}Cc9l򻑂hD`^t;)ylR`V .j @[}'r/9 'νx5]K:R&ZLpˆ靥:X3~aaaG"Xb0P/ohm]`JUٹQۘ[!"5']ݲ.{qMƱ'`0*5&lmZf&<'\y0e˯&2HU8#vWmhK%H=\2w6HgQ6 0L_{!xC1fn5aHt܍? >o|5f;n]D]),ykћSdqZ fY.ᴟG忙)DGv„AD) .j1Ia&s-#|1aΡ޷KQŲX/܀m= !^+VS39v>."ɖ1 L$3vc*u?;>GDM=FoP:6l0bdzN\SkLQOGeQٛͅƤ90jJOCY\Ϧi ~ +ñ`NMHU]E<£a=ۼqg?1 BJ.{z;qEJmFʵxF}kxJ%0gYD)(|cWmF=j47jlJRJ/N\(@e9̶]$y}ͩAy^y)г< ʰI\XÐc<4b}@m׿L;Ou'<}ӖCry%+h4(mw7W_bp-PCy&6? X-9~~Xe wWbřo _HU'b8=ɍGmTKpc@Z[ r0!*&(kYIχg&.O׵ 4r hmQyGŐ0F6eU d"8^ƈ3frclu)t;q=b 2գ0]Fz@'/fS֥=%x%L{Y^֫ ijSqHM&B*ˈ_ޭ T9BlPX-.aSm˳bݰ?>L /1 PˏF#RtNqv^ ȣ"w72(bjDXF0DX|N"Dn4 "h<]f)U3jCao1*Z."!I#+2u~Hq$T1@?`7"I 4]up, ХqЫNn'`І{Q*ۅ O*Y(yP<\Nu?Y GZTy6V O@ jl(5ulJ*\єȨ=i8Iy{w;% A02&Q$#jiu)1rOftzeqHOv,G 83`0p? )kհE5 OlUh;r`@$n!|VCN'/|`p5ӺrNV>WAP{ش0XCR>u;e6*!7S{ܹ!%#lpq͌6# ǝ9J42cթ ^$9T*˄}"9ۖL#:N&X%'i{\aJiq|>p ǘN̊#3ERzaiecx`} =<dޓAbF@bC5]Y]$9/,RhW1|BހeJacX];>=)0Nԗ iPN)&TCu3g+T&k4ŽKsƴ#mEBqSdWX*ʌzLjoƋ_N3e M- yX eDU,(+;SdꤧT kR9K0x'Op-h2άiܼRW0K |heAR޻]*`aU4жnQ«bW:V;̏5֭ehЖB"+s.*\n,:Z!JD\8t {JAď{=N;YM3&/jh" Cq)DKێvVCK"pqqn7z;3EbGjhyɯctb7@vÎZaуȖ،o W֠aZDHbX$ "v2Η>X & ͡x:bs}ÄvB*Փu_N=P t!Xm$[T[' pLA)xq/ant `=a-w)|6d{r芳HB Cx:K5 EY 3 :ʽdU}qH(`i)Xw$ٵ+NOA 8V!CJA?lޣ)*nпNwqR+7 &]^7тB6qV6n jkߢ^Ar ·-hƣ)U1C>M,mJgͨ@|ٖ$DQ$l`q/W^ |&p[o $*t#YSyO=uA眖}K?(Å6 ^t 4{\11NJGY h )IXP $6-'/2(M! 0x|^:'`._ ƥ|"8qd/#.(.zƲ2J#Y7ϵdb6'sUg41uߚgMڎ?1i=A5F* mWhu3{niQ*?s+W#֍Mb\uxre?ĥ`@n11 =HUjiZz(5ySWq{1pٚ_nFmv<RހĤ:('u2Gm[\ę;RvGn/' g.ĜsG[tn{#z6 ޘb>vDh]yM4236kKMsX.`J(.hRV'4~t4{jꬲMeA]Xd'}߆B7[HeWYN2mj?z/\l=rYU0flջ]j F.+PÒru+w-5>l: j56@z_O-<|B#8q&`kL#%aUu,7x}xu_&,)ȏӁǫvU&;&mK>0L43͑r ZGz,Gilmy|ouf>Gg[gψ`砬b qӖ1/u44@{0V\ClH$]#4Յ d,pʵ8?k $l(P wy5u}`%;|:<"ORBN40F"\1r>BR<XmpB2 A9z=rҫF̓61dPT)_" ڥtj'Ȉ*~;i`י p\''LHkR.'CTA=28˿JcOLyp"H) z7>5-~_ґ#yA.3 p~iLjسu vskLB`JG, 6 zֲb9F)+IYѕd8vrO-Ky o#3C` zQ?0L#2\ W`T^;`Hk9~g& g[,UrU$h?iV_0kz[1='wki»Ow0,q=]xj 3|pğZ :I(AUp]#1%q%;#vgeE}~Q1-H]VP&':1`0<|<%Djx%`B~ѯAu?`_[L`C0i=,!&v;+r6ǁ~)O^V=7>T".y}Rpr O"L}M.q[Ѿ,ѨOO/\4F̈2ѥzZ44 YpA ϚcAUlfHńcz68*=w RdMJMȁ^X''41eqՓ?b=?J1.Ӹk0G'hDž ""rha#t5[L5Y,YiD۷ym\(tm.r6ğܳz J઻h/qJ9SjI̵twJ*X+X/56-nw-\x{d3߲Y 4/V{yUh@H2D[]Nv7bƃ&!x+2(/iY`H0}F G2h}0)t_d=#:zKGK ̐[:g=FoxbGOoMj`F+ !mΨۜ[;@6t<%[x:{yε/tTenOYEVX%Wd삣עۭK3pEZ)l/7_L 8͂R;FoŐ}G \I}؀`ݘbM= i3giFж+}4LlXV‡쇲! + DV|5zznj#f*x3PN_8^اIy>!zgdMy 4]bj(u v/H3{c/7 ;H0tTto+0C;y{XMoō!w{rF{Ǹȳv"ɞLYIh;7הb>]1C pXRZZ!*5p-tD6 k޼$f\b-Y؝)--#`~H]1V-.fFFZ'g3z %-6(t]Vgc|%b(x&R7p1 <W +x4 B9\!^+ uk) RJ:(h_ ,{=G*Z,(@UX^!Uj|GCkhs[>  :NG`߰; (#>Sx?k^uuˎIƨXWVfY5jC,񋴣sۆ kquxQcu@!0@zD' 9]J>JOq1*l5tjO [$"-ֱ|$ KՃΒ*J"QGfP4lt>A0Ne@3y;4f!'?ylGߏ Z$kc8C&(LOf՞:{ʃd.(k}xȇr9o&SYߺ+IݯO\fzA0D Z{fHRU3`)ijۢE`3x@d)L1@4#mM >yT|ڝ!b0{M3T0Zell@ǘ"l{CƔ=Ej9%s9f+/ubnyK!h7= E3TmMषt:S޼Uwl٦Lo{>!Ew51yPwE.R:WahUƌEϊ2Q1ycyC{ DDr8b11*T_ޛlQ( Vw:z 5Ӌ f 5=|WD$u@}m6d(~P)K8^VIBLR|A`(XvrX}|ӯpD+,p8{?V$;V8>Zm\,!@WϘ[K$|aO%3uk*n WV^$8 vfT^^-wadЏjf5#)/ZK6=$dvk[|ۣh! _- &$ _*2yk&e vkpt's2rz&9?կVUk08Y(cfb ZǼ2gZWz[ ԩpJƨ{Ι]oЀ܃AUA5:}Ia+-'@%X%]a6BܕP *)02^5"2G7x;T蔉[7W)Y;wYw5Amml{N,HQ 3ϳ|t2붺IR}8NȜw|yL_xbhD[UP_OoE>'7UiNl # vnlv߿  tJ]\ڨ) , =h48*B+ d"7UĚdYaV3BWtə23`vǒϴ!_:ۈ@c+)6%|g|ۭ:Y󹸞Rgfhs4~mudot ƒ[b;k5md5O˵x4wIt@l%Y LŹlM]k=]oì [,5WzIL 9fP%jXSX2=̧+6ޱ.idQb8 UڲNRTKV#7gxj9:s_ P+ 9P\ +0\,HIDuMo4Mm-!iKe\zb%S~\gդ4.}ړervigl/KbRҭWDEbRiƐUsCQn,e]O5[v I=@b&a;$p: 7:'^?|X.D!EeƷ([y{#Ֆ'О.[=/I&f?_'I΁!P䠗X<ҏطU5iTAGA;,g/uؼEhHQM<ƍ,J}9>K>kjfY*^38c(6Yu٘'WCxcʠruaiH_Nv/z@SS"Ngs [}nQ3fUQΎOV{pB ,ݏLP$citÉ!35ђZxڢG ?2Te@؅R6?vy+ ;Ss703]3Kx6{Y(%;(5@m=ØG8,7!4ehHLmk!VoyX;pGP$$סo:0ݍB^RzOasBH6iȤXm>{e+_@We8c?Yɘ?~iL)LEG\a4,SGSw|4Y؈xI ⊫ UC'~ r a?n4dނ:_U`ya|'yϛö8~$r6oH9\NR:JRD6Q!{c`C>ΐ&*>@J 6;*?tլnAG rHurΝi]Sw(np,1]y @BsZ(եZ-Rl G1Of~89'l=Ua/C\ XY>[y`}(Mbqܚe]mjgl/4O_6gr]NkJT_Hy@@H+ P#ތ5݃@[ AtS+x̴vf^IY(@ݡd(C$`C+4'2a~hÊJPj^TwQlJ՞^!9 $Q]?D@T_' 6uvKG]A[;:?e2v^5$U=0l=\MSLgktsrUvʧFr0 `~QVl 14ACx.:ӣ5~_GsZ|G~C+rv8Am<4n͵2HG7٦SⱮ=߀ Oc}A)<C@7$ bBŦa G'W-GkiZjsxёָumA B>2bl!svGMk5Hľ8Y{g\4[*'ܹo}an(Vy&NfXB'*C6񸵻twA 7H.v<;\tG.l4_)B}q>~:3ŵF"Zb?u/?qRv>qQ)/LsKEjq\a1è &mq΅;=բ ٯF9" )>R|i7fQMʑu*~6j By,ٟ9!2s' TfB=٤]M^g̓}5Fቌ ̬Ӎ~/WI,؄ٗ|dRp(Ʌ9QV,E~WR~-A[N!P4ÿ% GU7grن4c4v G2[,_:+)h፦TUNs2Y!%UV,jx>A`m_ H{g$DCS5 xDt1e Ǽa ɪpkYe6Fi:J}1r!950 ͣ`TVC$ G.|߆.洞E6JGޙ(&kw[+u(rC=r:(`~Nˏ\MSvbNX>{&0a.-ȊԭtTM:ŏ$ `nU["!! Ntj4kzQYAN[e=t-nۊk󣄆9MM~ˠ iBo֩)X ?r=;o21d3(! A٨WGwvKuorub&gY,߶q:d5 lk(rӑ$katYw`X!_L^;f7KtZ2BzcjFqz@>j7V2jg&V_H(W$\ 0|917Qp[A3[TX |hْOiHC3 |ͧ*qo[ ne/Kʗ, 4y/ ,kEĬz:;1%#_%H's$ё^ޕuQiXMVa8.IcݭyͱK"}|Ec?庀]B˴@fŔ{{|*O$x@gac؇۝ u+ "P /&_b N֩,CE=zA5yj+)ǚLm3%{KBa2R"':2-EK񒔍; g>fݔ\ +hE\`* EMxaIx?mcYGp. +X-(ԠUW'?(b⯅5;bH\kw 1%lX'&|=KDX&U9 ;o&C8@åXG9[G:^үE(o1鑌RX(~2|g&pp[tb }0њbXsx?IGy0S`4DG M$]ƾ8wv-f5'/D:.4أxrGpQFu;hBYmq/zUKlkhWL/l l~*^j?eA%abڱ3h)m`UXȠH&fG xf.=,ȾPL=Sva$j )ڍxFw@U,[I$pcIBJž5觭0M^pǕd׆Ԧֱq M\^W'o0 pThcѡtC G[@T(?p2J#eE:oEUdޛ\mmμ g]M4͘^n>[¦׵g/95)@;11=A#lX"dq-"{$}{_<pkDe2oP 1aa'CRI28{M-X&VƋ^lPF4r+zYC^pE6Ńhd/G,Xߦ[ JyOh} =42uZqUe擵bt4~hMYSL쒹0_|+~wy'J+őf@AӁ߁VZ_naտӷN9ʘ%Gƅ#Q>ԃlrAK0G֬P&f=AYz;vur6w,b+X,7NcG *zJoMz,>J%^0NH]zlCJA7[@G cGa^!*4l>͔jshDvm%7B?d/Nί/Wk%a_<SUS)]6d(<a!]gNS񪃃:jh@GjVC/[ qa "WrJW|QP4DL>M7#oƥ'- - nv"79`#𚢚,-y˭dn\ɿ\N,3ȇI}Qdl kMèbæw Db{c&ahXb["*SuWWL U CЮ0*dM'l[YOCXf >w%[mHPBwWn诸X?9)Q T,YXuEqOt@hO 0*l3%u2i+[V [qB:~)*z%]tb{F ȡ:YI.82+5j})<4 V[DrC}GگLU$w:_5<-{0&;; k 3O`Kaj~laX|x3I)cu 46cOC#&zdRݦ2!w9@NpbȶgZ9 zu\}jwumO9Wvpp !얿\^R _+0)! QUˤ3!}Ȣ ѥLi܂]뭥/Z>]%Iݽ+Q)懧צR JV2-nOp hINb0BoW m@c?_~k$X֒Mc}y,Exir Eg;t}[V G&KjeԈy%x87 7Qўo35v`xvUJB诋3ۡq6R9JGF v m?;{2w| 8`j7Zrs|A[VҒJvEV @d✰#VjXkt atwΉRb wI(R۪ Nz2|)z16=rOkߣPxJ{s؂3;:argu!ݷc0nҹa7ȬWd#Frux$vWs>mw$ApE˕QٵK| |l@& qH+#!4]SqdƁoJ5.0!iik|:84HQV[N(d9ٶR[EKc0X-m)< _a!פ' uZFH|Tn¹2mّpN1ۖ'ߺ` a(˾1"b~Õ]I>X.VPR*iYmTC#>8 vCnhK.s4HH]-rq}I >ug8}$ځ PU H|f% [0 Ά،o9!8vW84gѷb=摭?NQ/4} "MfL aF7g}yfKވw`a9.=5FIرƏ'aT=X aC -ͼ2TBiEiI[ KZ?J\&2.^VTb0\&;DҎajQ~T41LS#:ܧP7vy7s׶C6\Ebjٟ`%')II_SD"oZʄ"?@Hq⬚g̞wL3LpwG/Ҡo௖nA:ɵ!;Rhڿ#RK@֊Kbв-@gkHkWrTc:(ׇ"PIEhE8 FJe{$)ܝ~;gs v2Cнql+4c|yRt:/&g;rą0?SCw.f!q ;SƐ\ i⌞06#bnضl< ʁ D1h}:& AN! Rd?Z X:M0v; fȕ@Aѵ|LhEFVFl;![9× ,x)8:—L|U4EQ +kD]+,Zh'N`0tvgS:|UR͆@L_,M!u>N+Ny8/DduyX`EPg-N @^LE<VD oKMw*tX_BX*,mذ׀4~@LEKHΤiυyX]Jmw[M[CrUƮ=~]l6DGeTa8+5C2qZBǏ {Ve.]] Y^|kP jfg|0cGYO֫v_z v F1Iw)|x:.=sn>͵ךު=>2LڊmMTXݦ77X3NKq.{STaiIa8,4 ӟ?*cƬw&M[_?Yve|3ݘ-keB;r"?(It$P@唐,Yb{U?i}_܁Ԓ5K8 N ·:ޓW+-}hDvJ_8C0O ȄrHpaVdR# ȿHOh(oۊD$s#I},l;R cqי,PSDSJp,@Nۜ]3n~,Uk\ۖt%gw| =C[k g)EL/#p ,7m HeO\KG',ZuGH#SqBo:czs*zDj$ ܍xH *etWJD2"Sh8`7рsLϙ)}!7x;~eu oy&٩GX{kY>Ӈ ʹ:S--?˜U4Iz|z|EJdG3+%` 2)[*J5>n7zQvLc1a&喏njv2s!Drϲ/\,}"qҸmlڅFƵ.B~GO|SCdR͏arvcn [ _ggqYxz8:q. eRCa`doBgi2̐=Iy+Q[?AI6:ӬuTeN6:1Su !ÆJ"ba0<$=*Fv/~@Tl8fIREvRλdj~k>l3rgw9x{n!Jщ|_hUӞ#gː˦B9&CǕ~/MZ u?Xވ0Fh8n+Kb 7dp?Z1u銵nd t7o2߽\(C JwTAGD0& yF8vȞ%E9OdʋQ8+4i}/;~[ePŒ{VBjo y_ sh IMQbL܏ 84U!FA}RYF$bvKYd8HeAa~ aIb8l ]9y,rgdl>FKp(30, Zt[+W#Jm$a܅xRMɻ%Ϳ鐧^tru}6uZ}1øVM=C`-3 8faB7t _G s_ӂ(Mt<ƃ9]vnaIq8v$O3eI ~p64ȨUrȘT3ͱŋțdЈ9V g117E7-^k> P@JF؇ϹڶmWl=4\E0,!:]Cxu\(L<^𚘲bncjȍ1xÀ`(As4Lul o7%!n/D {wF@ibԇ[kFqiv"҉ e,C#uzYtK{#0-;@fs76'>Ear-ГHwPW77BXb ?IoOٶdtD  8#\dF>(]u2e4 vE)0{>2^IB,m! - 9-4wMtC*5 1'q^<=[U?gR4rRzA)&y%*n ՟3&eEP3RA"Zx|{: H\@F]{/`~7_ _㬽(iˑ#ԬF@U\~T@,]/N[Om%R9~ƂiNRةoPٍ\⫞r ;N -ފx}~!NkRNoՀ{]US 2 Wͺqd\SF-8Tڎ(Gc>z]ڌT\}k9txfH Zd{t>+$0`z0nJ?daM6}dByyj6n/3+CI=/vyt|g*O8d}{|L:+ HB"/ՠ'C{P_, pp5TޕfDמbՍFY uÕSW$m]"1sei G@ Y{ B.%{-F 7]ta'PLG|I/%x9fCwΓTu5םFL 5ss x六%כbuP$}/ԫw`ڼIlVU-i9 c"(ϪWlwfoj$ ց0M \vUhe)', =gUH<Ǣp€VL[ /TwǘF٦(%+m : [3M`^+dL3mߨ_m{^Eqvv^Q(Mb<K6" 0L,6nWR,k Wy"kӲ1Ē,{W"A& M]D+N4o72*N7)n?/ή~d.rǀ/4,SFq:AqFws6OSqnb "4j W*e_P^eZYilq}Tn.$!_*p.|F, Phc#ttqunɺnQP|8+.NߕFZWZ,CcDB*O9u=o&(|~.Lvզr@&WMPFN:*s y*HCMޞRɷ1{(m,s@*)#W79cM`RYfndI3-YR2Q p0<تpXFVL~Jn&*W㖵jJ@8COWNxxŠ6 J!Wjə=#z-h6l5J, Yƈ=7uRD!֜PgiZ:d{ܼl!^} ,i^csĿ\PR|J? KܲS~08G:TpIitљwLw_Ծ|K6ݥC"V=BmiN ̰F8M5~zINl֖Fc+n8~Bv6eɟ۾rUm5]m  G2ݧu{.{rL;=V:Uv6Q%ۭ˫4-d{PWBLmYk'$t(Ὅȇ^-TR+4 G:?¶ռӇ[ @+Y:-1Օ^4#;nZɐDQ9q{0T4q6kT|5>'CA@SLP e庚߷5|>ZQiΧ$DQ~!.A Nki#d_;XȺG}@5ƞ6T*H$=qpIu0L67D|nE(*2`ϔX0N*YޯBvqv_rjWZ^&ˆxf^&mV%{'5~sX턣+*<JC,y8T.qZ.b3vB3Y;E] B6?[0O0\wwg:t=CEǻM{#’I_̴t޺s'S O!4xx#4U)9,6vڛ*v OBP d@g7Yжc8xQ~B<э_xԈ CIY85/s9?k Y*dwsb-^EzE0VHղ=kT\6侽ljː[ qq.U^+/Dbv@ Pj \ä1E*;T]|BՇM-#l7V2Ne(aV]OxRoF>RF9o(d-l02བྷ \IC _ˀlGoM?76"m$TVzs2ɹ[>Oi{N p֐@HFaolfH :V܀q=ɋS~4mrs;yŕd*r|ӗ޶խ'9~wI Uma>`#ݬZa+JِpǞz%Z`m"Td?0e+ee/k LkQ L6T]$'*4@D2a=FV=Cr_Mr^m=4qv64lEՑh oSٰ$$jw+L b ܄^Lݻ%j=6ɉShLP2ߴʆFiGoT9KVfޕ[=y9 @`!$Yn*QX*LǼ0NȊhA ^C"v~$x-e5&rK8$F <>"򦬱 ̷xȘg! &c9t(3rLbGIl1 rm&tR0%ze3x;KKߦɉsy1urwS:s^>=-rri$ε0 Vvbˊ4Ew36` f0)0\bЃi? 90s,ڬ3\-<2ycԝc=n.'Ɋ'mJym=g3v'4"gcւR)L%P. k/6CWW<"rslb czDUQ;&Ic_: J\PIyv릨Svվ~ $A.'܍lzR\jȈкzJ{S| 42W馌]ItGJ.P6\kwVj_xj^-f݊lfǺ)| (,z|L](F(lίǐ/ LߺGvSYkLqnePd (,BϗF8kY!Dycv1ux=mW`Y +c@SPKe\Xɯ-$fؙ pKx`L"V"j²EXs%u0ԛ\ %/%ƒAKL!NWم 3 lj@-6|Z( п8`}.+i_$_P)y$@UES 6^#}ZŬ[ޭS~oNob9\Se5]j<٣E!qQY ^X֒79o7rψ|dj AOQ2 <!=~"IWcRw`g {߬m|B? 8Ek"nO ZVO>VDm/BO'IsW`T@UE˲-w(x\9Wh), 㿱8Vdd-搛 CoCA\ʼq;TF$3s|i,/4]ڲh** ,` VZ@DW'KvK*b(T7AF+DLR=CiۜA{KbBEu7!xID$WI6Z hXq*@ Dȍ>5!=ιe6=>]-Te2 >IV/)3 YzϤG47BIې(`#ج2C:808țj] >$B`jk1>3fV\u4SK5@&gs|Aë3I;6ry OM{W& LYx7];T"v)v%geLnl 4t q0lti 4T uQH_"ևq\6,mlykZfd+%/o91l-H`#wWu^T)E?:pizĖF*<.*\GBc &sﰚ 7T aq2 :\)+1p\&![g ;SWb&+v:gl`ɬOo>Kn9X$סҝmG2UgfYbӿ{,z «U }{!JwC`;~b,Ʒvx.  ZL#!Kqй8RՙG~BcQH{ÑA@~m ;t,] pH0E^ XVx*ik`~]Y'&%QaLzc1ypX*$/8Yg;4򁏉5pu:%e+k 8b$?j^BVS˃l}w꞊kBLmXmskz~Wa~i^!k9'݁_G&B϶)kL f`v1Z *q(ØHzr_,F?#OY)PdRk K:==W 1+ʖD(o%멽HY `+RAkFnzɂ27.+3A€ezq;= UJIrײu57&x[ F9C('+6"N>KwzZv' @RZ^mOLfZ8jawȿXh^}$d 5>:έ,k&st<\Xͼhow'K\ZUd! ӂ9sƼ`4w徳ϐ`c} 4:,"t.lL4[}+\_r<6sM}:Vf?:]С2.qi=wS1 m/LWwb{ (Q%}9kW}L|#H*Џk;v"veTX?,ONi@@ AM,E9c\օ ta<֓s`re͹$l՞)1(gωLa7639FW|0k`rƜۑ羇%EZPҗ<U˝,+^ ?5ZMV7ShzqA߅j."$_G"فDqT;.TX}5;c Ď-xwzF`rCaNwS4L ;„TW.Byt =fh8CB.诩ēt&`0,3`w,(˽m-]ͳYNڿ;t,G1<]ҮT|H/=#(iݓ򣼗o%[FmY&3`'e+^o[YaW/V U51 'ZSo`kڍaBK71$S;]ZMRSk xQ,{|.8"405? :mG>{Ng=,j\u qA6>5y{qj%P3C <[WqS ڒpuhɪߨ08 @Z/@ܷn-f;O. R?t7<^ItP㟣2EAjK?{qc¢_sh9C8SF7MR8GHl8ZjA׍31ThaUhpd><%I;:b?pX]-# Q Kc|ID+1&f)+vHh&&y# o%0/d)d*AHn[yd#sla 1jDߢ_d26dBN8:¤{㸲ft1$Eӎ4޾+ "DZ- ~$R./3$Y${Z. Et&T1|Yu V#c! ) ݨVQz‰0 @u*أW$CVMO +XUr(凢TmE9p}Ja;6twWԚڃ _@zoʠIcy h:`deEin")U7եjzJok-#Ӝ^o0:""s@ªA@M+|롳`Dz$ո# `h){2W;'tk`389uJX˭ 5a_WJza o]b*5$6ޒ=HҚi6'Žlcfl%L1Qċ.Cw ,n'!3o*m-;eT#ڲA8bioޡcpUnGFjCDrL$Z>JsT|Mc1 'a⍦ϡ6Ӥ@p㘁n`}i )2J^O+mȯ]o*D;rct7mr_,G/E k7r#0ǝ˘fդWpIG˞ aN olZL/Y *VR~/ dgl2m &imxJyR1v6Ds}>we=Wʧ?s`Jl#\0MNs7 |ʩD4ZfN8o_rq9s:+O[(Ѓ@w], [M9SRy{Pl/,>R $/[i{p2p^V?2]皽Q:'`1|哕wKiĜkպm"hW~gQr`ƏM哆;6F}편LJz n.i gFl׌ =^b][VȇM ޢƈ(àm*/`xkaL m僟[T7m$(jEaorFwD,Ӏ$ײ`[tBDrg[Zy&`cJRsU"g\>bU0(c>`'"x]NR\[p94 [~* MUo2oI7.^IOMMS[)0ix"_nzZNm}Pr7eX!ɰ oQ$n~M:zn Ϯq֠xd; A4]MU{0C}5;g|cw>%65][GJ?dM^e <b.^yԩf<#ׅPصY@؍WYhBṖ+k}/B|I9 !#4V`w!9d+IY|5`o @rj2qbknX̙cЩ@<`eWɘ˖+V+R@_$Qf?*xR;A9ˊ\u;)i4,4b~z[C q,شǒE^8%g^w WR0x&r^>t٨!N\&EOdʿ_3(°сi+@ t-9|_U[zAZjLXYBL%r3tDxv1"K03Z`?ldb\Zh_= 6|zN ,PāD?>vgWqH,#q" .8disCD'QRLm~n`G$@чO>r.1d ^%NY\FuKx[ ['xG$*r^`͍ `]bט/{us:!ɵ T6|&s5Tk?LenJ7J?p$d˕(Axc;xO ] ٱ]6;׍y?tۍ-Nd\/!˙LW&JOb@="g?|$-* #n|{'cԯb!XiUK )Z {H v<27.pٜ^ ˰ވ**:XUW%`I.kX{uHX1cSW^ $\6Ki>oRn ѷl7^wg}{1! J-y+$-m~>7p56/$'Q?函*/MY_"X7^#tz_|nd |r*îԮtI] Wz-bv눁;Cg L1V"d+.X0{9\l&EĹiŸq߮-rbr46QaQ`@Rw_gOݗ-[!diw%km0rT;&K^-;iǝfEy{ѝR(8 D[=LѬU@X_L S̒QOIPmtW`y ~(?ZWbO ؃O y`1컦9hX'~M~U{J6X{D;/=u_H zjBz1a TeKj L &O]&t= TUْݶccW@o H^w-+tǪgS'/8/Vt} Z;u <ӊaGOWJ~$G#:ՙï [jPy9(m]2rllN?k0}EI)ѱR5ٰ0.ۧBIƝ|`'ݣ<^6\LΛ!o ׷!.*ENS?bvﯝ%>aYF9̺I.mѤ4zq\ȷCΎ6n\{9+}tς+!02j.{"Q3RD($34MnGw6?MF XYy(HAXsheq$A->wK . 9-{NgS=Yp@#mh:n#>RvMd[ n~,ALTNsm4f`3fW5jw9[(%i=qP 4AUr)dW橐c$~%?k蜴ONH7Pq>:t@Ja>dB9: s7ym,mV|aa¾tX'b4 2ORT7e>]rH_܍ 1Kmd=e6+vWӲD J8 -\ph NpKH8m!0P(UاȽ"q~yNQV;,_^..Z_̭8vWYu-Dn4h1]Xho; 8Cϛdhlk5Q%SzH 鎔8JU$B^cQI@c 7\nh=* M@? \mu25TIca3ni"s7vqh ,TK8JW}$Fc̚X.EVٚ8٤3X FzV#X6kjWM @Jzzj;'T|?Sp'TPfNe]$IIQݽ\aW!Β%},me$fm4{ Q'İr_sM9 | ?i5͎Кͯ˸ Wm؇WpF乪l1yCz' T#.wú3"}P1]3tcmQr[M5ÍV Y[0Xr?8]]% Sz;άq-{J8'z,mq_ٚ,gݥ*UُPi0"n9?;d=dziЃxms.0M!ABk38 Y{_1cOE?-{_ׇsV= @&^m8t~A̟^HQ s~ɪ>eTQ&8}]6ZV'P 3{g]s}?_l6 >c;bt˸2_, 8Yn3Gu!7d0眾@}>+am; E-)Cn}NpؚuN]?p鞜7E<C!#-GC8TsTc{5I\<ʇQZa0&02 :;2TϤ&U^25g9vxԤ.yǷY"B@Uv.h^HiES {YUWWWleq쫻Wilq2Dդ!%ȺE9@ɾB?8V<2K(WΏrS iqᗁ)jUGD: 2J]-w,IuY`a ʧ8,Q,V$$+an 2 {3h_4+vf< N#v&GbOV h8yG+(n)8a^3~Q:_KHhs~RXn:NJ8RTr(-^` 3a7/~ޗHN KMe+Foγj aDQʠǽ'A&\CNjx L$_50S(`֗+Nb45nmچzF:"L^!ѻ-RN j:1`0`k$)ʢ? OLz,}|Q\a_:D$E:Ey(ί׀d_Lwɗ= I;`*-9FҔc=پJ,Ȳ4҈\URYRȾ#+S1|p@qB/6'߃O@ FϪ87ZOuv0ϟS}n(lxϡà\v]6HsQʉC]̎UnҪ}(pJuFӘ1qOxi P*21`n,ȩ-VWNf>VA@:Ŭ?[L5K 6*ѝ_Dgđ Et;D[%`TT^cU]ǫ`Ni_\:@\\Xڛdrkz\>ojIY'MwO&E!(OI;"rִ4oU})Wb<9Q-nɹ1v/4#ic (^+ &$ H5̿e` u*bX+*7dv.C2Qcp*ymcH vi=28{wbJWז Z:@YػWN%3FQ#\n:KnKv=ӳ*(AAaݸ/a/]/m*T Q~,V0GF z x8g&ˋwŃ-~ @? WZ<{2o4%k*7>"h\\ n4&hFG`+Uoj'\WB˧(=뀓2F' ?*i9UgS'J1\ސӤȅF!,_rE:ߪW.XJ8. $ T6'6Xl0{uT%זFwGL"*ܺef1go͓°ߞ1IB 4%Wd_h 7:7sPi0_M3He[9VF7|jMVYYszKS[>o'2LえiX>L2޳`L9goclrE@YHO]`2`4#O|3x_/&TCISDGƮ ClѭbNPNC@.R枧v*XB`BۄJ EGlǏRN*Fg8Q$?Q;3LGӟ=OW~mxѨ0`QւSqH(EN77{F Sn?Qy]v:Apx٩?ɣ;`q3efZpy]>GG!]#b^> S1\ׁ?43|YzAHB_y.@3Oy*t !jZ>gD!d<2|Jb&Ϫ.TݵRuԂ,An(g"-6E,^R_JJw=\^ǪѧϽ ^#f 0li.\[0-Qէ`~.(؟rCѢt!-* @m>ygѿ n P{wyhMK&`n=0Q\m+23-iYcDo+r-#=rc5]mvʚ5N >\eZO,yC/?!G ֨B/pLd61" &Ԁ5>a!o2(M^=e A?Ƈǐ_U~¥n`Gʟ[} UI%^N}c$#A儋{f38н0ǁW[f!I`^~?IU]/Vh:8ÍW'UNmO[ CVrԨ DtK͘8P'$ɗhOٗ090W1Hqہy*`Qm/rͩ)Xv&Bv꺗q!~a^ŬfD)= }~moQ; ak1EW}h2MVq*ǠC:&Gs ZǑQb0o[O, zi3{:\,ުft]j[ HP>waOִB&>a; J;]'MqCOZO,_Vy\.ʰTsbP[1B)2Ő&mGP|OXU{/r0Ygֲ -"I|)1(]KV'5.-߲?;:31qR0arz4Ӊ؞5v 6$uq󠨱Bԧ]]U}%lHj9o{clk 㱴TEi%붦89d2SpdsۂL`V ttN. 7[g3F?4CA$_K`qF#3̨UddD}]Yjf'P~'=qe}B &wb`i&jo Mu fI[ UXHg;Uv(W»4mOU B9MOucZ4̓`"4t[fGcEU$*y -%KW?_m'_IOoa>"KEq?{u=ҏ^PT-מ7D)|Y=Ҥx/?W>"P_1bFm20t*O.-L .R=Z"M\<탴ky&NH9u I{Lp6w>`tHBì$;lMƄgJ\:$--&Vr%VvYpAz>VAN^ɥ&ymW"k̄JRvK[y3㟙"YM@ ~'ό9*Ud`ۂe#=?(VA Zղu*HaG,k^֡^ZMS|4|,&4Mx ׮+Nb(L~Z]{Ɏݴ hX>.=YkU}ۼ@| - a&+5#E̵7%U_h8&\ q(!$62 u8i^OsJn{]tll>6o[^Tn{*Nt-AA[9-Վ} ;?k H_C-!PcX3]gyRo3t2R >x=c\eo_0[XBNJCmwxˬxYוAC9НheO6_;!=8v12 H3*@kE.j:-Tma:osuM7 4"36 En59\Pus鈔Lbw^0Ct1p̯II&cj9P,Hl x pHZ! jB& +hB}JpA<V^7+&$Ga pg5iXka$5 y:}8 ,1o=%YV] W*Mas;y/1xȲCOlbҜ6jACFùW0k>dQg#hM| ZɰCCA2ggvllWc1,4Y.]e<_UGbd㉉Vo\#E٧ͩN UrWy53(_WuDK"@Xt%u)g[^;8*|ߡ+(e7Rj-W?1eIgNJlC(*[=W.& 1c! fh!7"B` mʉVG{8 դ#_|"%_[&tZvQy찹ZL?W MqgLuT7@Din96u#0Myc{BY7[(9-!+9;n'H?{dmAm%j}{:wm`?z gnTߥʥ ܛ[fg$HX a(dp.Ć&?(|*[Zw0](4 {j֌l/%`~p^o`q. v]q t |IUv |zPG~F\}J,~u xb<9Q~ŵCљF0 b"1WK!2J(>+0#ӹɷq[>N,FtzeayCFx#G[/Eǁ E퀶41Xt66lؼ5a"snZ^l*=)Zc,W3G^I42V[4ޜ)o? lxӕ z2;Ƃ딥iqم!,H;.S},ct%qqS2y8 [ɞp.,FbI-/X{y>Rc uc[ `a<ms=˹9[ԧu a)&ƹW$ 7lv**)twSq ~,K!&<ڶn(ȠGsb^wk"];tC,-CIKEGv2mDzb}4zp$Hub`} Mj ȹeg1H8~N>Q`#w_񾩪̨|E3 v߬%u~XSiعv780pTcNJ_eqi#+*FmgNt ۱ y;|=_(a!C4o-9k.k{]uҬ{Y7s`}ę$k:}:(^bjq~1چjZBzY-v]i:Z'ʺUg;`>TJCzSZ0"se9&O8Kߜz3C8 f. p_u4%|9rZH:`ar?jz?%`I9c b:*a: z{WLYY Xd_Q6JjdiPn7ia+Naa{:#zK&SQ( 11ñ~f%}qyVP lÑzE1LJҪd,b1Z$\|E(J 5Q4mΉ9+L'\FQԈ :4'gvzR΍uU×f>PI'XD&w mjup`ڡ& xS"Q>q{{;K~/|fA"2 m>>IqҋtjۀlB>F  jł>"%g8?IJC󕼗zX_G5k'_T >FrDE.3BX >W⦎ GFv6A{uߣ'5>iD:>$$KVP1*|:E_le9Ŧ-[ %ږE?ȻhPqP sh -nXrMFa Цt˵ 7 ~=G pz{$AkwGxn@ңzyL62t9p5JNe݀ڜD0N~شcs@71e8b޺) /[U%mn#v0cZVIGq<\QzHT =! # f_^Vn%Ewp9*>Zj@_6\dePO9qR>%{kЁ8)0 !t[9n[yd܆zݡ)ovF$Wk)> X}cG?ǣ>lqN5)a1UU;*jyEډW ҅mA`\o?| Ĥ1J@N7ϠBuʎZTڱcj->'U\q>$,cua|dϿ()9m:RdTnY7biGlӥf9k#u&yj6uNLU3?oq7KJ7pPU[/T!xcA^Q^vkεSw&5jIH>ԗ ZWDҏau$wK56)9-_Gٲ6`>q#@߽)k,|B}bʃBӰ7 eJ}ԒCI.-/_R][lܦc!m;(MK$Ht7iK"3Qz.¦stUt|j@xym AA'%%}2ܵ5a "١ 2iʖx4-M i=兎-L0s y!<$kxֱWɐ}"դ5vjϨy:tX"!~yvp5>sђ(~Z>CAUqCdJ[k$wb:lքE/$" 䡅$o2R}cUo’_F(~c-/Mhu1u=̾IS2N)ɯѯO&!!{WL( C[hVb#VhTdUg Pwռ6:,n?aT>ȅJq%1$;Pq ;$[hQCw:cjșκyb6ݘV>>y|tcu?ֶY2@_ Eq?ͨhA.̅]h\F  >C ]BSu`PZKJ)DnAӇGB?i/&[e˶A>.1}jlb N,w:.{X~εU=nXOwE~[b3* G97=n%3ppY>ʿب"̣3p,8֤NRz嘣-W+(Cߐ8:Ϡ@rr`]IE9Z6kg0L:tlaL@/@ϻx<4Yt/DNaБy~͊j9T"$TV? vU/⢊m0v201sۜ1eU^Z s:w6~='b(Kqj`g`uc؋1ïIjF3܎"J:^{[T+ ԭ_F+eJZ)_Z^E@Q4b}Zjw(ؑcBhF}{o{KKK_ pEEp E- )wxTe) 2x-# C~Fu̙O5|# JvJ;۴1Oܰ>!b9BWoƷYL} & 撐#|O 6~C^ q*\]%۽BYNjP׶SQoҽgl?zy\6(h6)fPj ;#m޷"YTnB$ƽ- Zg$U#"a#g0Fi ,Fg٩c.)꽾(6 P{CcĬ=~w ;ږP+#=Jo0Ql)׊J]8 o~ T[/y&^q&b4kӟds!Ω=d嫀?]JK4Fâk|{qpXI6ȿ!u:Zv ?ø`c=>rkRuƘaIe)։X8 [Hzεm߯}ZЬ p2hzuѩFnG-^i-/OޙXɭ>=mxtALp JMsaݡ!E Ձ tQLfGvúT|v.q| w,!`@o+O^[N3ӵ 6hGcol;nPɮkIQO33m\^@Mdk -Xzr7/z>DTͧҪ 1uusV@]4yvUNPҥ1Kog#48ueSZx>g.CWV[?E4`HN23 b?d|eaH>s4܅X:Sn32 ֢x挋U^/g:}BŅDr./.޳+@|D8&EU p-{ dL%~bh,-/dHN&|y9XN?qdo"4RzYxLщKEcG[.C*t7 2yvsfj.y=^܎ʶ=̀!bಀ5sZҁPwŃNYGɻ|Jn ڪW,"P2sP]Bk'͖;t-)(pS$ %L\o{/6)! iu":&RRiչ:d V'oq0k}0˳9[Ϩ<ƞP^f~ d0W ֨yʽ◡| yJ*[=VH*|,~@fyh,Dj~7؛Hy\ q>;UF*TaTw`t\&h؉`k*LM hjaNvwp#ĩE"[Y@x$@Of4^;M|S v isXy!-em<\m-ym"qZ86Ǔ7c`8GOVX@^% =w ޚ[0ݭ#{;}aח!S:Ue8؇oZS)*iү9}Ҕ\g`nR^Cw!>?oU1וxbݞ& 3 aU`̼27៳;G#PS `sE;kaj)7_yu)bGUkTA zHoPĸ9Jif:=5 18/g/\+c/`DyS$&L5j7{ "%G6ɍOI m|ȠPbGNxvDNsRZYq߇ xŮKz3ȜFC']7~TSv6GDNX925|Qtm.Aտl)ev@S%V6Z|hoK5^Gvu@ ѸO]qK!9P@>βĝړmXz'T?|,0odQHs)2C.2Um+T7\➆eH-Tm⺵4nƜmg&]Tn MKF;51R:q '>`Q12KLci_9 wFӫk9AF2㝭9xǜd:/%¾V b#G<>d`l0$s y% ]E\F_j=г-Y/ wO;;`OZBkYc-d;k)tb=eWt~EƇl+I`BU'@̩!+I("HZM{5svn5)An\lzhX% I7Lv-8â6&J LɖEOn7{ޗ]=GcdΕL;#H;VPY YB8XTSו1 NJOrILju)d i4#oT.#).S֮T0ghF9A& 1F:vqM_b/3!?Ge@Hղ g_">%T%%MA!\5o.-Hl6K6A:c$%X38O]RW3A^vw`E0cا##&!_:'8ScE Gl(419 솽ʰh!ʽʺMwLƜTMgBQ%ÚZ|/紮GMо40|%j 8=R/c}Beregmo$xWzY42T2 ^kFtLoj@ gom9<Otm̀rjJsqq*hJIҙ (rԺj>7+;uikp&LrSs{J^dzto[d,lcdUỉ3~:3TY21\BM+p1_b!z͇Ã;ZF\xXXj=c]m4d y>ܳL MjGCln {k֊ĕC3M@ 0'/)=s?_c,LՅ/ULƾ,q2{/ 񚲊iylI 5^EDK+S81S?p/˨>r;'ٷ%_5p fʐ>+ HTµt$G%?KC]iwOUi&$cϤ{#)O9%Hʁ+/Zp>F{ȿ?v?"31^@dBlBU,aJqE)odPi=p,.rd"IqiĿ3q%x|PZ;x=Q0>%})ER^ v8i RjuEm7eo[ϖ8VnH4\6BnU7e^9i?! )]JyY =ȬJ!|\vhs^PWxgYQ}F݂6|$F sq}󂯰sX@J~執&Z͡ 6&F;#aBYW Uw>I^9 ;h}v%u;˥F? ªlեAܜ)hЕe,dx8^' B^{4 >' }2{6h&D@74]d<.C=}R#ښ}` &PJ`h |P SrQPDs?7BV!ӭ5R\;x;@\EnE8el71E(Q}2_ߺ՗\?CryrKJjn[RMz9 -D@b;25h؇v:7󂠯nEԱAcaPQt±$:CS000Nڲ x/)A>(QI~tt:k&y1h (5:o'$R&i|ȶQK;oS rZ3E[fG@aiO S6{ZBף۶b+`{(3kGg~3cX Y>5˃&)>`X-yE71g"ݩ-.V5v" gK!Gyg8hE̚O8"'_;r!ZƗ1N虱.q=K0Z4q0 Ի[9adcLimmm7.ApWFJ>y5%:32sPv4WաN^ljK H=+ 0Rfz?m1+# MIc6sKEahQ.$Zc泸[;=iŰ1pͭlWfa~v(wЋ3mO4(7=5:ohKύcQ\_|%~vml7at)NJKn/[b'Y P~N[:d[ZB;Yu);Q hKk!F[B{Ѱ+_Ftʹ'@=G4NvX{p'^GJƪxTqf3AgHXÖ2]P,Sbjcz)U ƓXLIVQPZ!\kEt0 sԖo0aNVW5vM//3⼛W`M%Nsrk5u8-AԌ]-І %|,m2!jSk6Yj#jSzm;=0vm0PQYP=CGלZVjoALzGY &"Aa bo>D9ܕhPv%ކ&|ދ5 (iI@s49TD *nůU4?ƉI@ /Ndq5ݎޤ_VEU!IG1grz}E_Xퟴ[ኆPZKczj!0{[Q%\ .mQ.TVϢ^4>xHlJL\|1Zy/?Îr<cV ?y=OV,>PK~,J,,(^-qSq`^#9wHYHSDNOEH&z"B@ž`jr_ݽW&%U4R!d'@YpE7z?7{Dp8Ɏ}@ԍ,סeq& qDpBW1ݑ] 6ʈ$BFwBK-f׬'ts/o:u}wn ' nlڔv,rl=B$oqrOmldW2)RWD"Mi ~/ɞ:: )杖 iڠan(g_<"̒,p%wC I6bQc^1'3:pxP(~U˹TXH /d3|+ cq9?[׸P^3@fD!%>&7S (fJot*w*Qi#('N KrX^͢ $!NCVE$ֱ:ڒaqN!D@FHڜ9,H\Ĵ_Ŕ z$Qw_x@cXZ0F#;}H2%|!d:?B&\K\O8%7 #PQyQߚ9 Q <<7鍳֎}T^!xΏt]Z+jvZ1os*XAIV:CH( T wҕVyv66]Qi7GǼU'jVz"0uPK &8j7RM'|Gw˕×mٲDKe«F 0o}F} uhd t#͡1*T\D}ǙvL[ZffGZhZf>"&P5!cYDQY+t6xX \u"ލf&ivV(sU][ HLV oU!#Ee2s~pIk޳p->sЛG$4uz1ƈ6qr/ȬJ()Jok&|/hWm`Վ rlqØ4/9R2ousn&RX4Mi#hJ(`@b&{:~j]'JTc<~;ȅ-y1XAI :W{IWz$Y*.능',YgWuVECIds];_h( Q[sMP| 9R׳M o35nF ߌ٧"ׄb-K ]&g dϰƦ}%;8~!%NjMam&Wz9hE\ /D]9IMpul_OV\wEexm;4* ?c_0 !V86CyXr9nٹj2 {% .k_a3 N//L2MtmOF>mg2eH}%*xLdoi(f2ې'}*].dFoa yK ꗑeu5(89T4ΨD~6~<߱ .jil VʥfЪ@á*` Ja-eJH@Hi5Q;üz*&}H;Euzs_X iZ@< P^U;/sv:!%Tl@ĬiudO %T]gE0ۜKcxi2B1JQ*F^XO%s+H%EzrK|\r |̷+6>`)m3Hp4M/ۚ>Sب7Y }-1٪>+qH Q)x'o7Qa8SХkOhn+5jk!32dB$o&^¹QX'Ia\x VN=- ,@Y Gϫ=nיq=8Egugᘼ̘,FހL|gcV5ݥ/X%Gk'L| ri7uŌ®chn.L!pU',ql72+lItU;〩(C(yQ*)!i+8:-Jj;χnr@ڦfǴIЎrn)oOst [ 㖥{wze'ų>$%+V.0T%?yT #R<ۀЉ&S[#!2%˲(G+`7k: GYS+n}$Z[(q.ͫ>1k;|oƔך7y0n6~A7\WC|.NfP*e9m\xVy&5,Jx&[W DzTfFE⨤7^FU}fb: a:Szr#)HdX|7>(mwԣ$y J9߾!w!+NE}1BVB#^4n'DKzGHf4%f!F [z(E8rg^Byn_}Ð"֕n-pus=35 ^6yBꄍQ:@{Zz\VsRfN A&yg_̻knTٳ*S[v,L⯽8 @M*JWϡY TxX;7돱u0rC6F@S>7њ !4ہ2My&T+0;SNfNS,BAGUdXF'^ +fi"2CpYyiJ H+B!} *\j i: jS4L`9>f% hiޤOمO{qHwL{fk~AXv9| /LE^ <.C7IsP@1LO;:rh:a~׌ [pEކ6[XqD*pSDdoӭ/g~!!n {߀:JxQòF~x1 }h6^ºnѣϔ܊7rqsmCd㒱[W d}K 2?_POvBybjpSN- 0.[ (47<j* "&GrZ 1ׁ)p.No<ĎS?͆1[y=*MYSC VT_´~JUkŵ(IҿaX_a~-I^-4 68J7R7<`0V0SN͗bP=_RIxy{FJ]{iovPJf+`qLNۥg~a.2Qp0C:0CP9m_dL䞆b.G{ixQDaN\$|MA.+vJ'-q{6$(<&$lC X0œ^XG4%.ȗUZ9/'0V{+)a|<_Y ^6}vxoycK OQ~Rld~_Ո&DZ@Qy{D-tBy؏<?(CHMpz$tҞUV O u6S0^b("؝ݷ[sYtcʖ`?{qW-ȥ2S7*<,>Gcp`&\9Heqk{Nsxd|MQuEه R 1=zhݖ'gf*:ٗ܂`hHQ.6*|]$I 5\>biXV8Iɫݦ͸$Cf]}QX$Ru,PRzDu]G\Qt 򺴵e_r獣*I`ˡ艼VD]7r_!-ox>ՈaKCO]"ּd4vaNIj'%n[Co.Ֆ krɘڱ68Yvʻ3ղ"x>pl & uDqOBT.^C]e Z|[w;ZW3-.dd{17O(AVd :y kH Su*vMP}(̒(B&a`&VƲg0'8|EONYg}Ƭ$O1 5@3QdDr-ޢUﳞZ-֣MO[Z[jOء,_!LXfש{Rփ0ayOu!ڡ8ڌo , 6\0Ŷ| nYɴh|1%'gC >>T%ߡ-F#{6 tp:qeh>Gb7p;aؚ2Щ $k(hck'ا !xzvSx걋Ȟs#O=Y[oLvDBFf7ȁH}"D0"YTs"Lpj&ݝki!~93&=TJS{(w.< *vؠV٠bM==MX8/iEoDG%J/L{aAg I,UƧ-(?qzԿש_-a/k觪|z~iF*gz~P.a6Qnq?NiTo<")XLokD4v~M`~B|_5icV^d.jR {0!b8Ϩ@mBRtޡ$JDJњ݋R[CU[~ K}_e;M|Hʤ fabinY{6 z}BB<&1J>L~}ղf\ڟ o.A֥ hW #SP@`w!G̑J{@i44 2pҷ=bTy<ܽdٿqCq};݁KԹҁ778T'3&ТQFx\5Ҿ#+Z@Ucoeg'N&GO}ٱnU7"47Ru!E gZb<=&qz{%0N=g$nb{HO jܚZn갍kRGVpj%&:f˯Boԕr;60d ?@B5V CD:(OW 1h; ۡ1 <$g\$/&%ڤ"8a.oa~v|1OEN7AWoDPR8JZ͛.{P PCEG\~E!LMV̼<_oW%1RΝGZxWBjr9w4|2&]}mS͋VY:qpg=ǝ gxhbf; @?i?~&21rz˥U!ewLH!V}g\].m)_<同%nmnVlΣ!j4㔴Ldp>X`wRE-/W},m ix+mڡJ? X"d2}]iG[ \AlYF@953"+y8 rt>(|MBZWȵۊYD_[C+Ar3*T/~ FT| [)XP1M'YTR]9<52gIWZ9~gJ}sFH,)RNH&vݙ>{ϪO4y3#G&V{!VA 7>E{&}M:zl|)<٤K)X ,Q<S3`̢<:eLWH1N'=Sibw 3'ڹG>`bLC"I!/82Gdn罖ؒN?o>4yQɵuhh.t(6>gճQ?6Uypw6szUzv&c 5StWWCTP?e/. WST%Xl\T;Q{S BcXny;2ªr{H0SCԨ!Dn5H]Q/8+dMT=PmG3ZA1knڲuS*f g:$+6ϑj۫N}_ɿpFcΞ#EiDGm; գPv,mxu'A"&m6+'SnR/*]eYMURryv}ޜIex2`N+A/k&L?Џ019@EobT笮6B@(όm^ӿr98 e%L#?HM(xIt(|JjP3M%ʛҩߤCryiqYr4 ~ݰǸ I$w劇iGLLܘnԴ?6HnK)IיQү}O^&^Y,:ѰλCM;@e1̚⟥#W X`E{.='\gՠOFI/{bEGȆ)]F2,(H$@4p+1 lCrB0F,df!<ç~n cqww]|ikɑb"]p( Eҙm 2 e"*V`E𝉜7yE) ?}sC00),;>{ȓ-ɹ!x߉:A<0_0C5.12VcbFN2xY'D:F}Bme)ŞraLŞ7ayJ_3 1̌ŷ,0 )N pGj^˛{u3IȡY5&UΏw;9KqDB), 1 JZ\d(tKTv&},텩>vWbC`g[TANmswKp#sަ u8ԡqۤ)Ml/N [>hͳkSϜR !҅\IrbjfEUU8_<_J=/7inm̿"nSRfr7-l%Qkxi@DJ{$ a Md%8պ:;O<MLʅtQuumdi[pcxed.rt -ni"1-_LѵOC 3䝲T\yKE:<p)@HlCm2X][mRQ $k2s B%!?xtWFN,r\Naۡc[qU b>Xx[OSo$^[@:x᫁19txN%X5^DZxqʠ:pK TiD@BeXadrD7vYaC7?8g(IVylV[X.ҖYP[Bp?K:2z&a) ?3:|c}Bc+P MGu`zq "ԭĚpu-y .!ĪYEju)䦥^HE$Cx@ c!>!M>ĹWY:nXGM^zM7 c"BSNf zX-mWW9|TȈVNhF{7<%.:`)ϩZ"ny$wd#p˒݈ qb­mpP,ЦϺ[-l6L= >QH,RFZK+J$wh7*~+&ѹ\G05ZO@MWZ |LM{Ci EU`?U8]H<\;ziE'>)O֯3#m`&51,2 y;Je4*.fLʧ.=Va$WqZbl9H'>B#\$uI-v#v"%-->]!K/d2t[I0GerQls^ͨYpf9+Oq@&vdy+_BpB<5"6BrKd4bvWVg ?BǷ쬯~PejCEf *0K*7%RZkr͵ƣ=3^Lh卵3:@4v*Ւ .c0vT5Q}1>ipeq&jj+D}ȏ8Lz(5qiva栻^iG{&ıS{G!xglK5djN ?OFzsnFDk'C3X9K 8#)S9Wd3QpɌ3m[gusrM%x'64PsFCŴZ '@E`XNbX0>6 Zz06R\9~1,>m F8EBD EN S`lN9p} +M:ӌhiq>AǁUw:7KR<85TL\?gi`s"az]p fګ%E-eU &JA@^a; g~P )"!t$'9Ɩ|WY:mV_#>TVcGgC],fr}Αsa ik1 5g 6B -G=ȩt:geZN#1mnnVn6I0`DXu0C}2*P7Woes+e5ސϟ\WՆ˴C T8ntD!wm>XzVVeS8"3+Ҷ"UV1wҀבApmz%s/ 1D!\{p?!@%U,NBsɶ?Қ9O{^+1E)bE׺)FVppJ|}^ ieEu9qRBoKeJ5^XjYMѬ| $#Iɴ"(lF[& o}3j]Y'&. H1H2dxCDKD×웢Eϑ]2\?]jV4^%0# V2/@{r)Zյ.,f {Kj)7:D9Zki+U|<ۊ,Dabsl3 W9 穝{ItEU7r>gt^Es=ƀ#JXA ! ()_V|P'xʮ2ru䰈cX#@XҌjFuKrp5&;$֕ S- ]͚裭Ԕ9lIS'pLbqF#N%áa,u)e8]U)rf$%Dxmȹ`q%ncaf@p6'7YerE=rsW>nd*K`/ߗm:"$DKhL8 ,=K9-R}Jc.>?b ,PNrӴCB7Q9,&2VugJa` i|@!(ɑv+xFIgp6^n.~D72:9DayYo:

R'd¨7pUE`; g6[1'.zo;??w %z~A5eʃ@)<-q_p( NQq K0hCm|,WZthH_ + (Z{ЌDT)b"-^#NM![pjf ka2`$ iJ1!ϩ8[ D@Qw1gfa_4'=h8S#h%hN,ג V+EiN$I 읟VW%>(7ivm3|6^7/]Ft1'j7;ft:LJ[D3ͼgs7j[T" \ˬy*X,u\bb B\T;ܘwn!U*׋Ζp\sdf-j/$ aw)y61>x# q9Db#>og LsV6Q5ՓrT9.4{|`o]8xjŠs]~}Lss{b\6 JpiS7'M|ESbU1;nbw.9 .3"7f)@4"Ku'~ Mq'OzJ;n okzŘS'LQDںSu~eUO?ۿ=7>OV9ZSfAfN2-cEߏ =ѥsb"i$*jiڛ9 kX˗+P]\.F!02ptun4:L;?2VF`28UK|YR,|xO:'cyCpgL qGAL4 ^_qVjtk\35zr^*?&⴯'FeUUL zkK4R(" {偦o$1RVe<~L6-sr0}bdH-wx`rP5W?1/UF5H_yR0G ĥ;?~s%ECںF ~m`x׿?1 jw OR3߲S goiQTay- H6?HzK*M:h ]-¼k69p&PN#+$ ܘx+bi8|.P&[ o[I}%u 9R6dqyM>mF/2%%dA_U5~יj$?dQ5} AbBNjTm@_)tgg}K26y&y(ڥx|IZoobXz§7(~{8-[V7+XGWF*#X KErkt^ 6~n|ȭʝGf/e`w϶9x 񗴦?Pm;@#VkIrT0-iWApŻ$s"c WH b䣪L>o"]#31! ajEh&΃;{5[u̗ C1d@юS$:dOL P-wQSL<72Kư.JI[rW!t\F[٤cw)cߍi}ɚ9l3az@JmGN],o/9v)xyz ec<ȗY4ƨHק:dҲ}HG )d{ƒw2T]B!Hp%w PÌmCY#D0zI W? Mvlsh XsTS+yG֦yyk6Ppܪs}0 ~R\4d^f]w<0H?c. ƨጰ?n y?C30k#`1jr{/c!tUtGAv\s 9ckzRZZ||Y o)Ӑ&1hۮϣ=s,|_]{s?1M!IjT'% ,RЂ5 sD<m1o۸C0\J0EO[ןrnՇK!%"> _ s#T 4T78&dh 07K 'unG+ ˋra~ fYā3J'n*nE%YM| EH>Z|(5K8y#9*c'v/KJn;X\G> ރZWk;G=_;mrw4|ϏQxLMX?+&ΛoBM\9GvɐЪZz0+Uo >0P"L+A޷ח9ywjOo-Hd~\bޝ C &CGDsuM7{]qtV|5m7Q#DiO>"%Or.'UexCM/×ACp/:w(Ks̞[-a8UM0g<F晷2MζڎՇҐ"q[>S}'3Hh r&b0 Rͼ`z \C$:3U]7_$OPgXn1ᄟh}}C,9=E[E,@imE {vT8'(շ噸Y:-qx);}T0 Y~_I 53:Rz۱ Ӂu=E%.sbIڃV*v2ݱ8ďWv¹׶*{.Ռg~,E U*_ 2{zL&k, ,i탠)fTݱwጱ}984oUOcEZpP4(24q̃C4/} έT41IZKD"1W9`BԗQ}=\/8&W:wÂ!6źo}y`)-H) AI}/BiG9\NIH͓fSt$!]58AȎQhkW݂DL/I)xA "L sBu" y7쌀1OJAoy{#$*JyY=geacv$v %(\_.>{ojX29*3㿹c )~[zk奫d%K{|Nx8nA+$a 9/T1RǺn|SuiPZq^hnqN{1/`7$roMkCN3/f'Ɠcp1aI,S4))Fg96Iki>rwtJu{31]r1 >%S!yj[@վDYV=4Y񪀟o}!Vy0$'ׁ/%xYayV };u=ԛi8by f>GOxr zkE=A_4k1%\w'N )_ocU0IsM׹Qx/H{BEoY5@\ o zp81 mוCx̉(y6r"}TG,կnъYBR؋X \ܶP]ē2}-56{Z27+E ? ~&D31jqN8 ~B8 U4b2AYV̐K)6JPY<)in[,(A* :(0 d>,OQtJ/7Ux[NQKPJ|1΄@^TeڗVP2AԼ!y4 L 9'dnS61?O>"}o ^t<Ÿo@kسu]u"5:7$Zڲ?K1TUXxz0ef9,B(lmX,i#KUVk7&b,l{Fk/-ݲ\U1f*猖EoHfF= 10KT^Fߨ3CvKlwNpDaE۹9{X8v\fb2*ܷ=E_@Z9\"ۀmOЭo_1?.;aB-ar %O_|gYÅp|"kGv5?JXxCµ@؊dSCU^sUd`buS/|D,\w3%:5p /A,Xp*;wDy7Se!}`9teM?'p7mnVk}ѹ!ȄS4X}Gf-TWѕ6˥RK4=|w{6( H?%kҡ;w-l@ ̿wpmŲj'_8w$HF%i#y $QK/@Dp24o-Mr4_7S PB&n(Z?In(wVFvy-uEo+ p /rZ5?cO8?xiq %,A`$rMQ oDY 4^&o.H2tOoT5?58 'gr?w3mNentRzѧJ{ ds)n|~) ,3u*돵))9aÉlnjRd}51d*g 0{KT 30rdTr,}搻CnCChY?]@!PnHRWW~lF 53(,7VysxcD8rIdQK:5`;8s-<Ǩ5N"#&{NP +:3cS C#[k;2AB^~L/p0FHGtHF.ɩr=ϚdZ%Lv1+=\0lONtM )~.9#V>;_com !V5Ƀ'9*,pT%z 9>`N4l8[wf+7~Id& EBtf揘,Swov%܀ -4ej<^o]wej.JMC~6(K7 sWuY< 23H>1k<2xT֐l,2 @"+.ktXg0AX:թ/qVQcI&X?gEFASG׉?`LB< i0fO.QGF#.i(3vR;?2$xoJco=&6)KwWtAc'|*4cʈ/o݁sBfݦ>"1&`棄S5zrg%{LfWGOF-;|JPX3y&|M<4Q 牫f= HjAet9@?av6hsCsUܭ؍+i36x W<1P/u{#Pq?QJcS-J+5qGd*}Vy)m IY2C>ZbC3w:kj +juWsUi[/g)3(-'/^Dg4+wPG iF*t@i 5w>ewZ6nEplK]ɵ v , -V0aM$>Ô/(2Nbٶd ݿ݊!⓴ZOE ^9LSWԔTK%R rnI^AyD$`'VxA wXj|ͤCvYQU9C*G.΂CdAEp&vE^؉cȪ?п(B'Ģ pn`=fJC=Jcrzf~+֍ƽP%^Qv#3{vy{/Xu}8@:i˹652MU}0~RMQʿ\X7}R<`1Z9%xɩ)Cf/Y(%P@\~2ew",/UZ1֟wFO}z{@>_QXNj'VqA?U{[/L2]7ܠOL?LR?( x+ιAPѹ1_nP}lzלPv*N N3z8#ۈG~HUCjca6",? QbIyx} I'MqʿiN͎zK*|4ğdad(ݑ#YtzqY._/mMQ PSļh1}׎A 9ʹ%VHIQi>-p3 )`d}h!;\s 89itHa*]6!'YjC͡aI_VV7,f $e9yqe8j"e2eָR:t D+*W׉I jll,DND{fZGC#1HoE% QL:48e; bg @I4Z~ vïf8ŗ4دQy<C4@F=EjU -^bLGJEմ0dH@kLhjVk3F=]&g <x$Jk:K42@ gݮSv.dvﷲ[junjpo D*hc죽E}.i#l1؁ϋpwIY _lx U<#B ;4 $qDs!6Q"Dk ,ZXQH/ߑK&Y18V-fL!$Nr\m~۰üYq9\5~Ƽ^.W~wذh[]G.Q,S" /62(D4lu{;%/f<y84NE[yf1ҼJP~IcsV>aZ<_7kE?mFxw;3 W#B3HΌ+%\6FN8Ml?2]SL)-Gr 8{4(䂞CmYt @w'[\Men8؋@!9A"wB1-^0k]y]&\)׹5!n-|HEY+ijqVZnC M"}o{5^/_Z=<"a°3 ~aE؃ɜlUuSK7L,T?TaH(@:ݵאY!`jrH3e]!sW_t|*t#k05sS_S|*bEʱ } &JdhdTK2a ϹZb6WO]ޅuq¦qTڦjKgH&1Y^l\W"Xh}si*eGcX/J0]sӾ]niO~CH?O-2qH 's<2LӿWB{!M=r١@ 㳵IcwtPa q4CTWYin'we?ưA^Eg-&^)D%}{rtiQ݄΁2%SS }JvϹ*_˯ .X&!=#pP&ƶ_(kY+>Y+K v qX%,l E=-ڮ`4.9kA8^YT#["qbo$hij8KI@v xhN6^SHUn==W'^>S kGq)i84X5<?y~QH*^6`:q_1}zx&fy9m i!+^c/`X&u-C>Xnrr>eByJ'(DåI]uɞ+i\pm ܽd~ |$^W` b<]|=j<"lLF#ӄ 0u7 kc- .LM\Y}$RW,$2D6eŽ2d̯ZJC+b|;~ݭj:c}*PjNۂ"(ƯZ >9P5u5) [ršl/{(!G_ΓlJ3fyZ+H)[o8BНXO;1M/zQ[F~fƶjΘR,7_wm0&m-w&yʬCQhҙP?5O(͘iTRLnQ`ЊжXvr1 F#FdazEMҥ9 P\ՙ6?XsMcX Afzxêpr5N"-0ȝPxri o!pHlqjrb9,+=ff ^Vzjz'3p".oMp#U[>C+}@52dA8)tsCw7Aɲ   phxS C)t&*H= AsFB˥6KfGc#埔hyb^.WP9u{ۡS4lSⓜ̥d֪1i{8nGӧ͆u"kql(AJXRozX*BKŔǗE9ϯ.! wej&(HD"=/ayɋ7yu. (bKe2[b5ѰaFԈTF%yu~2IeONKAWNyw} k#0EǓ.{Ɠ.FiVVE^>@SW`6l]NowƻE`-#`w*$I"sFwH㨯LqOk ^) AN˕Fƾ^B3pzO16Vr]׾Y^(yτKA0.-nIKhǡ~ݡ#㐉i|,L@&'8)Sb93;"7+x27Z ]}4(yJD+q*/"*ɸچ>=f:ƪlE*d^|bUGyUSڱ_)a(lN&dRsCDK .)G[&1LcmPsA3\H|)("..9r&gp y ~byZZ&0'P~;X4gI[Qr!ar$v0ZNav_lR_"P`'+T!Q{9,ܷO QdaRCFpl_k=(O Xv'ot|"SHx66"ʧNЯɆ." 䃤,pʇ!)q5H֘gykUIqzC6(pwJDءQw@MkKqT$Lcֻk.2qϰ^EXK { ~u~JSv.h#<D46ONwx8Gao/*Y -eFّ UCTX*~Ҕ^μk$r…B&{#8!!W ww7v|%N*tx6CpWW'Y@? ؞ehr2L=?AD,LU,_J-: oz 0+9 ;0i~q29]z\&Vq%?UI+vw Qk@HڦpVa"Moْ+xfe4aЂ6 }*QxLY09JAYѰ]F b\$|C8 lvKX& K@} Rb vvJs5Lga1 c*v_RNK.]qxBdw!%dWx~"|OSd sYiх`O/؋:P0?'&:bA9DwP4@WY_ wwq]&eM>!kQҕ ~anIGg,`[08 Pc'E(SπbaHVFm0&baN0!b[AV4즛(]YrBXӾ6 :v뢧@,jC&lkQ#s+H%5sCQpwxto'M_3?zM.cT-n|R-Ry >ڴm85.8#CN5Ya,)1m"y;R{?sRS-n ǽ=7ѩrZx8.#$Y^f'PhUe֓* R BENTbRf@VwQn;^w1?*?UݤT 혹`dL`EѓG B.*-hȴš 8%d8Tnu#E?D6S3t/_arHHxD74<ޜBKUw  WMDW\;Z9[q Q)(^>t36JhD~MorF"SRg }+Cf*LJavWxPTwE ove-?w,\FPѳ%س4LQ]V1&ٮ_/p`Xt?#|΢ l;ҏ.n R7͞?[!_D8Ki_b"ꫥ MOآnéTn5X׺g]Gp` 7/(ppB*bNY&#tidZQ ||.k"՗SӤ+I7]e;V5(mƆ.%58[ xU碎ƶq8^YS7dSO(٥!^UҭQ)y*݄b9Yнy+!Z[&Hes_iz'G.aAHY|$ D6|qb3a<5Xto9vvrT5@#A4r C!fz:4脳0wYpʥ):A@J|a/["T! s銕=!$7N)@wFRu;^I 9M m{iQBa^dͲ7iٖLix3i'P+|F>nrVDƑ] xk[t$ HPK(V-Hgql&4?B gw9Jي׏MTJ5S['60mh:df*Cj'&cJ7XFyuAŸ4kw0c~?yͩ -[υbZ .r?7L]a(8Aqs{=F:{oۡa*|Pgw}3ۜ݅iM)eJ;!"6Dچo9 C٨ZZ,s135xpr^38NZjfϞϑ5^/_@2+.+L {Nkh58$].l]"&1:nlNfB3'ʫfdypRo6F7L䣳4#+!irFk}C+_ zU`SΑ)'(WՅa|Uݾ +*l4b6 Jl['28 (Zy$Y6yu& jՀ&T'D~Z>̣uʿܰJ:{Aw: /&Z2ݏ9OhLQ^[q=RhÛ$;.04H-xyؤ\Ӛ4U]0\-K+8FC[{8PH+kӼph[!Ob5́M#@(нT&~a\ow}?ƞ"lB _o18#`)Q8fTqNB$u \|w BJvD)F/|%rKq(8v)Tɬ\wefɢjoym1FɗA*Y>- q&cݛ؂ F*Ae %9F;+_L؛Xi*NYk&jņdTjs^ŀXvFwƨ8+j.Ɋ:!L~'f, ]oB=եʑ#nǓJT wuZpZ@,?Ҿm1Բ~.veA1fuKmy:@WI,#~&ߋls.K< dFPM݋ύ7,T81 D{[J!/cणkNȖ+Tꤴ ©.zqh1HMٱգng\,(NhHق2<"ڰi€*)l\ |!?A}dqH8ȸX>8\5ڐJY4WzU ogGy;X57g} 3sICK4pYw  e0 Ro L'/K[hޥ-4/.QdMzR}_)Fڤ̱AN <(ad}]#ٟNP:bs9"E]Kl\!CII3|ߝƅKNt!LWU~V -{ԭLTLhsęΥ l0Ӈy;qN:8E,_#Br~P1/[5  Ed-}4-bGUHB:6wT?mA )ju$,g_Z4g62n8}\+G=E3>^$6뺺Z%sm<ej1EG/M٦YqAJe+Yg'_&uTܨ[4ȡ,{EQQ.{5 Z4uOfoW& SjV$XUPԩ,O Y^8 2%cHfȤF)"3rQ"{VMX#Sg m4z0=ʦeIR!E$~>zzk[s{h,jET;cZ'ۚ!9k3c3PAs4f앪/ krY?}A?FD <+87]+ 1Q~ljı۠C'G|4̲h):ؓ*Җ%"s~ R%_N.z rI g1UJP|rtTGI;sl!6"і+;>gŽX.q3Bm2JVކkj0GxQ2Cܺf5aX<wrT'\ GO7Փ썧3bd&S&Zhտ2=|a9,eAgΑ/M߿d5Y2$3rP˫Sr0&AdR0J,AuzjULބp G9 rA~z4>YP4dse@8(V, q 'ut6/p6e-!Hh\ݧ"T+P` xϺMn=пGPǎo+MArmڍD!A4a޹@EfdzߢԱC~+>@SЭ6Y6C͠;1R[D4UQ v\G54[egfGŁSaA!WJ'vLŀ,ϩ4ok5mÜUUYQ/G}f$a%PkTۘAvO3|rZr@, wRkKM#}Gd"_Z-‰^s pG_>P]nDQdLu4\ X J͞*)DBMr¶À}*oh 889!vsZ%K}5'H+C FEd$h]ÜcCz?bKcy?s@^O{\BGGZ+QI{xyjR,r. 6d_,4qeXK,6vD 8o‰8LcD*ԵaB=b[G`]Pꆗtr>ewfPZ  ]ZRJw>-jҐO2ȶ a`%d _v^wj4j 1pn;RoɞS/ٶN&Χ, I>J/ʥ֡d R1'u0k|w3|q.G ݊IQ[k; ǩf J~אE{ hڛCw$!&<\PZ] T(`BcpQϺJlYMErG?е`K/=I%: qq)4g鴽;$r/*osfJש5?vŤ|GI imo)FЮ njAh`-'5 7JV Vލ@0`?Cm:y8S.p;u*E'%ld@&֭;@ȴ[G}]_fP3cl_W\Gs'(%cA7Wa$byX6ʌ/Oe=mfT>q\לG{9]O8Kגw n` Ӻ+OMx*1,Z|7Zj\D&xXx4xR+7SU$V(82ؖ?})?bܸ-Z]=Z)T&@ \w LL>&en_eVJ>5ɀR#ܞ؞Uq*X!;ӲmswhjFbLJ3ʍk^]:G/jb8=Ô#G~7sI9`_"9hQҞZ*d޲NmRvedDjNA&_Py_~1^ fʃ/x8:u6 ad.($NCm5k4͕! ,qԄzr{S <+7R.^L}pJYje A q:x*?k"LXTULX , #w R-&Zj`iHqz)kK˧ Bg`tR8U UU d#)WƐizyhev_Sv8c~/>MH]~(;&ߌ XQםd)}Ւ ßHrpae~C %R4׉j>XcG>UcovLdz~rSC"S^zko^LtBΕIyt7?}s!46fgk4ԧ,G;A?u5@J#bˏL=0,z JoHfϪ[ " 8 |n\csFsP}rEEi߯Rk\ipbElZsJ((u-uBΣyf\G J_ M)fUcN't\-`KC"b%x}1ۧ[^Ɖ(p|pT 0ͺ7GfW;g7‘'^C]Ԯ%^~O`jp_yh'#ߙa7Ud* U>X_z`3;('UuΎ %Co.XvVIҨB,RLĆ ̰:@ԈIDC^)Q I lȮ pZ XfH@U`>B&yļ-kPc7jq5WB•((iE=E)e /[W^#oex%eV^"-A$JkkJ/pdknGav6#.oGrTWFP\$_4N9ѕ˧%&O.#K[ˆr_ ~tMRtc2ޯ~CoܮHw$f"EŌw/!e1=_ 1,8*>=2[C„1ּ]շ`YҶxYLǒˠNCjPDCri\t'ޡܗ9eg%k=p>fK ā=<"~6:A* Y{]l'"nCSnWP1G7Fs\;g2.0[X3ͱq91kPΔ>1 =IK)7Ed"JRxfZDZM{CHDC99L0a?rZ#0!f BSϝǠ3\N-6xe [ -~3]G zQSliJ87X`XܟѼoޮLh2 X/Vo~_-aabPHmtG1oҤ uMFx2^NS_qs6CL{h=n|Fl?&\ -Qhcռx].Y(˜, {}"B:#O*c ;b9mvYV! B:wU~ UVhfz[I <y7'*{#\\Y!R#7bXA8UN>ь.~Ip݊'֙7K +Zeh*!`VJ6<.:g&U7&ƚO F&=1M)W5>4<'!X̺qB0~9јzAx'׺F#@#BZ ͠JaUL8ަ6zfmHSIi=;c[y;J񫺸/|oQAp֠5\ye*rLikVɨV[$Fpړwx8F.B7dk4yYˬAmt$nHvE*4Y(8p%Z dG-|g]:W"t*[kѻVXTS{.*](To{tBژov9lo@5Y9 ƺ}pl,-jSτZV:X%"wI6p[Q$߆֚A+Z/u\ ܭʥ B}.'VǾA6!7"x^f9 ~;k9ʲ&{0~/)o|w1<н9u">OS1-7wbQUq"~PQ,FL[.q6uVl_P[ Eǜu<1=a 'Qzc&IJ]ޞ5H&W T]y<7la*cSS[Eqw0͛{6ig$N=-*i[ P3<^÷!AeiDBl]=vx1pJtmVf{ |D'޳5.HdrQ`ij㣩fщwY,Rv"RRhxF m$Yj|.+=|ZjsrǼĈ4xo=o#bOxZq"HAc 9'4/%%cAc9ʇb~E"f@30[DܭZ ;A#QQ#xjc#)I5=r/DU|;H_/y'9E%xR&?5wqp7[ufӤ@0Wt bdޕ fĬRc=㱒)~IħȽQhE'N; +GV ԍOaX?ҙfISauEKy{pC:3J]?=2Z 1C&U*o^F2K^S&p3=8~4Tm8Fӥu~_}On3h(p21Up@p=5znX%hWWdvIbz 葘 <ռѲ϶Em7NSf rĵQjB̛žsl*Fun3맲rRTjdV^p3'ÇppxWf NCP3?uΧQu;{{4j%bLwa|^U`av/yVS^m5\1šӥSsQչHX5I곟x],bbi9!$nh2U= £Tu)'Zc {|a[0\btJ! Cݑ:OD@r*\9b(wT}?) A8"ЭK#M=oWNxWWO)8Y]"y=tP{1u{^\Eb*'"* Z 7,.1E KRMٿSH*_J'O!PO5ĺXi2v_hi<>Nd(Tkޜd:oˁ@x+|h7'Ell8/f8F]CbHϿ:ŌU;Hu*{}0C㝝QvpeEx|Ty^Oc?Cdɢ5FVW,(Pe4‰Mfyt}C+2{VsDJqec+[@ԾHmIMhns:ǎ=#>YA*={EmMT/?o_?_'>q et0E8{tn#X4*d+IUVÕϱ6q֪'s0 Wp*=hԩN{6q 2{R2w\^y8:{<ZV3 C Sj lI㬜*@+`mJ{@8 [*5 V>V!;J40ٞf=D[W5Y/> #eZ⛷Py}D F߀@Fe1|Y7bAC@*mx.?> d7S+DX&҅_V#%:^1YMn]kF5SIBVu:I^ bŕk>ߡ@[t.]i6Weauo8S,A-}{)yHϭ% z*ۍ^F8;[ǧ)"+רNJ[PVICga| LܛsR6:b_>kۘ;<8l-+8pWp|!^19 4VD#'TBmp%E ( UIo<ʄp\&Tr\KUifzzjO㝵MI@d`Q$JXn~ uyKKMiO)H3~<$mhoj/V{<:||+XHݫ\0 ,ȥ3__ڏ)e r<(&:,ŕhf0-zqz*r/o7#H6e'2'|qȚħ35ih9i|D לԎX[Ma`Hq0Ә%<3so"$Zv@:O}rv͖ᩯrXVdݑ r)a]}-oaP*6e(сl$>NF3Ff*$=j ujCن^;Y0ߕ|j҃4vˮA J 0WR9t|ٖ?LXyl"[N01_i_yS +rEg 1H ؚ-ij=qCVj/eYp-sғ!@&ݗQCufh$<h ˩zR=8m?;iFlޱTq( ZTNӋ+8Äׄ;N0lVp e?fvԠ+aeBg/iɔ c"&8)uRF1/?kY$@ x!Y d۵ՠbdER_g w,D">g\Qf0{3Z>SP>ykPLTψJu>ԵoS(zFӕ,7'Df]㒮S̊"k;aK p<7vbsINX1=(6k.noLK-_8HdQlrrxUƃ~2^"&YGmǁ@)w*ִ4"LlD^J{(f^7sޟW Ӑ)ZßW] j⼌<:4oMm%u+ŧ%'q\/yRaP:lOFyJ nHyN[qA"0E7 {ܚWjT:Rt9ӹ"yr}k^l7AUz3|hN;^nMZꙋ"g}'o3o1>{Q,FA1 m>Kȇn,kN/(WK dwh9)Ebb{`1fA jBOd%\>EG xȳHV2~^yҠZT#YX3eXՁ˪޹M]nı$V +*7\Jnu~K@iϽ9)m?$>m ZS%&:33iOtC΢m]ؑҭ=+1YVRX%$h\Ek 3Wgac8sky5.骛#%M*BK͈5@$\ka ͏c[zmBz'@Ff[%SZj 48>tvD:øL_F& <{=*-wC|7Wu͏5)5~a1w/m԰5oZW-,qx֝7%*{XZjd ܨ5Ꮼ4pp.n?\=XR2f^Q4?Y/+sx`'շff6TJOE lKX&ӣ7YF1 4a5c[`g%=S!)>'̦HH%́Cc5 q3i5/'P~u.C-NQi:eSNhL7F%: Ƈ$k.(mخtʜG`]M]4bmWV\k"_nՏ-b›ĦbI^5=Do1 :8IK.n2!$@KFFвm|-& ->af6,uyjIuH1 GA4$oܐ,%]$0B]MCa>9fsw$>ʽG0<7kh4愢{6n`5wU K6Q3G{ :Cv g.tP rHpE>Ti1JFA an',bB~)ei[ rmׁ8AY*ԧkEY"p+m>@=۶\ u3VY"9n f>YwWJĘ^fjd \5"*|ɛ o;O gZJTXN0wNԜUb3DT$Vl'{h[2׸xh6J5sϯhkN|@WN%W'K.wx՛n-;J,k|u ceK(XrĿ35~OjuI~}nuG{Wd(C'U\]ZzH( aRUwr F9b$,V^}Rx|=k'CO rߜ8DU 0$2|ݢ{3m X~`6+i~?(ꄙu{J8 Akpg3'&NR}ĻsD(X\Lʾb~NIn āupA(I!%VWB 3g҅7 N_>/ӄ9>0-sp[¼-+Rs#ȜDDq@+CMM% `H!dH7!Fzlaf^?& 0sڪk;=nYߌ_~yDrjb]M[b!@bnMU<̍\~%4I6 )I n麫b'ശq|U2[ӡ+@;h>މy>n+tѐ8l^ }̌jzY.uWxܴ+:#ZbPE8L\()WĺUEY3UcF0}[9ѧߡ- \sz1ɗ|J1!0NJ6yߑ6 N`8U'Dșy[sp0V ZLa9Q")(GL$`A߾_deu x`W,%j|.|^VFв['5k~&j ODxI`̳k2\Ġ|LM=\q,&C:6,b)5C2(m,֧w:Q&C<mDck1 J6tq󴹏rzf49UpV V0‘_+RkB鿜 qL⍡c0g{/oZfab@xze(x{~ʒ˶>q/0vT+N {Ƣ]}5]*_0N+!/ah^O 8/>.Wܧd NV~?ԳR086tnqQL%~,>|6I08Ѣ@8 Gϙ~$'Uy9rM(.}xsYMJhܨ0a!՗ t],jY`+lf^Xmnu",-%{*Gk4]p[4@_ Jc PX/Dm捗Fswv)cC51"vI/{mE),qkO ymsTw6a03ѲJ{֟.гg@mpUOL~;\#MIg&ϝ2P" ˒ѣ{p^ciMeژL%>w&4zbvyl g۪:1ee' 66x-YfxǔR"`AyV `8hTK&̄~b SqodԾB-/VLr){$9bjʨÊG@ #hCs'fmt*m[vO Q;D­-T?c?$)^Cޙ CeW=c+V#0Zm2iЬ[E[CRY$('r%b#3J#Fs^A>\,>e&>yZ >V2l2a+"ʶۙ6Q٥?8MT~0m^Y,kD{ wEVǜ w- %ú"Y[(죽:|YSgv8c_2̸@_0uG25y9< GD,rўtMvfcmpqń󺧱4/^s(K E7q}^W}iĪA-sOp{.$?> BR4YsrE:qW7&*BNP5g)}Q, ry)L .tkЁa/l'nƊY ZV̋ [ty<r>d$O\:̪]X-*֔ בcNt(#7sJ͈ǫC}~bbdPz:"^|2/鱤J+&R{!PM#$>'r| r>:$KzsSiIg"i?)oU3-7[/eXo  jx*tu/00-(8{ \o%aj8*Ha{Dހכ:D_ J<4 "d5#bXg8ַv[z %۳L#;pB#pHrPOy)- Gq]] }8Z!ӆmcr%fhv-)^.K՚kCZg RЁ@q' ^29[ ,,uR + ;An' @So}P6>_q(N]Z$֫-GɧdUfTuI&nj0Ú^c 5fJLѵ߳MjU)ttB ?RZMt0Fy[3 MTOb8]uҌ8ƩWoUT,8n Yf(v!>AVd,GQ ؐkxh'u4bPb(IdR,L/=4DzEypJadcydUd aSmG߿,ăB ja=Nu6R ӊ^/eP48-Ftg@U*M&N^,fwdzA.Kr)g'k?e>ȟAm A ſP])QKԳwFDZnm78Β*vgի[]bo6.ǻRSKg,y(Jׅ#,_9 y'EZ&mSn |^ˉYa#ñWPV݈{FPӑ2amRHAϽ^;5/bClhJT aT)o{xNuӘA rAoEXjlAkhh2A߱Lz{i>#.le@:-#GvTX9-ZD嗤]w r#+`.ac.C6M`l)" 6[;]yQA#WYLM }{K!ېä /B6:o6D*H]EZ㧏i=7cS;P%¤cGll_pLμWIO䣺$0Q7-Sݠ rA\m+,ۼW1ek^gBT\T:P5qi]'Nքŀh(t$8܉%e-- 2K֯0Jٟ25c`pW}lb9ou\8Ն;8_q^p j-kC5NfoA4{^e%*<\4emʴ-<.yZ.VCME .)6Gf.NBv$}2gbpw>% ^&D!|ӻ<P17F ^#0aA|Fb'HCٗ@!ʥU)o&}e똕WbC1𿦚M~h4(iAȂ@ngT9?zI*LlRY;&| v-Jk 6o? D'E12hjMvK^"J'E5Hhri*$λ $2~_5/eUAS&4CO__/E&F];FPBDmw:HH*֧0vIk;|qY . k |Gݗ2\lJG6A*J+{9]8SEpBTV33%qL~ 0Ll;2G: @in V']/AZ֑ɔNU8o7'si >NIy dO p/y\ wq,`?ez \^e~6(dhbeVA2A@e[,j,oS8Xo乥 D{@z/-ŞV+-s*P1r=!vt,ф͘ Иu6$q2,D].F}}Y OoԽ~/"Nx㷈귅#1...Fk\>(:q n$(-bQծ5+FudՈc^Y?)r@M? E92H` S?’,x$W=cΓ9*ddBiGse}:46N܀kzq BY4wpUY'(LfzKbI!3@t;!%O*{U3И Xtq!7?=*륜4W6~AFNqn7/p1lkR^W%ږD(it983juW=y pE&x_ӗVwMQ'/\|,,Ә3ȪY<#N\GsQKFeH1䄣X]+l8c~ _lgWA_|+n{z¤YTuҥN1lIʕGdf"TvJxbih$=;%OK<>c[mћKߒjO., /0\eg3EqNg(4(Z<[BK-2qBٕ lY|B^{9&8͏ g:O)PhkcK7qhȓNӎrSJV@@_)XNuJL!.pq9L>sȣrp,~z~1 ~¡O];kHбwq1 [0\7%kK|2EZg=zBF]{>ǼylkfX_*P>bR]>t\Qתp7K (=Jz2i@v`P3uo Y }}DSM{.q:7)s؎jDnd7Y#LWy5quČ*oTtGP ?Ž}r,@ؤ'sp [hˠ_ވlSfu YySW$L@ʮs-.-܇96R OE:~72-*~+lF0!@hV]A8|Fdw ]2;fi߉ ^+5/PT<^nN+Ԯ6a?6U!1I Wb8}mCGzY/YS>7fa3x"D\v2#Ӏ ԹV?~i۷Q%K^ -?]b<{ʿꙧdNץ 1ƚawC D4: |Z2{q\ zӵ~vڣl41%e81}y1MQ>湌K^I{ ה<ڞwњxd6Am]qT* J_wG4[/P㢜B쳡Ii2fE|V(~u$dˀr_1*mZܘF`V3 =- 2I_8Y1_-<آI$/$N满z &{g>9\ðL8,Ʉp([dU~L$_)-/dgz++*|'1>G*ؕ( /2gq绐Zl̾(ϱ WKb@"z = Qu.VMh.WOmݬO0Z%H`n*u`PC(ch! 6ʴ;7V+-J9ü=Cq |_q7 x9χvc shr']w<ξ&zq7/ʸX䰝?+AaƯ#dL2e }8 7P#'nsoظ7L#&K6:4I\Uuu{8$v4!onHhօGQF{ZFqh|2r |4lXw6jL٥>is0 @*1Ե>u$9MΞ d e6JwoSeY( |(uiehR"}1Ԫ'c?;w_`Z|F5jϒ+5`$K4Yc(_xxPQdM &މEňJjN{)nÂ4~vgwqV6PeF_0!|o !vDcݩG"`4`bHŠ2"wN[402{O` )4~&&{4 |j1~hM7ZNāwi[,o%:c~eɸHEƣo4CE|cTaObvһuF L>DJ &Unu_ch4glm&q?DĖFq`@CA6"͗Y@I Q{K Ӿ^\r'Gr6,SU=NG,lM$ cp,+7l?D+3PWO&T2g$mok?$gw(zW eo1DaN8,ACx/uFÍgt'W;(~<7*U4J&Ke% Ww߱[|vp X@KFY/B+7ZK F%~,[v)_o2\ _J9|4%C͈J88:t,)_bCxJcn0#АM4eǿh%lEحJ6`Y^ b~.,](.S@#HW-U!>Pp )tCQ]y  yd CsT4VZU΄/wP`S 6B"@M: yX߾uy3ߦ;{O*L%Ԟ .=rLqg\ -W,'-! Q3{iI+ B9gLJQ=%}o  Z Am% \Ƹ/@s Κ EUv&.1gpQ33(noQ#h"'~|]4lԮ. ;?/f>MT:V`9\/bmM@ ϋtD hg {S!{}#N:s^B,o&\LC6 VUtj,d k-co޼ZrO hDzCiO}S7'Xݜ2`'2 T"g;y*Y4ĭi@Y6$M~,Hv4 BJoY}k{\^^T!zւ1Ш˻: }Zl]Um:-GaM+ Q(/A$x6۞؆w'6n#l].=b* 'Ru8ov]i[(}u$sO=-e|,ί)G48mCE"u迅XC8gj 7 Υ {//_-O5Nq\k)q1d|i BA}ޤ} E#{ h if~'X5pJ7RTXWi7z7M И}"}@лX͠]hSPrPϡlMm8*(;c "b m=+ "uȝGL!/~Hl ʓ.z BI+ *PSX:a9tvT|6b|-8P&.n]\ZI[Z#N~cQ& ORP蠨X3_|F<4NZ_@UA UjwbWU˖Znfμ&BbjBl6DUjb2:uiiegx3>':xLuىַȟA6>ܡh|}$"(>{,։X#"%<&w_oaMrE^e8 SQ!B-{Jk_5?CC&fGi訚ɟ3t5sYϗ!hIⅲ(RI*{^@āK?{9ۥ t3\HIA6=iЃ @(ي=uV:n/?'IZwѝ|lZoPWtâ}:[<BS&JR#ީH/9ݼ 08=E.'.Vԍk銠5և8khaG2ܳwFFZԃ|y ſUv~wYfdJ4%nݼJtY —uH1ྲྀXiFI7-=$ tvarXI6ްlA g h)91qq|ljf@(@?vڧRLlҡ8'ilœ}_䗗Q S񽥞Q[_l&7QFFMf'rH>a r1~x8 LŚm.%`Ԃpvzs`,V#n`dނ;'SUHz։tqx]JoGxt]H|[NV]cE\O*WVW]3Q9F d0k<7+Ҳd>uE6# 9ykw,jSxbC'TLN(fޔ}+"$]AO=l6PgCr& ;8#iRS(jt; 0R}Hȯ:wEp`je V#ڦ0-Mh$BQ0i ;&xb@41X?710Mxӛ YFɗ؋n[oDѓgSfz4!ݤ-/aLxdBN9k)O3Eao{ϩ ,/vW0LY .JߟE WKfE"0︈[(:~aבt@hޜf l@2Bzn+e v.X:~)?GdTLjI(6:tO?ޛ2s΍Ǩ E\z{Cq1/[O_^!,_ʪm0ѳQZpXI 1ڎg9S9Y)>IkWf8%E5?P!C&q9JFEx`1I4ͽ7NH%lv >[^thmR+H &?)YcD Ӈw{_Gkwsf]!-ֹt{wC_hP UܐlIY#"AB^ɪ.P'm[ث 2`U+vRЋsA!zX!ZF}TD`uU20>vIQHLye>i>R#yF įpv+#s^tZnmGclFO-E0Y%0u8 .2-I" EB@LYLՁqX`G6EVDXш%M7Xs&2kfa]Hs"yՋ?=U*b fZ|tt -3uxE}眄X4++״90|aܡb PbNwQʙ Tx*&A}&K pW=.V± K9l_rʟ|]*eXG6K kw?rn )n^4A`^)@PU8Ac'B,qZI:@ 8+cb bO `7}`6A[sv! m \WʱVvkw$ķ?_qv"-XܺݒLvC-^R_U,Eq/vTvt qH 6\VSVvo!D7(;͘xҷ]o (GjKzA ˕ȞN{m%tȂxb(V&|R!^WFio|=z6.fTt4YVJф&XX,¸%qJO3, 1. ؗԆB]S8x?wy|ۀpdALWUb)l6MÐf!NISgVwak+*AS4f3%irJ); <_[QS̀rhtp s\E~ _tM᳍!(ĤR4fxIIT-1<~V͊^6usֹbDߔjm_u#*0q~ٙU4y(*GzXHhbOyP4MOOROAe 9Z1ߒ E, 5ڦ~"ȣ+s ^Xl:dm}A۳-,S,ZN HKp13JbjeSQ-5sΦIk.8Ӄiv=V ϫE up|Kh3G2%1A\x!uݤRj7Wv Bm}I諾4q>s-)E>}Omܕ#/ [o%?KdR~)#qruA8ׅ/|: xY݄ޔ^\ed8HԂN< {sdF<|Ee5W~8![|~6jOL#,Fj2@+F/02z{\R6'yҕq<˘Q).yq;e 飢2|YDUe?y6ޢ QIӢ$m{یY>kě@F#)aL-: O!7TEx(*Ɲpyi ŒHIV2wbYӨ6,\hiz=e%ٿr%ol34b BcYE!9Z?{Bt̤{AA='K'b&vǝFva*2CJ۝2OeNaYyvsKI)EI4)8F;Ed= IB;\ VX2(RR$?RuyGfGk=K܁tdXi@;J1n{}!f*xwָ2Jyø|!ݓAxn2QK&U&DR dPtUD[cٝnQűUXZb0SgJW7a4ndY{7\SH2L}7A@a)/HpJA+,ѫ? #8ȎbP6a!(W1ci2ɗe)vzΰ/Hk*Gug (G2ҪM5 b5OT&b;f:(zg8aogp`p&_ =Fetp)y e#D(o@lp0w"(]*?ϕ"ӝ%~]~'ܘCIcz~,~ӵpыxJ_KU{1CibV"_5)m,Lg *(&|xj`|T@B3{LE# XβL;8G$kR!>5';i1 5sڪ k"% ;DA2,,ۚ+ᓬЭEV*xm`^w*|d;]`aͲ"Ӫݷqa#tiZJ(hMYp31f@#hKYʳĈpNe7\=?8T!AnD]j5h)ZغQ " j|`(h9`LbbFͳ5QhZ/wN]?Ykq8үb6\A񑲱Iͺ^$䀫F3ߋ3eӝ^b׳nVPp*⵲P fb;b `z(MӲ8IPɽ sXZc[颥;~+aIҿ3I!%neV|kh|d}y>*_PսH^:ª{l>܌ƐXw#M[PCtܴkm\Z2GDXw2%B -$ZYY(Wvz%z͆0^c,C|Nsl5SԲ!]k8ęyx(ՃPݢu'(Hdʪ9)7;W%@mn0#ջ9iƠ2dlT$+ُ̠<9y?b`@ Ia' uI(DŽZ#;*?Wxd`[3qo \+tkL ;%bZ4gn1A}KVJ!Egy#MkL@:yjtR6/] LHpxk)!݉y9=L,rM*HѸdXD&Ao;BKJd FIh>[~ТQڵۚ28>NbƲCz'"qf6fAPGO36pk.VP]xڕ|:3|_VZ2y(44~5'g7ߒjDGybyX )o(ƞG+j2/a`>%v8O~f;wyw 6% aўQO]0/OL+JȈ28LM/}#j_FExKl f%xx@$h;tvIp;G8Ϊ謈=^z? usSG8NYk̜>y~u qxpwZc"9}@<^-^JqOތ@t2l>d1I%4oNUosP7LQgaഏs ?둘U l<*(#D pz:W?HK/`rNH#R?E'G]s: @Ԑ9WC*kp(rScdqhJ E?7L/8tJ.Wdžt?0/㊽ܗ.Eaȓ^Z s*p)bw-~+WqEQ ,p鵑r赪:/ãh!46 a$3.n<& ~ Y|ėk" H)U>sG0 ;`.!,ȅ%['ib)?Lh2LG<Zlv$~A)SHOFk,EFR쓂o;_0_s㹥L 7%LW| n_K5`ER-red!q:4K$=..53o1Y٭5[yoZ|.F4qjE!'EDJZ&txeg"Me-% y,uf<2>'8Gga'sB"y nG !5C"NL4DpLJ<˖7,UZ4.{?K*!Mȩ%Z@:dQ]"jC8M2+}yzHٌe]z.-1uR+G:D BCthx?ЉKHx|qƧ gba6DA5bw> I<v(9y}R wSQS EGH¹o% 0+lV9x\<9ׯi$w5٫"H6ﹴ_3vG%ׄj^̋(g`TGqFbսMtWj?P5xFۊ܅cNW ,v4Ѕji}p?I+Yޣ8ɵ89Y|eqD7e@2JCOW\oSו<{m nq( ' 'fbY<\j$csEwF5Z3n}wޓU%wD>9r53n"< @Gε+92+֧# >Wܘ?cO!p项? v72g0("[qrMRi4ԧ9+p9j>c9G_gBwn)SY~v(K,×XhڜQs~ZMl$fߢHFE;E&2[ww?X Sr؆5},o+z1*=P"M>bEӚ/^=|_t#½Xx^aE@^΄KhɸY=+%~c6 !-*sAJMA" =sEЭ}S2F^l%J_ P+\7/ &e:O6D[GY9בtAN%iJSϊ:B$ꔿ'b6hCV $|H: ;F)JBksD WESTq/`L/{ Km<y0ZTk[5 idI Q] kU1;O_5x8Osrmu/+ϧ_9O03<~2N;FQi^nř!vneEz!/vXQ@5$ gP`bfsϏ{h^3Ki : {Mi-j82 ˇl$|uJßWd7e{)ŵb S)<-t#JU7HK(RkWע)Q2$/>pc褔5Y@dia?\kQTnnea1凍Ñs^q:a?LZB13H y;ahۍͯ C;4.%LDntWUCxu5Ȫim촞RntvHTXvp7be<'=}g:hpϫI^2/SDy7iø8>Ǵ,%g~zǝ^@//yc4M]3'qm$꥿:(Jl#mEkg<FEuݵ~ʫ驃t(P;1Ҹp6jفLsdcg//Oqm" j-Ee!JR@~b$| g;t6E%GQ+EeG,Jbt>7Oi> ᠐*Ͷ)="od`!vĦd=^ؕ_Ng-Q;;Rv>ķmACVdD.~ zvwWAddA_k'w&9BT9/X!d`K+I_T3BHV_(׍2h1wg BPn"J'Δ&Aw˫iʕVސI _rǂoG!!T,=NYǦ?|B@h0R_o2< ]6PP]|;u+dʹ' l+Hh 4٥Z>`Q" aG2Ʌ}$Ǿ/NJxY3N9L&vomVew+^Un`&oE=b>Bc3Âct\淰'%̯t*!\,b,s83C;pil;W if"Av[ =ը pt~qmW˸*We3T6ۘ1?R>|aJo¹s0:< .O7_L UѱKV[yثV%aLnKy4`Z Y[*ٔi9[װ6Q>ҼYVK  YN5Fv@".P{R ]^z&؇ɋzu"_l4ֶ_u@'>knُf)9?pDդi8Zo : H녱sb>|P~vdw>Đ7A4ˑ-:*-@ &蚴۞oFҏ] Rˁ.o^e 19aMH (Kڭ3G$Ξ(n :5&a0.Rѭ"4M?rqk Q Ab nIn)%7auoǒj8(dGwĵ(duKOȕ# R]~z׬ޕz Yp0)17 'OQfdjo> nf^gݯHi/"[ ihgp9\}~j'q2Xa1PUפB32g$W*0̀ɂ|Fx3ٵwNVotpw~U8‰j\2-hi:|aWxaM񽅖h#FoJm펝c05a:[ u>e@%@=ݕC]q óD+[alr!q0qv0+*>PJs}[hp|9f${{O/*ij1mջ@79r=RNG 4:y| e@Gٙ㚝+ӄuVꆱXNyp0k Fxp雙Ya # ƍjo_DH.Ոs:@SLaaӑPzYS%ZQ\AY\5Lɉ18.d-eI"d2wH"#躟wڣ̸ee $.M@Iq%dI{HU{!X[@da#yyS4ᝀ~q}+٦%e(?ï[M&ߎ.*7\[L_NÅ۩5%UF= G9h9BI ϒ'!)G&W&+fYCn6mr4)C/r Z?݀zP,Dȍ/dcJO ';OW)3ܻZ.JDbu;.!f;~t\xAHtt 6rٔl-SZY GPTws \ Qǎvl*w+g\sPǴy{O&!R"h3Ў.#xΞ?4 0&iysi ?ӱ ֪3@#ucThpǵx+KNGݷjϤĞ3jQfyA>`^ VS{ͬ+_T$=d,:Q:8h{1Wn}ܤ ujunx<CBVG ̋3:QJ?s wߎoMn_r]gG/,j#EW2_kP#6DҮv.~(^*~'6Pb57?4jzH:qMɔ0!𝛖ÄS^򲌻߇uk%#Z Q#fnxqRb1T[0i4%9S:hßB_Yhpa_@3ΐB]Oo:x{vae|a[WH 7ń~:dN[K-RO`*n4;regutuRl5m9qXtEoEOE2#R i+B|#%TehR$w<gm8mj6¡ZfxAMk;(]IīH np= ZП&} -@ 17n_F')UZš*{X 1{ D#R|)"kbbojخ]B͏ob] c{sI *o1bHlf)2wvHf $"NYmñWޛeh̪XX6I kUgr".u (\yP@*0uES-/M}}FvlLǶfAQEc2Kܨᴴf$`[4f YDPF3$1mڝf?<ij!6Iɮȵ`˲z1Ձg"J)ᣊCau( z3<qQ~Rа݅5?ԑ8 9ۆƭ*{o׭n+LWPZbmrݧO 0Cޏ k?4̳!9tD052o"޶$&r>ˇ]mDɦ|kbq'[2A$ȋ1KƼ> XSדkQ 6UXg/])e ^ߠ#rEkɩ-jĜ !dq(/w-+729Bv/'~?|V*pPXk!c Ģ̐(O 5ÿ~f2hH?6X{CfrnJJR)NăPJݨ7e>HО.#,&S# "}:'Zc%5%Pk7KE${VG״a 0ζGD]t,t6>F(Dނ@sϱpiC^hm} w}fY,J}$ZS5s4{0u%p{P5d4";Z>y _ya awM6!n{s 4F4Pٲ)PYZGKSDT^?|Zkkk#EQd7G5&]H}9ǺuEXmd$oO?)hqvKvC忺NJ-.D\^B4_ZY*g~}|n0v=e:ʥQ7!r2 ]}IES8u0/$d Ɗ]6gȂЭ6&A aB-RK ]i|טM169/GhCҝuhoY&5vC }r"Y9A M͖bQdx#u\[HuXU. =[ nQ[]ˋTaw&F|Zx쮛?æK-踡g"5@,x5+ZR[mȅՙnPK{W 8?Rz#_dCȸZ/=#Ug~P:o\"fsK mQشK zggZSזW»]JX] *1l ~$Zup8ɢtzpF >_ЂG~%Zǰl#'JO"Ks:Un7,Կx4ܯIWeuO킸nq9޼±NHN챜}#:q'AP=˴Feoqgf`#9a ^l{|E~O]dz/3Uڛ`5PƥƜy|HhƢUJvO5\Z⻺3Ȋgpװq[EOe\h_r^lU6 'qm4 67:Ym \n6v@߷P 4  kK.00j"uDn*;0Em!b>ƿ&rO?C㰱@)aFyvTwcKz5B:d\SՋuHF]Q4k{TtOtWK<$L"o+0.[j\iNnv|c01ɗwͽ3 Cɝc# O{;]e ё"Z$h)"7-AmӣҙJ߂s41۝ D&sGD. +<_(5_`D`qro:?vug'6.E)-FiFUhU09cYL_#)h^3,ĴsBFަ,.sE]YK7)gkPopTFGx9C?(<&tfn uDSDJzV_zA [HE(BX.c[~ntDa ib]GὨ.HE3ps?WȘ>+YǞik^R>:lH \EN3B~"' Elдkm@5Y\d q{߈l~+N'pUtB|⚥fYz|M':7-Q9_~-O)3!TG;6m+oIaIEdA)C84$k$e"*Ms7:1HЙn%̓NaVHSxf!d66ٱ1o%BpT@ML'l%FѴ^YAm)eY6~49"**熑Xi?ObpD-,wM!_;PY#}~Y?m **pk∱v=۩gۣA?Lse8 Cs3g )TQ;'nsȰN ܈+ V0*:5l)%/%Zn2q;fyJ4C| L 1GM<S(ȿ6YR KSI"Frsw@ 2"rA Q(,!A4}Jq635LR1tAZ|4U@<{tMԄw :(HH5!D-r=XdN rB?icƍ}LfӰz)G@ j0}+]i.~L}{jJƷҤuë]jDS#jǀu()8iǿ ġx_p' RBtfndo v;Nb7|$Al5S$0BNa/e``AnH]VndN#fLL5)~1~-Lo7"`#%lU0G%H!'f41v|L91:uőOê-m8݂stre^P8MVd(()/.1`FN*aY%Iad4 \e}5#v.䏍^+Ⱦ)hF gؼ7 KH$3C+xm 9 fA!+?cMf8@xmVmF;irϚ8bpi)4i̾7+YHqO{<h”M<,Cv+kQ%bo{N[r"Db!o]an<+/quuw˴!{xC0kvӎmf [C˄F1wP1pO@xB#W EJV?ʑB\xw Q~x,ulٕ ď:=Ig B3u}Ef3/w|s4R`һi_.2'r^LNP=K'(0@;ϭsx]AAPˠm ">]ӳcŠ- ҡdgCaC>Eּdr^EϹ=]8'VHAb\xCV6U!!"HQ| WGlQmm=LPH7BzԹ$%5kֻ xn 3YEb6~D^=+> m>љp# GGRp̷ds<0vQ/&;a,TTZn]fC- ~)o{QlL/2;lUۇ= arɍM 忩v` bl̔t?WV_Q@#ԃ6j.h:GS7cbUμ5hcqe1OR_O+ϏѻEP[hZt{C) @\'J()@LA|33Mn#PDɷ%?<¾-e75Q@F&:=n}S!1a;q]Wsߛ~6,nmY*?UmS~)j[Y@e{r>QR>ppWKJo}M)U|{C3?\p+D/ 9 tܫkd&f \cX u8re!k0̅1S#!"6i?ss / omONnRpV Z=l0<ڡ*c]-Ő=b1SN7i3`fczlwƒ|{p+@cR; вpM XM[K-%BdY{bO = YR{) RIx>O<OE3@2MXQIԮ5h|6ha4zޫ)3QrXd<^C{axzD]t"XwmXgAV~,7^lkG.Ǭ2E/=|r2sˆmN"?n耖 3jvOwFB#5z6|KͭW:׮aOd6NBZfA:ŦX@¢B.,HŒ8̪D\@VUj~@rH?d1s_l2]&F>=pJ,*1q$|˃9}cnH7bJ& [ 9I-rbK ufk=6昏#ixԶmS lȓ3:N:U~<!Y'/H9qɿ_L=s2-_Ǎ[чtݲ&I}ƁA\?9GKEDԦ3zeJ7z%؆D0&@P2[b"lW w0F5fSt|(I bʃb8#jHc]T=&OMkCc%坅V#A 3! Uj_A*f ~ѾU~\e,*ȝC$V>ZUcRaca3^}iM@.NӬ Ze8yJ-+x xgpJ?86m&x3|0 I땘2r }" uFc:W#Zފeqh,Wh݅]s'- j0R懩14WNj+FoU)xUaݕmUbuf_&>a~_H$\)XaeCdzk,2GY4h:V-C%s:2s\c8+"cIJ<;Ukm^il#B:@[dBa(-E5OЅ5wЏHĽP~q= Ų)~'$NA c)kL!ҎW'ْseCx݈'F7p?hYl Um=q suaʉ2szk")Md99>Rγ~_CIݱ@ R$ǦTf+mQ\2mgr;Z!1[Qūc҉/⁩`TXtQfC@JfB% {#U%EaVZ{gq̊/Cz Udo[z;g(|= #]kQݞ6d㄁ɬEȮ5%ϕ}d10-C%$3 Ƭf8sS O@`K0d k}^< Ik "U'd븻HM:8 ȭHlx2$_j!h d+s'R~m sE?tA3:1פZ-9}p˵@25-GtP;w[4F] tGa}j˨>xGµǒ@ٱwSY!//]Ֆ@^vHbBͥlP&+5`T'\D{>,@Zi `@(D_U8=kgze!7lXm hڎTgr{-]Pe:4BCt JΊwڜ<[8@H nkw)23NNV}rfW{9Od>jQj^; "&5)Z8 uH8E%w3ER:"( }yy.O=d/1+)Ъ=ho6!lgi}GoxIQ3"HT!A+uYii8*Ki#K>r`!]_1 Xrj$~íG*a?aEf{JEGcN5ĈiaWHd/q5_ѻ'Bu^!zLz9И쫤%9ќcaOUg++Z%;G[lej7Gzj䝏C%'jkr 8 p7FKAy?@"4>"Yj:jֹ!bŃ+Nk;n :S2Wjv`þg6/ "QN},G~01& +_NĪd6?)93)/کđʠm7/aS(UY|nm(!_&uن>kU} se@⭜bLU'x׌Gi`GsɪK5_@wsk2˺RJ}"q@ǪE#Ī#Ql*;赥l;o5kP'ǹ:VIP~sJ}tpg 䪒a; L j= z8 ѣ ?\dWpFBVW4IMMYvkVxQ㎑X{=U{X9ڹ240n@c1x`̭kr9"#N0soQ%~OmQPZ) 1/" |m+Xk(0dnL8o3_VPҟ <"_ H#:FBԞ-MN{yb&ѶfKl VFrs>{T3 {c!TvIOHhJil<9"%`y8rax/&z&U"a*>oaOD,wj{.I8XЅD3~vӴ鏛iʷ$r[Be]R8}{g"+3v~)? we՚ȠHύ{1a',yb6Ls=&y'=&{cd< ThvkDN .>ݝ >W0!{AE 7Rh7k}'v-́ ?18@=nV U )bɾGK>5-N F"%81wNn#f܈RDE>mAI2Q;&zHվ F.+Q_/&S"b,C4Ř}Qc EypRM.&.E$ѫ%A,@l((OW-9"Hq?ȔՊj+sqnLgR Ow0E@JvK ]s݊G3=]dF_Gf4pr}BFR޷s*Y5.Vg=*yR8U&qcLbX*ylw8&\f$szvXWi=H%^dzR ?܁7`7_5qvaZ%J#gťZsv ߧ ˠg!ic5Pml3oDl>w+fNj®dK> )l [p(<Vq(nr 5TJK_0H'|qVnDq0t7@I,g #(b\ܲZ7cSʝ\GYeL"l.ȥ3Ph4 ͰߔOBTAr)]8J yItZti1T>V5SJj\c /r+}\jgaqQ)ҩGH+f28ң)OX( ;\r>M͘- n.)OV N_G jjSK]spϼ 6^gX(k8;35A9݌BIMHzS)牸ݴ[dq5&g#ŧyr}l{Gl$nqMK{h9j Y3QV_GA'mHhWÍGtg9z;/B!-  ڶ K 蒖beA0Z̸;믓IG˯)"9aȁI^qT]CNDRԒ)TæYϱ+ Dq+skh2YQ\U"+[` |+_]H5!*F%<O&^>8ߕ8&2T&swPCSV&&ߖ f?`(;?T)2==Ӟ0Xh:˕~&.؂:wwÑcLJ'¶Њ#ΪlgӟvcF0e䊬 ϵ@f_3^Q1k/i;t=)O(6cBsI_6wJBZF (-GvZߴ67s=[dwK|k]hϒ4(H`=|%oJUviaV4S̠zt=VDECݹ O_ zYUWrԆFo"k { S@mXi[ĺwDJjQc{B2so2vD8Ӎh.6\Z'ÿT:.<93Ij"Nֿ#ڶQ;ߞѵ t> V92B'~ %S&W@R 4P罌`SI3cCR 05OGK嗯Ue.->muWX⹠_* 7 |o;"1̑5{ 3OF#*Ov`!0V)\{WM@cWkX9AE[.gjU'&*JoG~cqiNϫgڙ7f +{M$q !1ּj_[eg=,b7ߋ7bc!@{GVy!۶ȪvȒ&+ Kӥy69]NbA WO a]TKR7$r%hpgAZDeʬE$(P+F1۲_v۶cwxUe"n-oFEsڀ5ӻyJgm>b-yl_lVamt@ߘrƶvhdWe@9;Z0B0#=BCjBէ a hʘ ﲯ%T뙷G[)s^ em1u EKzT8Gne/0f674JnGDQwaXLHݪN, R9-sgye)כdS:ՔPRɷ%,?2Y8'x%PP70!XLU\oh>|(J'ZoZ;OA`ďAX$cqfD56"MV#%D *c J6V׾cUuűM{UY%j3 =o9W dQh/UDŬ׉O) [AX%g͞w7.Z˘(dX+N5!Ȑ 8Lp@:č3!+H2S]I*ΛnZ琖^,"ۺa^R{0erAXCH:i{nV ev7`÷\Ux4c:,LmCeػ,¡&$j"HYy_=W_>t1wAXf#'S2ʋ8UUhg1戴D'TvOmQUeL7|-̑|ZۋE:x V]p }/CF:e>)pVaD&P1ŋTP~؜W.w/Fp1 g(Kr*RcYoVyuӓ%N-qâ],lz}?fe10^3٠_C=ua8;tayX?k6(֘=1'/ZH֝97f>,m2)C#­Y/ n5%:(V-f2+_IԄ -`MZ=XdLꟓJ2zFAt0r{vfoga[z޴>-U#M@&Z1ƪ@!xl7ln[-Wu6Tx0gJaN5*kIK׶?[©#ݛ]; ؘlq(ǑrrojG4PݕfOͺEdBr}76̭"<ZF,%P[J.7g#V mޟٙjirМ2cxwRy0qY8$ѐc2؄^! #s.\"?EˁV5eA&xgeXt*^嵄3TjgU!e/xU77=- ),U;V*PU"',¦ͷ&^%^N6ck(X <5< :)ahldn&a?;]GC#qm8KONZd@;Y,|6|.V~]hv nǫ\YE<U$ hPge<$@`Q?9c^p@UogKa =7sG%3IcI C98[!܌uċe5EONB(%2zCˊArJ?EE}r3‰Qc'®@AFƾ .pGh0 ,Q~lq!`$yM#Gcpu%ɊЦaY̙3|xhAB&$'1 =n+ʳ f% e+9@6鴡̎b.ors'yš_kuT$lM8q݆ r)/Fu~7GѠ7 G\vo^܆jb o_ϚBa3JtݻgO] 5ץNI'rE*7 +cjziyT CWn(A2LJۚy{NYTeNoK 6pFfyTtxWpxJX6h2Y(}YLe/ˉr~8iܻcb>^M시DQ#r#? DYE PfyziYQN2u|S}cS\ijEfx`('q4ua{\vLN7XJ ֽBZ!ܵ5"ᷲp 7H`V;_L x=/of7u;p'Y|Sٷ\a!סۆSGMz4? KKes81oIn}K)?9$&G|*,soX> _׵Vܠ.2dߡ;"&"p3X^HX\N 4t=L$rM*/'8zM?K(, mRQ>}cr\X'&&.V>턶d9|.vq@ԿhOg˟zTw)h!x/绹Wi08XZXXdOSE;/agWlF?xBTxB!9V{M"RK!(R{=bYP8D?4ܶJ2R!zؒه .K1ucRA*ەHw4:IQkɴ=Ω.!{:(,0`vA!OU$}FDZg0Pn˘kjuR%ʪri,ѹ麧׿2>q >}YH=ȥ?}j]7ͅqO0y1)Relp#V7?2t͛wktgQM#;4iXS$džezxQKgxʴKiGA|bKnaߖH{EKN)]H)td#^rL7!(3۸FR<>B6*{w^f;j `Swqt/DD aH~ڲqRSLPÒ1Hgx lOrYsp4aN:YOխټ];.<=\R(&C%f9^ os=Eef|그E\K/~aΟ,6, oL|][coFȍeQI_V2E_3k6H٤ ae;@JH|y˜yĥJuw_ aYH99Dfz9 CI~n[asom-`А@CBCsn$+#3S+] cH"6|"-̄LN,=O ^Vt&G!QC+`ȞL"w P^2Y^k4X^Wǝu F2A"8Z< r]m]GX1g2HL5g٘Z;oG*Ҽbmxʯ oZƆh&E~] y{EUXUJz@*~c2`X@ӄn~]gxf^3u{iKg+?gH{>8A1y r]>s澏\H۩1tPaܵ: &޷?nE4^ãu0K )ELx˹{^a9)_4FʆaC|2js>])ٽ]^_10\\zsMY]ʩ'>@ۏ K"is'Is<ICfԧ>-7-3ޥu*F44U3ɢ]츩jkm ![<Շ S HjNc89̦q]F5t;_BPBbEepȑ dQnTV.Ȥ cb֯@-ZR.P@ o' JWvdt\.PEěs?.G[-gDuB2,&BAlx*Feh`]Ӕn!/rލ I?v8^5ݽGʀĀg\z{r4zK]m%)}»G zx+^hbdpa"C~CiR:4}O*'j8uouf[/[+Sdro0ڦxƱS]96Zfc/aH4쐙uNv9:ӹe/GR0,*`p OxVV]CF^;"`WjT@dxz[ziiF;|rui;Yח, x;Bcsh0mg$vGKB]f:*O,"xi32]z#XA=\][-6_=KCWLTOLLKl4 AN|NsN5IkZ19hY{s N8#Ksc7kh,JoRK4-]?2(mUb':uD}JyԋjgI5mKd$e:+ZY @P{wl0'hrP$Y7ԫJ] PGEn ^9v}-Կ>4P \)a*hL@6PFYnf2f='UE5K!CPz(K(jJd:Wͺ ;x2&RG ]ۋ\zd. 2EhKV"޷K;1z xIAoWb'.Ckgr2.qw}&Oa=O6<"GO[$)ʮ{& ȂdPBA7Xf\XR^`׭uBX@Ci5 w^Pޑ^df&&bJ1k=1/2Sz*#/[hSP|&XBWqd(]DK;LT]_}5bW- \sg0tuw+_bޘfH=+:8v[{xI^CC#Zk疟/ ]bGjXO X|OQK1ǫokf'3ՐǚAO-&]A朤8S\?br+D %G)mN:́^Cb+vRu5[ d}" ]CENJk_Ը-ad*޵5l jN;|zYw@ le/`:&w%'݇f?m5y'=Kؿ".LKuMZ>9˶Gu \qltP\\(2A i/#-5^cDCj-6 ANN6h>R/Ő ŞAS-2hiu)B2:3 _ib(NZb[/۞ڿR5+P{&kB%CwI'&ә׾|ZN!ѕUP +^[@I7z'XyNMk%zO̵oDA[#,H2}3tMm$0{,/a[mQW!=K=[vo3)4Mc4Ѻjya:ʎ'gfdy %ڕjj﵄k[NM;+Eŷ<%CZ|Ƞ&J+.!s0C{ZzVQ`gsjsgۋC#-3҂TR"æ~xjωGIH˛Yx'ҡQN"zbןY&:CG b4m!#J;C)A_Z,-Vվ^vuoi Ix7-Y*){D~dCv,T c}AmCWYcrKFi1,&@e ,< BPyݞHqނj5o ܸR=BEi^C-qtnw1}%_Pqo5怾j;أINxRa'}32)ֈ}"2k-'%^QӔ֌Ag ܲ &G{&^C>g$1N+:R8\S3!9A$Sˢ B󰔠 i˹^ XjphNyg:`K 1vtxP8v쳯 &8@ *5Uxlsu5 #V8'&Qw]# d]K=rA=_(iP'9E П2Y$+-@C ΣSgڑ.,<sZ Ǹ04iÉu@p Zy{,OӘ ,;z*בHF"yZnb-S B=O O0ǪTd? Wg>[dU,(+g`˓qZo=o' >QPHeonʊvqԱ򮾸/1 XF=Lsa .sVQH}bb-.6͝b+&Bu5!_9+9J y5cvSxɜ`'g+jZezTmHz*+8V>$C]{mv+4a]u!œFh\%C9/ K ~>x+Bi6^&$?6f6ƺ帓3Ytl'?DŽVCа˲ ,ꔹYJu+Wc|/CDY Dq'=b?}ZfUG\l^,hxBr2xQڃ$8Lv4 ޙKZZڌ"Wn\n lQiAF췠ܮAT4_L@`96dEm`$+3h)fff:SHI(SBEh|)0j)xAuW>P6%QéEuL}Td) UcJgth[ rT"^?k1|Y&7r!+*BHL1Zg_7%R’%S{%--s}3/e87ȇ4ؚVb:{d0pVyd^&Y)#- iQ4YX?+d}sln`XB.6^iןa%Uf^3ьrOo9$ވ6A3͔Ly&{4EoZDaB3Nŋ`IIRsV lcܘy?q82"gK7cT 1L% tyn{js˛n!{;}Zaj e”:A/{S@C4< .1{!c]|9{B ],N'G| tBu~ ms8JZL807z.YAR rg'e]]3K׈x"pjb ohH|ت5d7Qʈ`UvrJzȚcڨ kHo{6kI nt?eRrAb?Emhl_I$f IbqD ]6;q-7 Hv21:z_@$j-64vX*Jk̋0C$pv&[7UykR,* )%H/~ml3akW 9I+cEW*~Ơ}q|'?œ.AH8 $Z,6IO\PP}3 to jfF%a0&cbe -̒"")FAh˓:eFVV CY<<훶s1oŋe?eE. WIz(.a[߫Ê-RkHduA G ͱuHa!5>@nG#6kX cuCY_iR#fRڨ$J9]);6\A?P/:Nګ[Wz.(Xo`s(Q Ϋ R74RňE:/z~S4.:}:\ o!:֏}{%o,bnO/:L XW!!Gak=\Kߚ[RR,&o>U?\?]VK5.N 5#zc :cQl r^js s35) !KKo,y:JGƨe2:X׏, &zI wJx8 E7ө䀸#fMuG[nrϬ6;ޙL5$I ӡ]a c V;ԝJ;VĊV +_!j0 &~JyHSB+SĮP{ո>q ~&<s0ĊiX*xZGLt Rފ&z2@$Ycj:׾2Kg5אnd+%"`Aar^)vZю2[5jÞ/=׹֢08Ͳ'P6 mGP)UWH,J}گGT-LW$NFn߰t[תę3ͮ`$m~H We@Ml-՘gH$%6Z-խ:XG4f$R'\a4j1!P6v9\UW!S^S @[OjO +Vɶ"f%y}-?^)4'z>3'e;nQb ؠ+zUtn^_ЂFgO!WVsv} dz|:!ÑîW@: +, -2("~-Yb'zhnOl Oq,S=a/Yædcҟy'1\܏匇[6$3jJ.7'yԎ5HoK5-i89wj 0%3gjrf;_Bi]]\01(5[}O?ZK¨@fun4/XCP OwVpI7|)9cnhj{ .Al 13B1|Bl$CLh-clL#xȈKK:ղrZJց "x=ʍR2X\yL*/baJClk${$Ѵs18MA~NPRv-Axn@ry?+b<ݓk ?x1xs<-HVZo*MS[c8+AMJ_юOKb΍ʛHs쐯,X% k_+X*6AK/orGܭXCק"!OaWOFA-G0X;J s);bef,x}Pٗ-ǃ"ҳWa|(i$_< e_@yT)P%^+@HjdԐ1> '0,WCUj}^H[X-QϹp Qt\iԝL{eceoJ"pCih']}zFk IG7G"Wf CBA$CrU@O@?u"Z ܙ nuh8\.(LJYW.evOmrxV@'JÎbsqVTRl 9}wk: bTo Mƿi g><BF%nAUk'i?J݈>U|/GŲ7:¼4ꉲbWHgN"lg*Ce1)DeHvJbl1O GY9v~sdنw_C_'Kd,K :at-l,C(3"*:57@[n\FCo5xsd"g=Ӗrq.xRpfDBC; N`^鏀B8*vmjt~5 -HױP^R^G\jҍ٧2^|J66Ei4&IrMTނ5J&K yE \ADZ=pW hӰrݞπIEHٻHmEӐ-^oyf= ,@2*A x͠T:`DR~۰5?\qQ[R aޯ+dnuHj{UPi5mx,4@m>X[Ar$XC\̫q<"];w̵8'܉8gi.OB#iddObK|]6r5GZCDhDgV#>HtNE @Um rC.ewC0bߝ2j K=*T(xP0hNOB 尢UPt4aH00Őw{paH_..W c+cEl=:< FlZNu &D.ff^8/;fˌ"WgQ"w**9 5`i=2~^M K;菮;Pp2++9[@)&I"oPhN#z 3}_PƉ%-4Iy dߪ+2 FX ̸p&„lO{%iNiBztnwi$B5:J1\u.&iqf:\7 R#.!œ>W"<ɿ mj2&,㖔Jap78lJla*c8rwt<kU ~ԻFmfEJzIuhjPYْAeadŧ&֍[7r"d+ĬcO]r(dA:*Ȼ/&yDǪĪCB~ɳ,@sB8sQܮN 9!݌ϓ\6U7GzA"q]m.8T1Bϙ=] *j&y1O^0ցX]S}ˎQVITZӖЎYF[P e W[n|X jWBajB#d (e'!-_/2 =7=˽7?r:_M^Z{׶[=A~YSį`QJڡj q^具t/u% *rg5Y0c}ED30n>mE̒_'VUxRJY41[kP]k,黇ɇ!KW'ǚȞqR|a^yk>A"j3eiis~Lm`jJϊGEpUeR3_c_9+H,~EbLGs o`TlUzMK<_zDAK#X۫wH },XumWrp-gtC+g"NZShqT%(icJMNWI}q\zMdBKk`Ma;a TE凐u6m6H5:-A#}o/ !_k^!Z$nͨ{ l] +ke{4~p+>A bQWPW7Z=Ldվqg &cU_ݳt]bp!;Z1+[]O]٪w΀WU"!B4 rA֪W] 7 -QعLmQ֝4yJXj_G0JgOqOy{j*c`4s B'2 RCJI!]y#R)RWHVrjUA:5Ց=~j~(tÝPD4szTr'oY`>+zZ0Eѫs#36e,~Y:cEiiʗEt"yyd^AR25+eI.T53e}< jRJ#ģYKԦ=dNۂvzl:ֻ(j;l3"vh8'\;b̽+PՑyN q/24EXC |Kq|X\@^֬5U߇/6OJH淹׆5=$\ in?y'?<A:.yle9ޱ >4]nN-, ~ƈG/:fMᭁ.K3 g,[Qs d3)(.1orY+rMN.hnW~%t45|$lP *6鐶EGpɳ3miң?6>GSP e8tA#N uoŐrbY{բqƪhG[_`@{8 V^}K[{M"VJ s ,R#8i7{J{rj .C{ͷD$qkD)-F2tqC ulNyo*ȖۗZA$*/cQ\{닫qSNXe&amsVV_'3݊;OavgrmgxHkvSNFE!ˇot!m6H(t7D9J(x# sUkr&cd%Z!_ GjCEPS Jl"P?{|5SZBI1?MA=$Kgu;!NMf&eũUY>3Mn{sX`okH6$jF"\\[AXdx$A)F^d{%̛77#c$4,^7Z~ -.r@39+Ytoj\;~OÊk2zC\FWC l7i[ L]`ldt}Jl,GC n?>ie؆zDRRxeĹ h{:w+R",s[3A(nrEz` &z)Q%{L~ gV=SN>|qyNnsLsg1ݬUjve؎P5.bn\YͲA&bM)U 5D޺-nc a_MYTչZxfIݠe- z?}ikS]pA0}$^'V;"?2h0u{>h́Gp{/V RVF[ݺ}Xlbr 9V?-jnECWT Vqz iOG۽t~I iCIuf~;(-~Ш<؁\gk@1lma ^Î ݀,kOT9q+Vy~֚ӿG j䝑V|[5Xtp(fU^+=]T|1h_?hUw[XTR+ DzKѓdۿz^ z @EPآHU3ߤ󽟌 VRN^W[(Ezd\/^m:pLcqB}7Zdۅ !(YV7T˰O]lr:q/A$0dR?#BN*~ij.g7nSIM ڷr:oRB8o+/{P?+(9#Jb|_O [ܚ^˪eZ6țyզ DJA{BȩwrIa~LM4a<~ GY6@*5)m0*IkZ+> T'rJ8ˑ*ڥN'9w[7E^=YILW0"]~an&V &yW]*ǮU} T6 OIw~M J̚ ԖP]ỤMbN<,U'>cGX6u|Χ g[B@M <>dyh-QP ? 71MI|m^ ͚ ni"~(ᷗnoĮL24Om/蚿ʿA!e)H3U΢ι_KdM(wakM)@Gov.DLQ#M*ANsTHuwF!.!PuAg -etuȪB=bP^Ɲučif^p(@3d6go uyPR ΍Cы M9٧*"c.M o HnB/-9sPf^v񕄶S}Y31DZovm-ߊ_tm#vG4i:!ҡܚ3OdzEo;$p=~P { lSSǚAɱEc͙lnk3: )ܢmd$6X 9N‰rV>mv$Ma .t$7z>HXV/ #CBqgljN Q,#}3kqs` #FGn@XQWzp\R w.j PU~`b,;Xp NpʢlK C7Z W\s H,ybpH iNttiDaA-HMGK"|&#(EunA^_K#dqTe~ڰU:cM)k% jh]F@tAuLJ"Zr; SD)h2v ˌ"*v:ȯ|Ycb~Ex>TƒPυSCҷ&:i!*b3/ O:*/|v@&ipbY}Epj~bh = x ]"Bҿ'j:QC\pƋC:SS'RHD[QiFqܭ[ [񖖂>ٹL`?0ǰͶ$3ah'=?E99DCИH[" ?요$WvEH1>YI|,\&,wĪ9u@O|DVJ~k*.%{0WZ_nw,+cd^v<##vaj`͖YₗeDpWU@9uGHnbU9ӟv~_MY#Ħa{LE>h3?s+%Y|Hrvic!o,Tܿ2끠*!#õK݃D]j{ǟ 9{j=po-\.P~OhYMpmW,3Ņ\t^W1{Vg=b z?DoD[4/r&oې)ֱ! |shtYmK!S:D En :nbƦRwǧ3ކSF72[0J+r:>ńi3"Q.J]v4?HޝnWؚ!u&[3M*fCR!ڜlJwO _ﮑ9TbB1)BSz~fjDS *$q{aC>>rS FCT2I"ǭhCHHVˬ),smrr,rD79@zz;1EDC m`wc-d̍wbL^KR瘝av # 2n e 6O4-!m>k2m3e*[kI3`0;1?}Q f@j4w/(!?2$ Pja6E|[MK%$vS@x裯ې6.ۈNTр8 ,'ͩ'RU' FZ8.%һ Z#fBܮ.GĎՙ%;y ol/YM)ʱM 6t &ԛ*FAB AYL,qXI bnkBIT6z`Ȱ+y$'{xę \3=hoR;0?؍[;#y)" >K=V놏]8m<8CCѭȼdi \3ܦUkTv~<$Dr/j/*wDtcj򦢹 Цee_h'~rڹ׊nĥoևW饩pw@U֛6nygvŭAs[Ydvyq!r]V-IrSxƽ_28g9ZiS@},&kx hTJw8Kp'2̉]o1(NwԊfF^hНo7NyrRwi[Cm'4::Mə @K6+ jT>2R&d)GBzB>^ ŝ\~z:wJ+W #< K"4 >>I(Nq8,p2 I$ìs9T$B.4߃eB`357*f-3^+xT'T&ylnJĆzǟo6s=@" {>DyoN"la0bY C3./?kI crdQFUZϾ ]0|*5=ˣ*VNN6pVԨ^N@$撚3*dmbhIO͘C70|i,FUĸrF͇+GR7FojXU#d\(3gOn#h޾d86tI8ܭϴTGY^=2DX }ܚy4(-Jhp!AauP0 zjb8[i29'OL=%BuM !t_,;F7(./Uq"3A݃O~36'%?]5;{C]#vZPq+ ?nR=oOE:M0 |A`{* b {|xIfQ2\\ qKNYz6l=#|b|[{魨)hOIwm_fz=@#T(B\EceW~ѝ_{h5Z͋~e7BDRNޜ KI겤mz@r:út4rem"k')6ucD*RM<'m)W19s+  V#.EU߄9èO1gvˆZ%ޢTAV4)"tun,޴5Ip@xfI\2(19.LyDg#?TG̡Hּ9I8!\ܐ۲*xM6&<\vUo{NQ˝24ISһ1TJQK) xQͮOrckp)>G%#w mBcgND+.-#Ks tW̳ r!}uvoMx M6 (zD1Zܐ6&A˻ kXQȑmFf!|1'Ho14 \MVF Ic ZYsES ;K~ aL0 78x `ݜۣ;x&:б~~.S^쬙2/&e1 B4i;S\]SӠZd`&<{X/i|2>KUB՝L}[M<0:~pw㰽uJl y|d&S?F2 MipiR"DE"4X;! 16HyxiJZ|.P1}͹/ॷ\2ڋũ| .Eg&'cg MEi@-ͷ,'q1Ueb2j.Qi1OmeH 02ǾT_(<Ĕ&{+ Ɂr$mI`s+fY&@8P=|jŝ'YSe:ߛ4k?5+ ))zMWJæ #E߈f,NWQ'l(f&.2#2'|ӊ9 nHFpDz,iOz,yHʌy[%|.\58ZQoe_Fj$4@D5 N /t36@˃,x_2L&oaO. .-1b.?WVgyW8 뢌2n-$9:ѪDr,z?[οFsfAb}9P9f Ξ|3e|(wmb+dZ?x Capt\wR]cGte:qz&Ϊ؝0uDupa# ͊UI,Ħ!$Z; HXnK9|@&L\r_+4SSu2L xO q_{6|zÙ S #p)R|V?1C pP~ʣxS{ʢXt=GVS|'b"$CCbLʦf Oy!fFUfdOJ9Lk"8xw;򝫘ѽS;{QRV}r[oӧw'ۥZYԞo?JgE4,J`E*'je DeŖ, YR^:=c}mj=ε3 Eq\_*YEQpVr'Dm~M1MUFN\w/̫F$ZlEzJ94K@$·_߄5);@?~7P&PuI7 cu4o8:Scfy{!KE Ht1_&E1~YjrU#DmN6vc wck .Hm=:zg#ƿg0&A0fA]Z\*mЈ^c%)}l9m;ƅ\\R2u ųj_XW{s*& ڞ }|NyT!Mv&ԠIH` N[`?s!πosg1! Njyp+Kՙ<Z#_k+Μ0lQzJo6?AΣP)< 8WaAeU{R|tޞ#/-#@ײ7F?7ljR/6ؤ j*%dJUJ/o9ܓL:4#SZh~.a ?I:^񡅂͈~zHfo[KK=D[KLeqD8()5BNbƳRYTۆރ_)MAM G#< ؉yX[L5 +]E!G $g+m۝)5 lg񓁝zo kBa(C!YW'Wg߹(ǿ =E%s_T.%.;c1*$9eM掵S"s=v0[ +< }EQE~8iTfBNl)) mZ73mKB41qHX91}F^1Zq)* vOWT?y Lc$yFUiHCqګqͿOO5w<$dEFU ª6>@xB\?4䦆_#嫰XO^]4F}[ N^ìX-1XGBdxu2˿-7۸$kE8  +C,󴟵V n[l$Va8awxommz:HPBpspWW]BV,ΰfDZI.gb&s͙%53XaiC!ei*uDop:pʦO!E$U?cSY"?'\k42jV't?( dCyfLbJ6C˓n;&UUm,ζËՀ UX/H_>mJLR(P(نӯ\ϴpJyCr-?RSYv*iAa_'.@JqP\ '$blleLz~/<_?WɌfJ$eN^jWL~c`~? A׿2+3 l.p;,TN(ޭq:GΓ֗E|L\Qq̞gm!SOCr\ n«aiie7lhV[u,lEd5YBJ*nt];~P^B32;Fdۓ:Y$^r԰ouBs'VH C,iD!;#Af1F1˽ރ2xaq{n"vh]Ց6bn}a#ˊO0 @o2UnQ &fRq9[zC^ʓEW֜4]JsLȇ@NQvh9 oORKY,'?٬w Qg7hKd \m29z du1II7P@I# :i5,pSO `ʥ0",~#4%wk,XPίެ-ꛬu\qwժڵ4cE2 '3րέF\#8?rmiF ֋bKL)˓FdmV'+oe'W}#u/G3݅ӑ4V]iןXpC!cתC`)E<:|J߮i:~EN58X_)l<z%vkD^#j}:o͘e-E}#Bfza[#rtUbޑCfrqd8"hz7_"?wv?$+)^k {Yvj18BhT {bJ\;Z/*" ]*_| Y>>|433&Av$!e QȳCԥ] 2|Xe<x8&HHѝK&-LLy2-;!c&\!+4hM`.8jou`˄W].o`S.!.!G7xG;f"\+= J߲Ūiy}]!O9#m4$+B`lKށ5 O -k ô=.G ,?nJ+zo݈_Ew Eqܓ,&5BeY?ZmY- ^R6õysrÆ5i>{ʵT& ڟyla !wbɂt嫱{_Xz܄?8{E񕬀z;P Ѓ3J=I =8#В#=u~1.?6xZ#:-֧xx3Vf[w,:(aW!SUX]aFnUwt?]i}F'N)Ȥ>p~; _ELEBT=+5yS3RP]G|FO}=`.[DZ|j)^>gw.XW%!e$Sl I}r0;+KȮL@] >;eDPns]i>koۤ#NQ2[Px˱ʕJD6@xCs` 6@ '$IX{&50>, <|E8Qqpͪzr!Fa%KFHIMJ(VX )ݜ8fJ̰#NZ}[_ɣ2{\vTJYވ -)+fߑdQ*0ome8͆ɷ1X5I99qU⋬hZi$YG 'x 9$^0NK:b6KiCKs+(y_0כշ?drP}<'S/aU,"C0ס`{oj/+ `r~FR\Ƅ1I{e9՟2 6KϧeGLneKk_P+1D !j&8 E|&+]7ˡ-9pX`F?@TW %N2VCbpD5]'vR( `< vd&ndt׿^dW6y9t F"0 (K?.Y3_ov ЁL:#[zNuRyu f%NV8Qc#~zjt~rP00Vb.ag?%֏ 9j ;|.[sJp\j:{y=L6t}FGѽ'(BK69'/uDj1 DŽ}AU>pʔu=[FHII戬{e<,:ҍ1C!o$ޟ#d3t|v]9yr&ɽY9:7lh5HҶt;\gǽDƳw1ֹr"X 8]FW p褽-C%Lߟ7Ļ-{gOpuV뱖Lz?ZwlhV餀D kef'_>JT} Te ƅQkJylIT27הuEA8!Zxnn AԙzbɊ ī4qw UL%Jfwkʻ4#R = DȨk;=0L|[&!0Q'].K_gxYCd.y%uNkYqh2 |W|x$U􃫵!-o"%@(o/W+s2,XnQ%#t'wrLI31kKjQ#/NsY{\xI6;O媣uckegeƕ21~$8"(P_z(RU="Y+."دnbLY'ro,2z (һު.: sZ !Kz' ƃMѷՍnbV>A,&5En9/|!`i.w-HUvOB.d76ʏ`(f6֍X?TB8d-ղ j͉N{@ZPF>w(+UsNP0,^sP/]|ٷd ,NILR6.5~y_9~@eHH,˛RLc,t2eNzjjWKT[Wtb6%NCZRQĴ!\Cv/5 lnڦr@?1S\0ఇ)=?i^3_KgYnXET+2$V= 161] ֱ̳B D+#o`8%6XQj-A{S1A P=s3j5PE;!Y!H``߳qW?73xpSqVH@n'v !Hjc$w.Oj`siݧ\NmM _?0aIEXjB;}cK +X)H3y:|'. Ɵpr68;O;CG2*~lv.p+jh#u$&pC\S2guo mdFՀCe6r2xrLKR[ADh8( Cѳ" t6CXxG`o |`>(/8]ԩ< ƭ MT.b˼qzy)`? gHl1`s~0.Vi` ^G.`_@e bo"8kBM.~`>Ws]ԟ%#0m}zCHtQN,_t?zn+=1孈fl4wо{:vXe0H^èj L>;4Y)%㵡_C,Ĩt0`B Lb$20i9_|֣nsǵA(/BIK:X xl =sK`︖dn[reFy۟(M c_}z]wg$&04@GMH>QQUt!ǯaV)7U"C.AP0#+d)歷=N锽!#HCsZ^ԁaNѡkӿy-bNB)B٨VoF1qUY5H,kԣi;=vͣwtMo縘$کx+ؒx*Iw դjQ C_Zo*745e-NF_؅hgG)as/mć񷨶CiT/>'įN< ݣl nkj-K F<|O$Oc̋ ÄeB/$  j@ glhAg3] O︻jcU0ʨ5/aWred X&}"^F.~ d}d+{8A@C@ȽbgNOO[ԢT*: G j^|XT@{ IOxzLG"Y.,c57nU `SņPo&<"rw1U>˲ecDf^?4〔2s.ɟ'ž@Hf/֦~Qwi Ui7b6i&.#o %-Cӂw'L?هz $ތ),29-ݣ( W !.JWjIxWbX iZ4 Wa8/yp5)ؒK^DC? I/ ^XiHRoA^bc!QEXɷU)Jr(lBRʥ[,ql?w))UViBCKoĮ[[L{_se#_>"m揘9?lPځZ6{uTٍA (/^B8Aol;\^!bJurir #KGG6d9x(qQwM_4 5y._IGu#ihenZ666EyDXh 8Ʋ+v.߄jĩC*)R1v٤pԆu&B"X fNNHVy,ޣա~s}UH^쌅Z\{#|PG`E VTn$)$Ǩv^>>ɑBGEBVC@h>$Lk.wb=B%,k ➿ LWboM]|鷪P}\w'x˖FG_M\ V4.P3Uܼt^)lL< .;N EfY.}&ָCi&8ǒ>?x~@9XWXȰ1x#7ژm,ׇ-]T']~Z|ČdC@|꫷Rb﷫OI+hp&L1O}Wc2МsbWtrft$:D([0Rʅ5j0ءګ=Dlh_A"7T=VnN+ż06t= 7 :)= ajzfdÅzYúY[-ː_ԯqN38))_<*ي)IL9k E5G]{>䉠G,Iua/49z|@0wWۀVʆxV堑އb@*gq:.Q');~'MPRUiN#P*!WؔQeL]v^u'4h0o_,l~E ZWNۑ|miAa܌`E:BώӈE.?L6<.|=rc09A.vap\ݚ {m Xty[m%-`K Ϲ?S [*e/YdxE!rvӮ$bf֝ N  /838TRХL3{`^қ\dwyAH^=1F/XH/RNLs EY\m\ K (&Q U~0PV%"K>~͑M 87|Z{?6L3y:SmN!/ljڥ JuTIn6y@FJ#;-ЕߓW[H(xL~l Zi_@?/liOSۣx&[ 3r~'G/rCv @QqES[xZY,M|/bDDN^%.yTr=؜GWZt:=UVsmd41*]#5DYݛ.<0q,f igGE{|9X蒭|zԭ[M]@3UZMF+NCۮc0=1}IF>[߈ś~ УGքXv9DY=$2B:-q>ϰ) ̸(}?췚oaJ]?!Xz.~rR0@uȣ}0^I尝/t_מZc+zUWrEcz4Y2Ն19HgvDmpǨ`s7zG80Cpmd5% ^\xJs ktҀ-2fSr[,#aeB  n];QWbl Q'SkwXP5`8$I+lh8˒f0Q Yci3xa[#5١g0PDtRd,f Q1>O"󤳃LIYžAo g)Aflzr͟3}`&>c>LOCJc|ֺ btH@/:jldGz!8p=*%O-/fuc#QUkN)kWGW i$P;Єvezm%/O7G5"ƙr{]|w2P֟!}$$^PL{ DR:k1[Օf>8qNFt2l6|)~9GФ 0s.7@~iY¼ %EψG%SX5E9jm `2Pʟ\J3` ?Dr #ˉ/"[Q6Vu8Oև| w~(ޏln+)WTcFcMhč9k%Kw| >*75)L2O9^0uljX |Wœ7bjly? .aޖzT.3iyZpSnec5BK5&IPFpҫW;LNB zl=Jk^DSMb% mZ˯KQ^LE@GΫ2*SIL9IvӧDf?!-[bu OT=)  k]cwhexj\EPLOaF.FH a l ,)Re\ fAkB>'v!,Ƌ= HTEl@49WK :\VHC^RAK6`:tU O%$_cbT)Nշ9Zi‡4pmMQtT_v6a02af Vh(&_:] k )-J]c>5d9@P U4*}"ĭ'^t`8f3E> /ڂDWq340F#g$O ^%m iĠO(҉P<@ۇXURy+LlsG) 1&2*OFAa /p8w0ũh{Ixi (gSz<Ѐ"~=^=儴1,be"*v+E x+;3RgDQqf!cЂ]fC8<? N_5no42G~ܚpdpPĩ8OG5 T+ /x8RZ/a- D C^jT P8Z=. TE͝Z:"GQ[YO[jHn 4Z(!l-gyV`P]):bG^WoÁc6m K@@ d{ylxsC#sܞ$HS6|*'t36 r.x{M6^h%L s dp}~l|7Uw=gg*06n̫`e;Ƶ}]K1 ^ &=D-&ap9ʟ'?$ 5JEN۟rI+\%Q#Tk̻/PK*?U^2BuAЪA"4eEM/ycXt#{Z(H#x![H:9J+5X4,d5ػ@?Va(',iajMȻ呾O "zme%2ו_ r]iBB#`/;t%, .y>$}+g \ʇ3ߦRϙ%w52Qhiۚ>oJtr>DEqW1 o_#7L}'] g]2џF.Juw&zU>W|)h]q% 9#S~7o57VRB/cuӋ|Tۉ] sY(4'.jamFNl%Mڐl1 h+Vv#Ճ}Aa4" "[+,=,z`7]HR&N ~촢"V*(EIKa\z~LI^adq%$~ol04 8e4o>>W^AЯÙ m"^i2}8doexg2Fue1Imj`:VW|u_jSP `CUr'@B CeBMoŃWkTl@Q2n}D:9_+5 6Ъ#VLuU %&#D&vq:sn,׳̙W@VToܴ<T|1G1?EԂkzɶ.dCq1*hY(Okk} /l?+-tk k 0T<4'FL-K3LZ/<0E+ )?;?$S֨`)c_O9cFfQcmh谩`c1pݣU a@QG:~ݝG5?!%R"rǖŔB+gcƫ.9U|`]Xa.|&]MS.֫r 9P)"r+mXvA/&H+܈Vk 1ZA} Up %O![Zþ;7s0?`߄\ M3,4T6 հ`eG$tENI\ wc$##5WS| i݅G\Ũ:[=3)B!',} V/ϣ)]Ƙ]Z􃨺?ORk,3U!~`z0?]SիN#uf |IK=[C.hŜ{۠}uO|ܷCK񆷄f40]B1d]CɁ,*DYYyE뱹mHwR%9&¾pv/ҋuTsB~{fxꩽd=b?_d [M0__b"$\\=E!貣+`Za/R\.~Q#al m~$&̉oֺ5^dQ ~$ f5HGE%a܆N|;[c fAQQ{y]NԹ4 0a XҪ$fb=>JAKjauW% ix# "7xC.ĢE˭??N0X vwCwV@^wH;p"O ^,B'V4Ga- lLNw¿9R%+?pC1"Ζ uoF'PL3FA۩ѠM}T?)bjnayxa@k6IYh'[_bGKO/PJP-''rlHAa'xs|?ŔȏrEQ"HC#3@D|' Yd)9l:T]X8= E[҄B M: 0O^yL^6g{]ő,\S[0Gf%`|jHsR[6'XWɄ^ȧ ͘Nkpees)`K1I2v}-S٤}鮟8/w+!vGjW`F߼Ri6Ir9(?XI(|!oT[DG({#JGnԡZ|uV%VFZ\'Lݶ9,EJ^xֻ<psx @CM=ʠS  ]X7p)h` >Hxz5fȫ̞pd%}Tlt,<%E/괬%+!qt'$E9$r~mHPy}2Y4v05H1yWuA \e5&2l騑NU+\p]䰈l}~z&4SᅷޔhQot*ˬh3И9k)߲fkѲꑦb/p'1#c;ev9r&"&+̄R·Gt:&(YP..IyFDㅒEuK=v$qilxwrivV; "0E”I_[⿄2|4<]N oUca!t)1=ףH 2zakF&FYM싔b1"iՈ:'5@= xuGcFY~_Lw,;ط-QCWXOZkr;ln9CPZuůCm[#a'ÆF(ܻԙQI8pֺdr 2P])Xse{t0P 8ÃV`ิ%ps@e8F$ĎN\HL+܍Ed)oxoU;ZYxGl3aģuVvi2Mug<Y!E𹹫c:`y;Nїj$SY'T#PG`|I3HE68KN7/5JčPJchYVyRa/A0Z7޾(qVrV $h@M  ":]PYh9.wfΰtG(vMuV19]zO;;l-*)=A3F&n@oD_c܈*gGPMLr5G*B]0 53IOnĹeN(AE>4r8 n(L#{5\mQvp 0m]-yQ:u:CM."&+oe5nj]{[7>=艧Wƻ9ndcŢ *shٻ~ܤ+G<:UGmY0`ItIB2)V$I/͈Ky?Pzz:o"zRa׋T>>!URabxl  kT* Ԥo4&"֩K7}F+.5`knfCE5.O\nȡB?Y| hg%C/]QHP-XG0ieqZӣ.{i?C?YEDAB@uh=GfDD TV=z͹*QSFQǟMCn7Ejr=} Ҏv)LIy;I0T@Ybu -GL^лpN㻡=7IPMA%w# L(j{Ճ ^ f /ϒx#͹HO3Vw MBpϽ *fţuXI"aX]1b**5%[+s7 fw{c:Mc`jTpD=BIIu#ϊ`6VH=Op~" M_B=D NE~<%jK v, s[VqiFEzZn޶'Bپ $x@B(@:{5'Դ J@),,MZ{+r 0%~ًP80y7^ϩo KŶλS(ck}Ki_پ}8}ᵙe߱' zH6b BhcؼզIAV$"> hԖ]'GMtW=]7aC263 ݭR6'h("EcNzYߺ|7!u Lً8ӵs*+%/@2_'R{'tT顡i؅5<5֣*h}oy8~4Z7Gރ#GqSXVLXU┦VVPڭPl)MaC2T-SObݖfQgQ?w2}jiu14ꖟJf jY쥇\zg;@P,05ᏺ@!7z9-Ti*Hcu,^xP>1V@ڦ (Lv1NhJ!@G)bvy6b9+Ol*2ڎ'{Ҧlǹ6_Ss鵲D@hkSL[eO&1,&nve n qV< $Q?CJkAck&cra^ބg#r.2X? .E5ꬶ8>ʥ}4XKk< =g~wD ^*>m2F" 6,׬LT-TZ;:194Il~}zL3h7tㇳ;zkߜlE$Rg p&7IYѻ4}8ZlIxTHKy"V%>^e6kF9bvr5؆dui1.gFOf$GhLv\%qي[䁢ewӅQ #名öA 5I MHU8*a8XGXxP:'h6)8-K*|#h$a z@= |J6u=lHQ 4] eXgGd&N=Gń'S4hԪce~컪n}% U' FL.4;0q%v0`Fq7sw_0/?8;Fe) H9CGұdmC,\oSFNo;j菋ph OilӖUzNE5\jؽ2ArgkLrmNݡA!ޒJ ]2 3E\.UN:k {@E>ڨ{tjTԆV_#AZ=myay9ԩk8 G&GbM}h0.A gɮG#4f! Η/XXMYTck5fި{Kz) n|O!͘f_LX:6M!z*TkG 跸},۸UJF Izҥ@#;\[amw=JvNxNГ9ݱPSkpwAɊ^yAhՒ_#="ͫ[  Zmß 腭 5̜fKDPw>&[p4+o؈"`|kBVNaГ&^!afyFn0l(-e 228uA[T`mW!:aNO*Vy;cj:&)\-{ 1`+α`ToRZ @"fai)~ܦm0s,VoGGeG[\}qF=[{g/ZtNAhe+ GŪJ[࿋]qȸ/#qC%BJ(*GCgCK87OO>V_ނg#_26̇lGzc~NFN8o'WXywG ౸n,R`wlӺlC!AMr$-@|M,۪ =:y[*(.阙j0,z/^=/|@k]y䞡Bb&BGm(ū'k'lDhXo3EdZ]qs3j7kF{*݄U\}S '@X[g&8g eHpYm||S?Xz@+f~y#:Q{!gf+ҁ$Iz|Y$/}bλ곬sgK}h۶#=RΆx)sPHݖZ֬S{urjxk3 !NuA19hb6Dۨ9`0<@ԪywѺ%b5UTX!Ѯ8n.)83\Ef+ԭhL삱0W~g 5֘hrwvL"bPɖiWͯ=21wȗb_*5<롛/[s6;܏p±rwZ)MU4=O5 sOoeW/t͜TM1f;xշf_FG\.TY]Hl3zsQoJha*nX^mGn >ܽx?n >v%7Fgk{}\2U)jFbu=%v^$́L@іkmǘ~ 3*.Z+6'\5pI#\Iuvӝȴ+AJ!IB&iģ^S\6͓VDBrv;O ^ɑU }tq@J]*"75E#~hh0 v@,;s/lAzKTV+t&صm+K!5鲸d#~t *,|6ل/eXվdSsX |C0z"8^!+ [08I_XU` BabFI16t|،aЂH*w өSf;̏2&Ѵtt;"iamg];Ƶ`gP-аok#8rry"0EF>Ӣ;>/` 0tw_*g[os%5B{zݓl:`i[1ꈸ/+@xަqna%kpXHLҀp=Oilzr.{jWNzL O(Lq׏oS0v#DX.*UmI &Mȱ+},s~Т#¼P}R0u zqAjR(36GH5UiayUX4 陼'CU";xjTɃfMExi S@o2`(̜'KY (q{mk+&"zvY8?9Pr+.+URvoXL֛AkӅ٠!F߼}rNKFo%}d€y#2H4A>Oi)s'଀Mxn=>ţ,vT׏z9+ F,ⱂ<gHF5 Ma$B=>E0|fZlC;$|+#3>i+VȡIC*&=lA H82XՒaj2_T[JG`gߎS a=6Lu.gbzTi\"_@pPBOꞪ͊$) d&ᢛ‘|I`M!Ζ?IAp>YMJ^jIsڴXϫ3+`lc@ QmB77y!]߯ &IOe/008 #Yz@z/N1*2XɸHde1aXZjY0a@nDnVpu8`MIۚ+mH/sR% f[jTWg<dHy$&O [ڽF;7P= IVmxȷy:5W94XAZ\:g3}߹ߧC!D;Zwk0R`l%?/6ODJ8gd Fe>fszV"'w3[(Ȣ}Jquvrh!n\/=$q U:`^<328'nֻ i]8GTĐ`2%4 FH?(֥XcsxI >r/ 5w\*ӈ߃`~PVc3+@o[PN!}2՝"><<+vLHb]Or6~0PE==NW! eKߟ߱lj2Tm" x.]9JW_ FƲj ?X!2SE\HuٳU"ioti+0ApcyG?Zɧ9sJg,I` s`}~E#qz`tT!Eu%H7@5+7 þΛUN0g ǑUM#Z2_>؎~37dp|t5 b\|AOVsNM70Q D-i79ˀ"n{b]]yFpѹGW?GY?Jw&ςkCvW1WլZ31r&kgODHJu-)R'8[ʱ'l36. ,ju$V({p}[[ %F!_iĔ KSc9:m'bOW9Oh\96'мB&mLB<x$okJ('Bu Y|E^~:fa1%K4L ň.6ƚȳa9Z=';}|VTz`Z݂ǰme=1{N;8#$}J@Ï4b$ԔgGz]4k8 o$U-%|@6nm.:ٝs\yp1jx/W=P!1Kk|UT>3.;;Y}C5KQ2/hn# F.Z݌'h5 sUJAj 3|T }=U=4u3MSnXIJcf2+B~ɞښ<@RZpF[/1Mѽe$"I%cARhz<|ÃƘ>iv='bהM~ ci>h(G}RO 0PásY*W4,0ZI!wL,L>ijqVEH "\_!28F< E2ov8$Sn𐔎'~G95x?sK~dqtEx;:ȴ-\k<="W0^ضAP 3c {^O-eKĔ/5m0:mg DG},q4iB>a 4p{N>̓,dL+Q0*CQ_v"XLEF'¥n `$]Cc ̄6JeB'6/3EUV-ԯĹlfk6LM"eu_*xY_QP{]`mp^ʖO |i+\o֒ !?z?."t:!3W vWcM]'т es{LrWSl T< 934p=1hZ~wslxuB}{ZGrx b=KFgGmӷ}͟ۏ9_^)DL>/XG {Du)Ҙʹ:D;o{cOrOy@NEZ#+@[cX6J?dVhΫ^AVwM/wФwLAf(ނO}߷Rg8uD2I-il}Ux##APKu+bmh)!8Co m2_4( ϗs[TR? ϶6c_:y X0Xp\ 8'} нw IJ/esJ1s燁w-ޑ}o#sAԲtC55ÝnY;ʫ."|D?f?gɤQ1T_*9>.ŨtҦ?Wt(K'ԖZӤع <]2[ =\N:="3DŽo[WπUPC3`k-duwVCFM u-K-MR6FH{p^}Fa|$Մj ~J>J1Z):+-gQ{ÿ!~XWXW E PxWi2HBV.xF@x'@ItR8aU Gn\/ NJ &"~er!'ƸR"i^W|o=PEL)r,d -|J‰A.DBGyCG"9Ne /}Ƿ34 *%:dX+rL݀w v~*Yh{}~@ 2p>QO(k5ōtev.'r?j:{#U(̮u<YO0P//nT})>+\q[mEw4w1􉤧P;,yIMJ1K}kyx eN2 {^ᕗ}t A֛6D"_H|JihR`-J)OX5z]Q4hr{M&Ϗ*]*RDv?ٶߎ`I"+@,1]="F4u dlB)ٟ5xSՄ.CSbA5X@/ l%L=yE>'S nUaE"j2l7|UT([@yI":+lIyհ:)ZG3P #Y Hn®mǾ#㙨r!hĆ8@Bm>""gxڔVmc(" m{`v'ω-6`1Ig!EIP 7W|NaEZI *& >&gJ8&oV:twhm4q1hX#~{pZyKl+~7m:Ԛs|u7cE%9@}j}bͳa !Ӿ_ A菤V܇N(.#aT#իa/qʴ]}Z݋dkiB >մ ;J܆a#q8u [,%NhB5 D>F8.e1.ʩ瓺,AJc"iGZks8>~*dC^qBE֭jg x~yBן>˾ư Z_{A)9uevA[y埉er9nwҭ843(?@rԱыg`G|MhDh]eˋ'QU(̮J$ Q1di޶S6xuu4mG2uK|B{;R(VFR+oxsMauMgj虆41ƿ t-7<`7L}趑3`1hP}#yV%{]/*6;ܢx3t@T AaHm&vBu:˃, -X>i{|CMqv= 'Z_ltǼ^[xv"xKi ?to|ٟsŪV'"'-~нt&dT"[ߤ>{WXawv :K. OiG\ Eu&:/>8DD-O%<($0F0.Otd H7ubk;r @YQXl1=e^EʇgiK6^#;%Py;*QE,ZZ&A.*,{NmVl,tu~1-@#|WPW᧩3MRbSsLV($d+r`h|83K6j^R*#y;C\)G).PfXP wr>O*&DjW9i|)')F,B۾_Qɦ'k}O}r3etts@!oD5f{5h|⽈ 3W1$'B !$n^.yRBdݖ @ϡ3(ӯQnyU >YS>E5H~Wr^8OCe[26W3Ahb]aWH/kFI )ɽ!⢮Grj:tV;VcZ0ûϴ1S䙒7F4QΫ6–]TYvm֦@XIa2Nč!+*@O3A7h/zOЋ-~!TTI[Rxt7@f ūc {c%Gvl?0xJg<\}]7a@zkᰋ3)ZO~eJL ^]{kH,m4(ɸlrisXhBۘ"O(R)T !}܌_8@Z"Eh39[Q8?J(7P1}f:h;6;s@$'t漾mr9"* ҰWysd7y)&<=C&j;!MZ f%\r2`Ƣ?a0@V;d<ıܯJP~M{6sMU.9dA y]fqP +>T{YNRv~I1BnB0UPhɮ Ec{?z[wZȓ !W KhYF^y }?̭,9چ+vJ"ºƯ0 21/jQjo {"^m-Tޏ "?9 zGMc~8S.]av ԔHyjbsdw-u.@_/~xSxkD.oɆ:QhWfduBLс  ä_) LmI?3Z}޽=#`z~- qwKc;ϔq Otp_Q{DhQ7G}9;P{Pbw@BKfn:}c,"bՒkJ']B:. H̅ 6ʽ~ 2c3_$ROm與gs=;mpe)M׶#XGԗtJ7\T t29 gUrMAUeq/88-] ofwtzꕒaOz ""u@ =3lF*]+sC_,ްS^OD5sdL=Ʃ'1!qlԜUd5-WkaOZ# Α d=&oQ}~zÈ/Y^$@Ktp{Y- 4x!V=MENM2󈄾ct34cw"l:v.1Q%v撶y%)} R~7:Iv: >螾Ɣ;ga]gm9OR:a ~m?RJAJK?$&dA EQ @'ҁ7dt(:]VI/@)saLDzcCirɇ\\TLicF (I:ԿGq0l0~"n2LyϪx,X㘘JJa IōZLYӼ8%\+F'-=o⊡n_:f(F&KD@;M `,d@EqýFsd/cKT%Ժ?g=s"GE)̮"U f.G{ PGo&P&[>ÚG61%zJg R5@u2,`T(pj#dc+Фɵ=.:N yDԴQLQ~0b̎{\8jvYv)e{l^ZIu늩㎗Yes*bV)pIn2x%b5ɐ0*3%$X_E?GijI'CEM{A“fzg D䭎=)~0ow,BL!ޗhLyRMA)obF"thawX #O*jϽ =~_}g`x_TE?jEUL\l땡ԫ|SÜfaq9oYG4!`ӬsL*p 6nYVJ Ͳn:*QHj.͡ZGvZ)@3xYGt}EDx.0a"}@ >> b6Io (ΆTV<W_ ȊW5eTH) l/^%[t5HB'?n ~R.90 Z(>'*}?Y9hfnZsp@_ƈrw0Vէa\^iE#]>|uLd(XjG)_>+͐ b/> r4".E|.r, eSǞ8,0AUI@-~7 ~K^+emnfÔ AgYu"5yJU`юT 7Вʂ4 D 8%m׊~q?iZuB .I8O !g_ED].,VXޛ !8ž_+#r#]ǹ.sbScߙ-r1S(%^:QQb9TGǼdpTv'6 G/,^ݑ|yډh! Ga HGL+A6d3,'o#HHN?yf7V6LX6qc/ش|Q#.UvP%æL@C!÷hi$ ܇|,24h(wx0 :}\zam1ȐKm)QiܐW,E;CnЫk;> b}ۭp>QɑTiƠ0oo$e3 M8LHQ,aCӌ?i\9Yg8 bcҝʵdOS|fT9Ps"DKiZ##(CL$$!XX,4L?TZ([[js1wN(W2 ~Gѩ  C!]a-a\\|;! j&+wdšXSS/P^2B!!2d8˧JF€t>M\GeP;YM^H+o4]zkiyTTs&X`2HO۸P Md &䬇n+*p ~HPvS o*{ك*OV.^SJi D]"4&I>ਖ਼$t* q &4*t5v v:^+25vJJk_< ;͍k1GF)Os.I%ú wxB,-j3"4fɺj$B5R83uO2EZA^{Џbc甤 7N}i͇ͬm◩4]ݍˆctho@r[yG=眯S,rJ`?4I+o75aW6 1h6Wϩd5@Ю0FAIFu=Bu-2|Gr龃GhC_/LOp*#yzJ cmp4|x^N|=1q+^o>d+f[E.2Zb6`g_b<'ϐ 4 yp|(/ج[Qâܠ#1|P#lf%ηNEJB:b}qY{B +tJ>Fz/IvM+|-_58|vac1-5%=e->6Gl\𜟼GE;FGeH8 XG*ޛou{om1h ?pD!(l);vX= A(h)*b\7nR=<ٻ^֯%&3Pؤg~VZ*)DVd&DF֨PVo-`vv!eft|O^ xgND[jt,O%R˸jsM8B^t)5]K<mlJnA#:+Û@d[CM;:H2kᦰ'\s"F]FFQILĮP/*p}M7IE 4DA}rF2cZnE(P0pg!sFL|@?|}@p8EO7,/AU^M{RSDZ >/τIp=Z;:19%O #=uȖ}nOo8ET~<)Vz~Dݥ,iB?}o>RYP Vp~}slrܕڍi2bځh]xCW6|Քj+إ%rpGj)ʒBf5JqؤtvtpF24a6 e:\>'7- 2~>ƞNzj鄤wzUtcNnQ `V܀𡎒m+6!5[,9wK@ ڶޡW!}nLFEK3KXꫮl2:&/dNtPH#Guj_K 4~s*l]M5zo'KQΠG X}=nZyiRhF걆8+9V#zR#w;lw<}Fu{ ot( T6Ƕ\4ۈmA'W';NvGiRY 2!ۇ5J رۇc̎3.~TRz@~|/*t9;K iƀ]nfO=]`V8Ћm.gbH,SE3^,I A!ZdO=l'$חڢk̡>M1no+B.H'[W[N :hˀaQڥplCǷYC=gg TWQ3t{Z^gW#dSqF2[mIC}bpԊ/^C47ħw2]X@镼.Z{NUJhP부AiHV DXmٶu`$ QF>8E`)G h֠~BdK e`8*_ .}|kdo(T*!@QO4$R{I#Q6EeǨǁjg,@B >pSS˪\frlX=ҺIKQtJ3>ȱ%-`ei h?Bٴ&Á#rk$ëϏEv6{ BD bR#t֊igHrȋE;D84㗫Xʍ +=w kl"Bq<Ң[NR>P052a3`Ϝp,ǿؗoĶRU5u\m[٥XlP: xH<::M㦛T)Zc|,E~o|}t/ SsI}f=\/vDY1\:o}TTnDvzt-)7ƾh|'J{:p.,遾<_Tay_hܡ>}y['Ѓfvqȇ6tymZ[yO˜Bhd䁐ysqqʾª9aڇ*.fy7u]bga{ݒ+%dwV|le&,>и(i4Qp}Vque41Zq- NIԚNTRڌ1MԒRS;|<ﰺX'^̬DO|[gl#,b|aJnMuB 1 fR_yZK}/J,0T#2uHe;^*^D]?3n'h~eNuOD:>X6w:IJ*Γɽi ʕIڸHsK`\!P鬭a]/c"I[fA|` G1Cs fY!DV!ӏU/vBos@a+3~^OOH4@napi΋t^UxC-"r?cpCK|+p`GWSܝ3 SG(ZNq.?.p!en٢(DR ]*1h7~[[G.;+PMUd3؟OKWp\~W,fr$U`2sAG73%0=Yi5-$–fj/a(6 Ev2f5 ns6B@2mFm=ɚM%4isPbtpA58 /"˴WQm|ۥD FoBt2Yvߙ4#=:2ONa'#\ʱT7eCKO nE+s(0ݗ1O ب$OI(bTzdutcIE#(;E$ЮAkqWӫ J0eޗJZ+-AO9'zDXfXYw_4sUXp .֐FLyE|g=ršz@6JԶ'eNB?/ ڦ7ͪܓTd+&T+ +5A !h3^e%XAĭ-8G?8!UQOX0 _ծ='#6|j)'K% 6pks~C (u uSS*湌j%0/(S[IDds5H&u^_&GV1.bh_p\,+L1w*wЖ0 ~ەR4խJxy@eHo3=iqmԾ؈ZQayMeX [HJe}ٍ<_cʙY(#VЊh uG8@ c3#/Ji9 Br?l#p3R褭 S(tM8\a(4(.|<2ڄF MZMwFdPu}4 RzFP`RgYELA&/ksL^Tuic+ѵ]MW|P P-!M05)Sg38ƅQЭs-h \$(}[%UZ:;;D;o r+ ߈,Q jg/Aa'7h+(}5tB&i`1BIFEw͏GMLգ܋vWg>c?w y~׳+KW`x?C28(_K;5DVlsHao!lph>֩g- .Q;[O{^^Z[_/Sw #Aɼ_n>'Qڇ{ )A)n#oԲQelǪ Zd-6]QU _Q6sKaa;(@xS}㝪7UrG"#_$>ٷE14(L?~KW`SY/a`lg%ի6ma!*@F!>%EIcss2+8Ys(IjSڦqHoO@ez)k 9v{~D}˷w&XDB0i;{#>1Ydl@I:p- `h 1qZޮSC`nEtg$ b;T.rth _tׅ }ɻX¿~AT!Yž.mD;PDgW]He(/HbtU"Td{Wjp>nTnlj ""ɨ?ھ&+H7nT-D3}\㶉|t FLs4 6ZPH].3iKV ݨXhXc5:(pxHxu\A3c:;jWƸCəcsR煤^F@J)jWZ";Y%9 ^|V\>WvQu,N M/:ž ;'֖pwVbO٨lo&#K LgyLIʠmD2NL!4f9?2"& is2Aad"7]Vփ^N-(Zc`*Rl iZܙWvQ`SBthSߋ {:wn9ŀijÞKRG.ն,!W/KzpcxaXix`¸IυGc̎0NRzvE\?ymN)=˶n_|pƏia#w} ݈V6-.0jV%bBCb[Jc3:GшNFy9zvt.d]xG l) NHN1X;9p,!^LR`AAyvjN=; KN@=`TΗv "V!DhZ5X= cq"L(+㈍zP8y` E:P]Vb!syvQƸAS 9\*bx-q*>)%0Wp}x|?;>ua4 &^.c ;oY`Ҿ'%~.u"8oD&cG;ߠ؉W_Q~n^Kϰ_û9*e$m&5Y!^&D֧we'.d؁ 7aF/J裗'VwCb?s(]_[ wI?A*<zL3.V|` Ҋޤf_羨q%ݝP ghKͧCC`;hߝy[Uw~yQhhx\wXqne1ġ*@>_mQ}0>bۄ3 qv#u@_bX=cN8OJh۽Ol& j4#Ud4ڲ%5ou2i՗7rrZW5f5dKhJ`5^E;юsNlY*|D͍RwE тh 7 vG`yhsl<1ȯ5ߡţ+$ sxUJJ k+×9+|Bn\4 22}stb<_䠑 zBRΓ,&)aG*/scN͊g.(7zfe\`ajs&B6Y/" [Z7>֬[|[3BhU6[)0j +F26@J9T#A3?r͉]zȎS%F{?1:@|ӈO_|JG<,PkEC~tPu1`bnKKH5m,6> :U3Yqkp~eb+wzbLJb@^F.~1e@y BF H*T(-CDuYmgAA ݐف+3d&n6!L(s؎TS`(̙+vn\ ^>4cSvB'r$< "(vd,.S^;YLQFX2 <jzcZ4j걸 giPR&'9DB1 >pL@*)~2b %]1~=Hc86Ĝήj.>0*NCKe؏]≢=( 2V {rmlIWH&C9"whSP8x=Q/´rqBX_{c”|AϒM/$]bTL}q ͼũoB^Bw'*M_[dfZC52ީ/hXv4p˔4sS(>%xIܵ&^0KuvQ\ C@z& Iq44:+zqZ 'TQNj픾+؃&g-s2*ԍǠp`l(yAI2l2ь/5Pti 1|rk DĮ#;آsPK*nC5%Ab5\oLjRs?:1Ȍm Zj+&f7C ZgI=TPI lGx $=d}3KsY7tJ0D]Vu<(;S3Z OrPS @ P/4e4=2S;C(g7|" @ilzWfc a),aurj=+Ut"3RKR>F]Ĵ$vYm^Vזaz{2.%0]BFn~2@N5S_:Vv\nng\E6*CïČuTzhrWrңIҨC?vWveɇ2}nwYFξxN|LCHGX LT{_x5?8"Wi]N,:da\rw2W^ֵ;sis7C/^\ {:Sj@h[_&VcլKuk zcg~J./ 3oEM>O&c”k 8h4xQp/cq!I1e쳫8}<hZ3#D/W8dS|L͕q=(V##˳ V!pvo1˔)}   gc}Y-+qqx# W*Z\!p ȗA|fT}Z   SMyvZ0̊eɚԶHFjv_GE_0k`;wTu9;#+=aJYrwө ϘD~H`#1b;"P+akA&*;;17xՙku҃SY,˔] X| ʭ]r [guluSJ:7qpm{"zy3,I"MhQ>* f&\?V7VS9\ᑉT]Aɒ~\u⬎4IҘz$P9%q:2n•tFbLGX7f9wcdG*J@m(ɄMD( ӄ" 8~P񾝋"r~DOxeEHrV |ԛJjEXd1=܀J%ZbuA\rӿi`,M͍A> ̜jƗV1qpإ/lq5tnE3Lϕ!ˮbP{GHG*L%]y~~ D1`DAPt (__8D:ݼY> bGzF#t-oɋ~kTy6nH 6ͪ*LHL..Tp[lLI!S>#Y[`4Q\l [s9 ?bH:| 8 @А q5 Sg.>(|]=kko؍1c6y^Ih.3D1 ~rBD}MKGw:1PJ= ۹`x;}zq3&pY>:U)5 Ku+Q;uшwlM;y!u Zv3̏sX/Ɓ;޾ 0n*b_8x-AO_n;X;nucHQ)0U(} c8ǖ@w#s) _ﵓ j W LLj R6Jb|dutԍӑ e#ٯbȖPwen'{c"ecȊL_Fyiq ~^o\"7WG ݒJwbaj"y9:=Gd)V&sdݯ.bK"vQt9KO/d-E-J*jd1g~b/6VGz3K%g =k e'r'&XD 1DUlPlUS.< N:;ǽXB> \U9/k Ow{XPS)D}D+yq5 9ܡ$Ekr3k⋗ФADQҷVη)rB6eE1LQ/+B/ܟ3RSv9v1.=m]MȥgM A|X#r+m8#ںd{Ny`˰m`ȲjĜb2&\}C#H$dۃ,b0JecA8lMBxS௜+eK1A~rkr<$zX.#^q;@4߂@[n $Ӷ\nF׳צI+( !m`h>26SzWVk䖮3(2l@&[_9o|6wLYKa=?\ͬpnejgI6"F*)vHUy8b Jb#j pz}t T 1Atˁ?n F)/0[X.NJbWȥg"chE}1*ndB;-mMYK3я"h hZHK,i4h P+_DW \K|W>$tVw'( M= A&t)\xۧ+-h[}.ܶ7SW\6eg*l-i”vH$[ݎ{Xv"G՗K>&>qBW&2r;j`B@mvi*j9sk= Ĭي]VHc;@xt+ @SG >;1H^-Jem*L)8Q봱QoeKun{g|׏_D #rnjlT1Skme04Z'1(h106@2R`)5ybt!.D0hRw Cg[6gU#8!Ȅ˵>9Y_PdӚ3Qd_@V"wss..tLЃu.un}-mdDn#MkO% qg)|q1ur Ο*iȇ>8kFK/Ls ΐW@d(\S wF)0`3mm&aS-=Fx]*ƸiP΃07ކ/6T 3DoNְԳKqlWs(lC@]N6L \_0+Nʼ=x[љF*s E%Nf"=Cgz&8 ++̣vbmqV|Wp8Up'{7l\.dū R~κ>Rlr)T@ϛS sB.E}t#rY"\º7 SԖapl5 =ch߁ 9^̵W@ e.;˵9vDcԅ ?kD ۢC WQ|bP-)aexdrbS6|g;U@7O ݣB~t*Ԛ>Q:dz8UʫC1msZIѦpGڈTg/{Nfa%@n@ _?Rpv r^=RкO|f&;y7BʧyJ <;aY՟tsӪK)&` b'2Tׂմ[.CT`;?Jƹ=+¸ \G,j#%C3P|qJJ@i=㨩z9DB?\85|2|-ٖ5X#R{;"[h& <%ܕy%h!u#?[Evlm!6 ъ,(Bfx.4iLZ+G֕)nKimК$ntKr9C567K$lm޽ŭ_pn"tW6;pK Sc,qY9!lH=T|Z&hoQZIުr9B埏. ߋ?fo)%鈔B < 釤׽(w = &E[6(T*鬖4ـ'k˖:;3Xԩ5`{Q6Թ+[qsWq9OޖX|G0%xx9}gpw\&`AChPۥll|XT£rkHiȺ=[H+rXoy`Vl-}! :Flbt؏^{B_H-Yye4%&wnY`8": wZТ1GyFedtv^tınlf9-LNo%HzM/I%l4]8]a$6mXc!H-;D]`fMG_.L11S8wAy|:ۯlz`Qڵ^)vm#