renaming configure.in to configure.ac

Started by Peter Eisentrautover 5 years ago25 messages
#1Peter Eisentraut
peter.eisentraut@2ndquadrant.com

It was mentioned elsewhere in passing that a new Autoconf release might
be coming. That one will warn about the old naming "configure.in" and
request "configure.ac". So we might want to rename that sometime.
Before we get into the specifics, I suggest that all interested parties
check whether buildfarm scripts, packaging scripts, etc. need to be
adjusted for the newer name.

--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

#2Andrew Dunstan
andrew.dunstan@2ndquadrant.com
In reply to: Peter Eisentraut (#1)
Re: renaming configure.in to configure.ac

On 7/15/20 9:14 AM, Peter Eisentraut wrote:

It was mentioned elsewhere in passing that a new Autoconf release
might be coming.  That one will warn about the old naming
"configure.in" and request "configure.ac".  So we might want to rename
that sometime. Before we get into the specifics, I suggest that all
interested parties check whether buildfarm scripts, packaging scripts,
etc. need to be adjusted for the newer name.

The buildfarm does not use autoconf at all, so it won't care less what
the file is called.

cheers

andrew

--
Andrew Dunstan https://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Eisentraut (#1)
Re: renaming configure.in to configure.ac

Peter Eisentraut <peter.eisentraut@2ndquadrant.com> writes:

It was mentioned elsewhere in passing that a new Autoconf release might
be coming. That one will warn about the old naming "configure.in" and
request "configure.ac". So we might want to rename that sometime.
Before we get into the specifics, I suggest that all interested parties
check whether buildfarm scripts, packaging scripts, etc. need to be
adjusted for the newer name.

Along the same line, I read at [1]https://lists.gnu.org/archive/html/autoconf/2020-07/msg00006.html

Because it has been such a long time, and because some of the changes
potentially break existing Autoconf scripts, we are conducting a
public beta test before the final release of version 2.70. Please
test this beta with your autoconf scripts, and report any problems you
find to the Savannah bug tracker:

Maybe we should do some pro-active testing, rather than just waiting for
2.70 to get dropped on us? God knows how long it will be until 2.71.

regards, tom lane

[1]: https://lists.gnu.org/archive/html/autoconf/2020-07/msg00006.html

#4Noah Misch
noah@leadboat.com
In reply to: Tom Lane (#3)
Re: renaming configure.in to configure.ac

On Wed, Jul 15, 2020 at 09:45:54AM -0400, Tom Lane wrote:

Peter Eisentraut <peter.eisentraut@2ndquadrant.com> writes:

It was mentioned elsewhere in passing that a new Autoconf release might
be coming. That one will warn about the old naming "configure.in" and
request "configure.ac". So we might want to rename that sometime.
Before we get into the specifics, I suggest that all interested parties
check whether buildfarm scripts, packaging scripts, etc. need to be
adjusted for the newer name.

Along the same line, I read at [1]

Because it has been such a long time, and because some of the changes
potentially break existing Autoconf scripts, we are conducting a
public beta test before the final release of version 2.70. Please
test this beta with your autoconf scripts, and report any problems you
find to the Savannah bug tracker:

Maybe we should do some pro-active testing, rather than just waiting for
2.70 to get dropped on us? God knows how long it will be until 2.71.

Sounds good. A cheap option would be to regenerate with 2.70, push that on a
Friday night to see what the buildfarm thinks, and revert it on Sunday night.

#5Noname
ilmari@ilmari.org
In reply to: Noah Misch (#4)
Re: renaming configure.in to configure.ac

Noah Misch <noah@leadboat.com> writes:

On Wed, Jul 15, 2020 at 09:45:54AM -0400, Tom Lane wrote:

Peter Eisentraut <peter.eisentraut@2ndquadrant.com> writes:

It was mentioned elsewhere in passing that a new Autoconf release might
be coming. That one will warn about the old naming "configure.in" and
request "configure.ac". So we might want to rename that sometime.
Before we get into the specifics, I suggest that all interested parties
check whether buildfarm scripts, packaging scripts, etc. need to be
adjusted for the newer name.

Along the same line, I read at [1]

Because it has been such a long time, and because some of the changes
potentially break existing Autoconf scripts, we are conducting a
public beta test before the final release of version 2.70. Please
test this beta with your autoconf scripts, and report any problems you
find to the Savannah bug tracker:

Maybe we should do some pro-active testing, rather than just waiting for
2.70 to get dropped on us? God knows how long it will be until 2.71.

Sounds good. A cheap option would be to regenerate with 2.70, push that on a
Friday night to see what the buildfarm thinks, and revert it on Sunday night.

Instead of doing this on the master branch, would it be worth defining a
namespace for branches that the buildfarm tests in addition to master
and REL_*_STABLE?

In the Perl world we have this in the form of smoke-me/* branches, and
it's invaluable to be able to test things across many platforms without
breaking blead (our name for the main development branch).

- ilmari
--
- Twitter seems more influential [than blogs] in the 'gets reported in
the mainstream press' sense at least. - Matt McLeod
- That'd be because the content of a tweet is easier to condense down
to a mainstream media article. - Calle Dybedahl

#6Tom Lane
tgl@sss.pgh.pa.us
In reply to: Noah Misch (#4)
Re: renaming configure.in to configure.ac

Noah Misch <noah@leadboat.com> writes:

On Wed, Jul 15, 2020 at 09:45:54AM -0400, Tom Lane wrote:

Maybe we should do some pro-active testing, rather than just waiting for
2.70 to get dropped on us? God knows how long it will be until 2.71.

Sounds good. A cheap option would be to regenerate with 2.70, push that on a
Friday night to see what the buildfarm thinks, and revert it on Sunday night.

We'd have to rename configure.in as per $subject; but AFAIK that works
with extant autoconf, so we could just do it and leave it that way,
figuring that it'll have to happen eventually.

More ambitiously, we could just adopt 2.69b in HEAD and see what happens,
planning to revert only if things break. The cost to that is that
committers who want to commit configure.ac changes would have to install
2.69b. But they'd be having to install 2.70 whenever we move to that,
anyway, so I'm not sure that's a big cost.

regards, tom lane

#7Andrew Dunstan
andrew.dunstan@2ndquadrant.com
In reply to: Tom Lane (#6)
Re: renaming configure.in to configure.ac

On 7/16/20 11:24 AM, Tom Lane wrote:

Noah Misch <noah@leadboat.com> writes:

On Wed, Jul 15, 2020 at 09:45:54AM -0400, Tom Lane wrote:

Maybe we should do some pro-active testing, rather than just waiting for
2.70 to get dropped on us? God knows how long it will be until 2.71.

Sounds good. A cheap option would be to regenerate with 2.70, push that on a
Friday night to see what the buildfarm thinks, and revert it on Sunday night.

We'd have to rename configure.in as per $subject; but AFAIK that works
with extant autoconf, so we could just do it and leave it that way,
figuring that it'll have to happen eventually.

Yeah, let's just do that forthwith.

More ambitiously, we could just adopt 2.69b in HEAD and see what happens,
planning to revert only if things break. The cost to that is that
committers who want to commit configure.ac changes would have to install
2.69b. But they'd be having to install 2.70 whenever we move to that,
anyway, so I'm not sure that's a big cost.

I don't think it's a big cost. IIRC for quite some years we had to keep
2 or 3 versions of autoconf to cover all the live branches.

cheers

andrew

--
Andrew Dunstan https://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

#8Tom Lane
tgl@sss.pgh.pa.us
In reply to: Andrew Dunstan (#7)
Re: renaming configure.in to configure.ac

Andrew Dunstan <andrew.dunstan@2ndquadrant.com> writes:

On 7/16/20 11:24 AM, Tom Lane wrote:

More ambitiously, we could just adopt 2.69b in HEAD and see what happens,
planning to revert only if things break. The cost to that is that
committers who want to commit configure.ac changes would have to install
2.69b. But they'd be having to install 2.70 whenever we move to that,
anyway, so I'm not sure that's a big cost.

I don't think it's a big cost. IIRC for quite some years we had to keep
2 or 3 versions of autoconf to cover all the live branches.

Yeah, everyone who's had a commit bit for more than a few years
has a workflow that allows for using different autoconf versions
for different branches. And if the autoconf crew get their act
back together and start making regular releases again, that will
become the norm for us again too --- so the newer committers had
better get set up to handle this if they aren't already.

regards, tom lane

#9Andres Freund
andres@anarazel.de
In reply to: Tom Lane (#6)
Re: renaming configure.in to configure.ac

Hi,

On July 16, 2020 8:24:15 AM PDT, Tom Lane <tgl@sss.pgh.pa.us> wrote:

Noah Misch <noah@leadboat.com> writes:

On Wed, Jul 15, 2020 at 09:45:54AM -0400, Tom Lane wrote:

More ambitiously, we could just adopt 2.69b in HEAD and see what
happens,
planning to revert only if things break. The cost to that is that
committers who want to commit configure.ac changes would have to
install
2.69b. But they'd be having to install 2.70 whenever we move to that,
anyway, so I'm not sure that's a big cost.

I think it'd be a good plan to adopt the beta on master.

We already have parts of it backpacked, there have been things we couldn't easily do because of bugs in 2.69. There aren't that many changes to configure it total, and particularly not in the back branches. So I think it'd be ok overhead wise.

Andres

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.

#10Tom Lane
tgl@sss.pgh.pa.us
In reply to: Andres Freund (#9)
Re: renaming configure.in to configure.ac

Andres Freund <andres@anarazel.de> writes:

I think it'd be a good plan to adopt the beta on master.

We already have parts of it backpacked, there have been things we couldn't easily do because of bugs in 2.69. There aren't that many changes to configure it total, and particularly not in the back branches. So I think it'd be ok overhead wise.

Yeah. Because we'd want to rip out those hacks, it's not quite as simple
as "regenerate configure with this other autoconf version"; somebody will
have to do some preliminary investigation and produce a patch for the
autoconf input files. Peter, were you intending to do that?

regards, tom lane

#11Noah Misch
noah@leadboat.com
In reply to: Noname (#5)
Re: renaming configure.in to configure.ac

On Thu, Jul 16, 2020 at 11:41:56AM +0100, Dagfinn Ilmari Manns�ker wrote:

Noah Misch <noah@leadboat.com> writes:

On Wed, Jul 15, 2020 at 09:45:54AM -0400, Tom Lane wrote:

Along the same line, I read at [1]

Because it has been such a long time, and because some of the changes
potentially break existing Autoconf scripts, we are conducting a
public beta test before the final release of version 2.70. Please
test this beta with your autoconf scripts, and report any problems you
find to the Savannah bug tracker:

Maybe we should do some pro-active testing, rather than just waiting for
2.70 to get dropped on us? God knows how long it will be until 2.71.

Sounds good. A cheap option would be to regenerate with 2.70, push that on a
Friday night to see what the buildfarm thinks, and revert it on Sunday night.

Instead of doing this on the master branch, would it be worth defining a
namespace for branches that the buildfarm tests in addition to master
and REL_*_STABLE?

In the Perl world we have this in the form of smoke-me/* branches, and
it's invaluable to be able to test things across many platforms without
breaking blead (our name for the main development branch).

Potentially. What advantages and disadvantages has Perl experienced?

(Given the support downthread for just changing master indefinitely, which is
fine with me, it's more likely this particular change won't use such a branch.
There have been and will be other changes that may benefit.)

#12Peter Eisentraut
peter.eisentraut@2ndquadrant.com
In reply to: Tom Lane (#10)
4 attachment(s)
Re: renaming configure.in to configure.ac

On 2020-07-16 18:17, Tom Lane wrote:

Andres Freund <andres@anarazel.de> writes:

I think it'd be a good plan to adopt the beta on master.

We already have parts of it backpacked, there have been things we couldn't easily do because of bugs in 2.69. There aren't that many changes to configure it total, and particularly not in the back branches. So I think it'd be ok overhead wise.

Yeah. Because we'd want to rip out those hacks, it's not quite as simple
as "regenerate configure with this other autoconf version"; somebody will
have to do some preliminary investigation and produce a patch for the
autoconf input files. Peter, were you intending to do that?

Okay, let's take a look. Attached is a patch series.

v1-0001-Rename-configure.in-to-configure.ac.patch

This is unsurprising.

v1-0002-Update-to-Autoconf-2.69b.patch.bz2

This runs auto(re)conf 2.69b and cleans up a minimal amount of obsoleted
stuff.

The bulk of the changes in the produced configure are from the change
from echo to printf. Not much else that's too interesting. I think a
lot of the compatibility/testing advisories relate to the way you write
your configure.ac, not so much to the produced shell code.

v1-0003-Remove-check_decls.m4-obsoleted-by-Autoconf-updat.patch

This is something we had backported and is now no longer necessary.
Note that there are no significant changes in the produced configure,
which is good.

v1-0004-configure.ac-Remove-_DARWIN_USE_64_BIT_INODE-hack.patch

This is also something that has been obsoleted.

I'm not immediately aware of anything else that can be removed, cleaned,
or simplified.

One thing that's annoying is that the release notes claim that configure
should now be faster, and some of the changes they have made should
support that, but my (limited) testing doesn't bear that out. Most
notably, the newly arisen test

checking for g++ option to enable C++11 features... none needed

takes approximately 10 seconds(!) on my machine (for one loop, since
"none needed"; good luck if you need more than none).

This clearly depends on a lot of specifics of the environment, so some
more testing would be useful. This is perhaps something we can
construct some useful feedback for.

--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Attachments:

v1-0001-Rename-configure.in-to-configure.ac.patchtext/plain; charset=UTF-8; name=v1-0001-Rename-configure.in-to-configure.ac.patch; x-mac-creator=0; x-mac-type=0Download
From f13940654f84b8fd0954408c69d5f64134fa5045 Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <peter@eisentraut.org>
Date: Fri, 17 Jul 2020 10:26:27 +0200
Subject: [PATCH v1 1/4] Rename configure.in to configure.ac

---
 config/general.m4            |  2 +-
 configure.in => configure.ac |  4 ++--
 src/backend/catalog/Makefile |  4 ++--
 src/include/pg_config.h.in   |  2 +-
 src/tools/msvc/Solution.pm   | 10 +++++-----
 src/tools/version_stamp.pl   | 12 ++++++------
 6 files changed, 17 insertions(+), 17 deletions(-)
 rename configure.in => configure.ac (99%)

diff --git a/config/general.m4 b/config/general.m4
index 95d65ceb09..140b9737bf 100644
--- a/config/general.m4
+++ b/config/general.m4
@@ -8,7 +8,7 @@
 # argument (other than "yes/no"), etc.
 #
 # The point of this implementation is to reduce code size and
-# redundancy in configure.in and to improve robustness and consistency
+# redundancy in configure.ac and to improve robustness and consistency
 # in the option evaluation code.
 
 
diff --git a/configure.in b/configure.ac
similarity index 99%
rename from configure.in
rename to configure.ac
index 2e05ce2e4d..3f49467ccd 100644
--- a/configure.in
+++ b/configure.ac
@@ -1,5 +1,5 @@
 dnl Process this file with autoconf to produce a configure script.
-dnl configure.in
+dnl configure.ac
 dnl
 dnl Developers, please strive to achieve this order:
 dnl
@@ -21,7 +21,7 @@ AC_INIT([PostgreSQL], [14devel], [pgsql-bugs@lists.postgresql.org], [], [https:/
 
 m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.69], [], [m4_fatal([Autoconf version 2.69 is required.
 Untested combinations of 'autoconf' and PostgreSQL versions are not
-recommended.  You can remove the check from 'configure.in' but it is then
+recommended.  You can remove the check from 'configure.ac' but it is then
 your responsibility whether the result works or not.])])
 AC_COPYRIGHT([Copyright (c) 1996-2020, PostgreSQL Global Development Group])
 AC_CONFIG_SRCDIR([src/backend/access/common/heaptuple.c])
diff --git a/src/backend/catalog/Makefile b/src/backend/catalog/Makefile
index 9499bb33e5..93cf6d4368 100644
--- a/src/backend/catalog/Makefile
+++ b/src/backend/catalog/Makefile
@@ -103,10 +103,10 @@ generated-header-symlinks: $(top_builddir)/src/include/catalog/header-stamp
 # won't update them if they didn't change (to avoid unnecessary recompiles).
 # Technically, this should depend on Makefile.global which supplies
 # $(MAJORVERSION); but then genbki.pl would need to be re-run after every
-# configure run, even in distribution tarballs.  So depending on configure.in
+# configure run, even in distribution tarballs.  So depending on configure.ac
 # instead is cheating a bit, but it will achieve the goal of updating the
 # version number when it changes.
-bki-stamp: genbki.pl Catalog.pm $(POSTGRES_BKI_SRCS) $(POSTGRES_BKI_DATA) $(top_srcdir)/configure.in
+bki-stamp: genbki.pl Catalog.pm $(POSTGRES_BKI_SRCS) $(POSTGRES_BKI_DATA) $(top_srcdir)/configure.ac
 	$(PERL) $< --include-path=$(top_srcdir)/src/include/ \
 		--set-version=$(MAJORVERSION) $(POSTGRES_BKI_SRCS)
 	touch $@
diff --git a/src/include/pg_config.h.in b/src/include/pg_config.h.in
index c199cd46d2..11567064b3 100644
--- a/src/include/pg_config.h.in
+++ b/src/include/pg_config.h.in
@@ -1,4 +1,4 @@
-/* src/include/pg_config.h.in.  Generated from configure.in by autoheader.  */
+/* src/include/pg_config.h.in.  Generated from configure.ac by autoheader.  */
 
 /* Define to the type of arg 1 of 'accept' */
 #undef ACCEPT_TYPE_ARG1
diff --git a/src/tools/msvc/Solution.pm b/src/tools/msvc/Solution.pm
index a13ca6e02e..4dbfc1f3ec 100644
--- a/src/tools/msvc/Solution.pm
+++ b/src/tools/msvc/Solution.pm
@@ -153,9 +153,9 @@ sub GenerateFiles
 	my $package_url;
 	my ($majorver, $minorver);
 
-	# Parse configure.in to get version numbers
-	open(my $c, '<', "configure.in")
-	  || confess("Could not open configure.in for reading\n");
+	# Parse configure.ac to get version numbers
+	open(my $c, '<', "configure.ac")
+	  || confess("Could not open configure.ac for reading\n");
 	while (<$c>)
 	{
 		if (/^AC_INIT\(\[([^\]]+)\], \[([^\]]+)\], \[([^\]]+)\], \[([^\]]*)\], \[([^\]]+)\]/
@@ -178,7 +178,7 @@ sub GenerateFiles
 		}
 	}
 	close($c);
-	confess "Unable to parse configure.in for all variables!"
+	confess "Unable to parse configure.ac for all variables!"
 	  unless $ac_init_found;
 
 	if (IsNewer("src/include/pg_config_os.h", "src/include/port/win32.h"))
@@ -826,7 +826,7 @@ EOF
 
 # Read lines from input file and substitute symbols using the same
 # logic that config.status uses.  There should be one call of this for
-# each AC_CONFIG_HEADERS call in configure.in.
+# each AC_CONFIG_HEADERS call in configure.ac.
 #
 # If the "required" argument is true, we also keep track which of our
 # defines have been found and error out if any are left unused at the
diff --git a/src/tools/version_stamp.pl b/src/tools/version_stamp.pl
index 3595587622..36b18d514c 100755
--- a/src/tools/version_stamp.pl
+++ b/src/tools/version_stamp.pl
@@ -9,10 +9,10 @@
 #################################################################
 
 #
-# This script updates the version stamp in configure.in, and also in assorted
+# This script updates the version stamp in configure.ac, and also in assorted
 # other files wherein it's not convenient to obtain the version number from
 # configure's output.  Note that you still have to run autoconf afterward
-# to regenerate configure from the updated configure.in.
+# to regenerate configure from the updated configure.ac.
 #
 # Usage: cd to top of source tree and issue
 #	src/tools/version_stamp.pl MINORVERSION
@@ -74,7 +74,7 @@
 # (this also ensures we're in the right directory)
 
 my $aconfver = "";
-open(my $fh, '<', "configure.in") || die "could not read configure.in: $!\n";
+open(my $fh, '<', "configure.ac") || die "could not read configure.ac: $!\n";
 while (<$fh>)
 {
 	if (m/^m4_if\(m4_defn\(\[m4_PACKAGE_VERSION\]\), \[(.*)\], \[\], \[m4_fatal/
@@ -86,13 +86,13 @@
 }
 close($fh);
 $aconfver ne ""
-  || die "could not find autoconf version number in configure.in\n";
+  || die "could not find autoconf version number in configure.ac\n";
 
-# Update configure.in and other files that contain version numbers
+# Update configure.ac and other files that contain version numbers
 
 my $fixedfiles = "";
 
-sed_file("configure.in",
+sed_file("configure.ac",
 	"-e 's/AC_INIT(\\[PostgreSQL\\], \\[[0-9a-z.]*\\]/AC_INIT([PostgreSQL], [$fullversion]/'"
 );
 
-- 
2.27.0

v1-0002-Update-to-Autoconf-2.69b.patch.bz2application/x-bzip2; name=v1-0002-Update-to-Autoconf-2.69b.patch.bz2Download
BZh91AY&SYT��������������������a��}��6��v�����P��}���O��`��T4�]�
n�Cs}���&�������4
3hwk���6^��/a3�[{�E��{��@��|���)LqHl����i�w��i��E�Pdz�RC�}����l�wOu�Q	�^�@.��tQ���5�h�O=0�@WO�����m��P
(:�
���3�{�jR��>��B�y��'�5W8E��"[��j������j�`ZA��
�)���U�A������yO�}�>���m��Wo��{���@=�\	t��:.{�Hv���Y����s��v���X������e���M�2j�cc�;����{����e�]���&����SO�T�$]5��������5i��;�{�|��o���n��������\��������\��gQ��T6��������W�k'�N�E�c`I
��<,|��m�����z�=����/bd��[�����;����)T�m�����9�������a)!Ogb��tJSajZh{�����{h*e���)M�p���)��\S��{l�I�����wR���K��������J��Zt����\Z6eu��V�v<Y���������V=���i���q����+����}��lwf7{�r���v�ju��g��A.�:j�t�y�;�2�[�
�9T�*�3�C���+e����C=u�]�[D�����������m�}����B6���_Z�';��s�u�I{k��&�m_8�N����j������+�\N���n�^������G^�B���t�j=����z�l�c�m��V��[�J(�V��7Y��nj���*DhL�4d4	����T�I�����DM4��<�SO�������
�
��)�&�S���z��S�F�	�B
=OQ��C�@��Ii1�<����F�����C&����ha�4��f��y'�����	�1L�MLjz��HA����S���l#h��F����O"a=M������%�g���O���I#�*$�$?c��1�\��r���R�>���md���6���S��S2h`��f1.�([��3?�SXc�4$�����^����������f��h3cJ;GA���.�������0�|����?3���Z?�t���Q�7�_�������P?������T���[M:�����������^�wI���k��3S���&�����������S������Z.N��	���&R�v�^��`���>�=K*��h����}������k�����(����O�����������}���<��D���	���;��D�W�5�K�^�bs��Zf�6Q�-)1�����W.9�o9�6�����CQF����~��eQ�{@�*_dH����yJPwN�g�0����������M���ux���u9��Id��Ii�C�YV�2$���Y�q�8�����
�������a����o����]|�����A����(�Pa4;I��C ���6��j��zu�m�����X~t_�7��<'[^$�E����5�{oo�|N�����z��������i2���8�Uf�����!���������z��/ _���V����d7gd��i�[��sB2l���AA���9�����\1 ^��X�;�	i�$s% �����t�^��h�_������S�A�d�i}~�����7��	��-��&
w�ca��n^[�����jm���q��_o�F�m�'�F�����P��	=�Hf����f���3����	�kU�k�[
i�1pk��.b.E���3Xg��&���#�*�C�0�r�[�Zni�	R����"����c��� ���f��BE~vKP���YYK��}���D�5�����O���w�]���KL��Y4��u(��f��E�e�<]��lx
�M�;�������i���Yu H��da rEl`���������u�n����OH�O���	���:cyb�����Q�d������o���	-(�M���O��M���
7��g�"��N�'��U����vm�3�����4�\Gxi#DV�$��fbN`Oe�T���\��-iC#0p%��C3j`������t��)�3��xJDK����\s�#<m��3����������oy�`sE�W�h�<4�U6fU@�sU��
�_-�z���~�������E��e����f���\/������{�!R@�fa����t�(H��Di��i�X�}bx����~k=��e��� ��0�sD���k����!�����O����{�����?�I��Y�l�����H0����>�v��4��W1)$r��d��4�qO�M����H#kF���tW��?����	�@$D@BI~O<�����G8s���"!��d�d�� �E�6���K�z4���T���E��%��%�m������F�h��1.��
��6������E`7�wv�P��Z����A�F���v56.�������ea�h��������4�LDg+�d�&�fc��(�<���.{U��8n�^}N�x�.K�����^�'�`����v#�
�tn���a���M��Fc�����[���g�_��'����x�����A�I�3�?�W#c�a���vk�����D�y��o��I0��^�D���{b:���]���f8��������	�.�&���A�m`����xz�r�LZ�����W�x�~]���^��~,����H���)HVA�|���> �������/<g���F����;�������"�&U ���"t0���vc(5M���<!��~�dik���G�!.��<X�<���	-#���5�)��	��k�{9m�l4����6
�m@H�G���sd����t�5n���!�a��uy>�A�V�^ ��wxkV�c)���N�4�]�b�a��zwu��M���pc�a�g��	�~�"B"��]�����Hrc��D�Q �o�A$�Gmq��u���i�
c�z��u�\�������W��������r��b�����"iQ�8bV�����(����u6^���JmI��S�s�.XuFu����Zu��(�b�8����B�������#FCu�BBX�l)	>m�`�;$���#�F�>�)+9��j!�+�������3��zxkS�#�-��c�p��"�SY�T�+|v�b�t+��:�>��h�_��q�#�p�J���V�39H|�Q���\��x���<������d~���&���E	�7���Hmo�q�����@��1k�s3�.kOm!��j�e������m�|��5�S�[���%Q!�l����I7���I�/�.J�ru��>���n��IC�����M��vvq;	�pq�0��������&�����O���]_F�����6�5��0������^�m�-k+��.��,������x���'d��|l%.�L��H�N"�s��DPTh������@�	�rhrI4{��O�_}%�F=�����4Y��{���"{5��|H�@��b��$�i��\#lcv��b�=�~�/JY^m�������� I�2�B>����c[�{�e��|~?Mj�',!��T���c���p6-}.`!��\�
�I�1�s��j 2E]��0;#��cB,�;����� S'��9i�n�B�$.bZQ��d���|���fT�~�m6O<��%g����[�zk%�?�nQ�fC!���:ru�W��5�������Zd��F�NB���O,$�A�X\`j5KH����-�������a��h=�u���^#��P�9��	K��m��X�$�v�}�_�/
���?0dqq/���<��2P�E����6�f��U�����,�L
Qa�"����(Z���]?�:�9�j� ���'��UcM���t!b���za�.:9��@� ��"��.i	8p�46;6��
�I+O)�1`Q\�G@	IN��Ck����E����6�80��H;��,�0�1�C���y��W������r��fG�7p����5�Z��m�Mznr�G�s����Z��`���>�i����9^d<0;0`�,m����%��.���I�d��{��������j�S�I���s
L�0���;:��,�"��@�#�p
�
s��������7����n��������?��_/����n�,����
�����u2�r�i��`C��>rPO�b!I Jh./)+��&d"(��az����4A�&@���}9��]�j��QV�^
��VH@������mz6���������VB$(O�ZSL�%T�CE.b����$�u��C�*��a��>�������y�/��
�%�r^��wu�9$�3��t�01(^�>���'���+�m:IQ�����-��l�I��q4���2UR>�
 �Z�i�I5�q������~=���N8���Z����:Z�����jC`���),���������eS
,B:��aY��U��iQ�������J��zp[���O�7�\X��7?_����o������6��`����k�N�����p��������p�����$"0u-������aY$�bH�>��:(�VQ:����T�0��k�1���.'����B&��W�O.~��/hI�t."a[������C��������~rL�-����P�������B��C�������kI�V>��U���D��_79Q}<D�XQ%�\��'<��]���j��hr�
�����My�tGY ��$�Fhq�BZ�����1�Ul��U<�<tWI�#��s���HRx��l���������P����R�u��N�����ym��wVG����M��vh�`�`�
�=^�l��Hfi;�'�Z���>��v\9p��=T��x�:��^�����\�M'�K��2�$����cm���8�mZ�B=O��|�,!��X��?RD>F�����r�k`��!_I&�N�)oo�����%h��R�~c����u��k<�$r�����^D���x�q�f���(� �LZr����^��'�����3Q�j�^��L�Xq-�+[f�������\��e���������V�����G��$Q1{����~����:�6o�w�^��N����-���8P���5�L^�$|�B�R���C�W��A�H�?��~�/���nyS��l�����
A����V�5m'�s-G+�|�=w��)^S�������_O���D|������R�K��jc�9G5����5m���}O���f�S�V[v��k���1��IO��I$�I$�II��:���>8�^7�����UUU_��������>J?���G>��2g�����)J�7H�N;�G�����I�A�crI$�LG��v�3;�f��~����b�1$����S0n��4I"�A�8�zn��0�$�p�Iz�}�E�5�S������;����O�~&s}�=aB�������rV7,����������.F��s�H�
�k����mp��8������	���a��~Iq5�K�����v�v����n�h`��!��
�lcB��a!\
{c9��C�W���<;%K��������u���������;����'��]��������fl���I?J���n��;��<�:����~�W�g]�Z��vukZ�����������K�����|�n�����a��'���-����)$���]�(��w����:O�VgI���o����i��h��#���v�T���YZF��F?��o�����~>���"��c���z�"HN�@�UQ����b$�"��"d�P�I�<��W 4D�����|������"r���[���un�R�R�Bas�m�4F[.C~��hb5��i�lZ����	t)�
Mzu�H���k�I�%P�7��Db��9a�X�{@����r���,4�-������R��mMB��a�Xmp
@�@tC�,0�e��Pb����f6�|$���o��i�j�P���m��>����$e�Z���^����f�S��uV��EY*A� �X�yH��&�������R�b��%@�I6fjK@�d	8.�
�l����
�@s!$�D�!���jT3X�@.bC�N��KJ�N����LDEz���_��g���N�����U�Twk&f��#t
'0�cb�)"3*hR{��
�a���Bm�+��3�a��H�#D���Pk"v�8yQ	�Q6I��`A(8a�E8fJaK���(0M�2�U����)��H,��C0�1��E�B��`�#(; �.�)��.���2L�YlP�B�
���
V�&�
�bE���dmcZ`W���Y1BNc+a�"�#XA�6UV8J��J&*c��
r�!d%)1d��/�11n�X0���Xsbi	$�BI<q�1d��!C�sp��j[$9`�,!��!e�ab�;�Y����5�M\������"�����5Q
��@jA:	 ������2�)���j���?�?����Hv[����6�������*�,����p�EP/_��#��,9��H����D8��&{��{�g�m�����AA��F�-DA�+UH(�b ��F�6 
�_���o�-��J[�O��g9����1�9��6���������6��xp����su9�n:��GSgm�s�j�k�f�SI���S���D�r�����9��I����DU����d����]�pw3\������K���]_#������q�p2�2qP�C�`���j8�=���cc�o��B��C��={�D��t����-��pNw�����w�m�w�b'��+����"lc\cm�������W�m��*/]�wu��w]�w|7pwt��n����?py�v����^��]�������h-�;��=y�@�{x��c���P)J[��(�" ��XV��8����,i���M�UX�0�������$Mv����lm��"����TT$)U
&���m-�D,�@MP@�����I%4eVmh�H�H`m��Zmh�$�HHHI&a! I I$�H�@`a���@$-l���Hi6�@U������=&�a�������}<��>{����!���f���o���[m��wp�w�	]���FW��|�u�U�1� �EEEA|�V�{|�9��?g@�����#�_4Ty�����sk���GB��������lk��h���&�����ej�22��s�o����p��O$��=�rs��)T��X��L5����U}w�6Uf��H�� `�=�o�}���l�^o��[���]�[�2�O��ce���p���R��Wr^I;	&�k�p��"�[�kX�&��:;���^�<53�t)���2�[���X�s�Il�g+���&9�s���'��U��������)[q�8)�K��h�-MRP�Z����(X��Z�RD�4eB�&),F��w�(QEOa~SF�HTh��#D���$��30�&A������Q����T�):O��C�f�
%W����>3�O��_����N[yOoQn��@��1gU�#��T�d��.
�=`��X�}b�R=��p4������wi�N�Op~>���r�pf
,z�8ob�y@O��G@/��_g�
��>kK�$�"�B��\�$���.#����-�s-���0H�E���~�4�Fat����������B��s��>�-\w��J_����U)K�:P��Ti?����I�^�M��\�C��8fa�j���M^�^�U_���M�f2�v�Mv�p�>H�����3��������_�����VS�k2p��W�<����p�.��;NO
v�1Eh��_0�� R��a�I�C���I��v�NI����H�t��>���w�����W�A������2!+$�y��	6�ti��
�d�����?BF�<���8�^;<p�������<��
�
��;\��C��v���z�V�k���<_st%Z#��$M���A�f���2����F�
@���|��D�R'��y8nj�m��@�D@`fffffffffffffffffff?/o�U����|o��m�^�$@W��k�����@PG���{N*�H����l���6�f��<���j������B�������'@�A��0k��=��q�����
��E��&D�
(P�h�K#�������-G��O��G���wpk�9�,��W�aQ5?-��@�&Vw~����y���Dg����C^��L#�x��p��V�6�^6��?���J��o�=��Q0�9�vF8ZAN���j��a���&�[�sCCZE�}������03|k��&�nF�L�����,E����)f,�����k���aHC7?��,=ny�S,��`1Pc������3��$�}�/
E��I&�,�!�
��zwq���U���V�Vlr�������%�=�,��Xs� Hh�����2������$k`��O�XO��y�vj��K���E8��Y�9�uK���fcj�B�����'������F��n��d�
)RJX�#��=����c	��zED���&[�
u�@=@�9�*������u:`��:��.�Q\dU��_�����������S��		W�3!���?�t���,��pt���$�+

zh���4+%�*E��I���k�l����dOgm��l���j�^�}=��>�3����,o�p���%�KNFEu ��������cS[|Xu
d��k������[ii�i�b����0sq���n���H�n�A"i�,�@���f���RK\���Q�vA�@�a��k�d�KRt�  B�:
d�r�!�+J%�(����0cBm1��AE"���	�H$S��)b`���J�N�'i���S��I.i�Jw/+Z��x�����:��*���:���\���m���z�zC��$D�0)4"p�kw��@ �3��s���!+`�gf�H�����?���k��*-p����r\�?Ht�����NMd�Q)��`:vmg��@��X�
��!��y�*���]��@8�������@�}�������v����fr\|�����_���G��U�GE*�LQ���;�����z����}�7�<��X��|�5��H��l2D`3I8G7��?u������D��H<�0��I�--)D���������pQ�������^y�-���A��IZmQ/�����s\�^Abu��3K)��;�;����@a���V},������0�4@��;MF��������1�/1�t�v��������~����|�W�x�������$I�G�7�M������4�v�e~7�H�:�'������X��!�w�`��_3���t�e $��"g:oZX��?gB�[��88�n��q�����D9�!���s�9����e���]����}�R�������L#�#��H�}�n�[]�n�6��n��v����_?�~i[����7�?n�,�����=�j-��������%[#���n�,�����N�"8k������~�R�����kk���h�D�g��6;VS�:<w-^��[�����n
-��j�D@�Z�q���9\��G�u_?�t#����k���xM�zUg���^�7�6��F�g��_�Y`����cI�3�������W����'=o`z������t���l��>��?� �`�Z�2���$���KUo���� ;L��L��
��ng�'*���]�U���?����K�����[N6�M����L"�o�������m��5�����ry���Q�c�WV_|2��I�^(����6��p3��h?�i �=���Gx���Xc2~ ��YD"�����=�y!��q(�7Y'�P����@�v�*��@��NXm�X���Pxy-���[���E&M�'�;��n}M,���1
9�1�e����Re�k0*6��j���{y�mh\����za;+/�!F"�����h������(wi�M��A���G�Q���v>���+w/u�w��?Y��^���'�_�C�P�D�K]�2"5P�O��+?m���1dT9?1�����;
�����
�q�3qi���c#�\�	V����4V<�����<����V��1�p�
5����=D�=$�����8�Iwu�[���n<{�;���s��a*��!�Df0h`R8#+�X\�-h�������{�gk���X��Q&V@HA�	+��U�5H��Y!�*�u~�����l����h>x�������e���v�3pP��A�65��@�����SV����DyOF�l�GD�#'@�1�+RZT���P�����v��xf\�u���uVs��dChP�i6���fN�UhXJy�p`�:��h���������L��%�V��k(a�c�dY�\Dyf�o����U7���@I�����r,��u����p1��"K�b!:���nr"C�D��M���L���p�c@�$��4�F6��F�1�	jL0�P�wae��6C���)���S��xHz�1|���9��tH�$�� 9��,��o�������c^j5�N��|@���?/���x�������
�c�����
�] ������<]��4~h���y����H�?����<����<xs�^�p\P�s���\e�I��T�"U�������?������4���o���ja*I� ��$/hA��u;Pj�?��=�{�A�RN�$��7Ad�����}��89m����f.O����b���w��I�xv��&�,M���|	�Y[20'/
{������;�Q�����R�!�)�&;����,;	�6�����A!�*�/SDBP��8�Ci�����`�/Z��)����6D�]���'��f�ncN\���3�L�$��:Eu���@��1��l��Bf@�Ah�^�5Q�u��G�f!�_}���9�fXn@�C/����3)�@�cC2��&8:��-=��%�pZ[��s���>����������������f`A��~Z�)����H���?"8����/� �i���@����+rAj
Ph)��{]�m(C��H���L&8�0O �/=`^ip�N1�����(���L�������0	�*��_�O�����f����{�����X�������}��8v�K���?�:�����2����g�J�60
#E�T�)�FA�z�E�,4ZP�g��Hdt����
T�T0��$/����;��k��#���4�-6l�a���4�fO��{<PC0������ggf�����CCoB0�\26Y�v�R�S���g�|�o~e�q���6�2��$
AB�$C,��x�.P�����`���2�;��;����v�$E�y����|�E���P����k�H�Z���\��\)���-�5�����L��S�@H`%���bUeMOO')�O��s$�
X})���O�#�������@��Z����G>���`1�������:�6(T��r��Xuf��x�6�-�"�iih����Q�o)v`�9�-;U����c�����]���_Z���PT
d�K]���E-JN�e�\�/��+��Z`<�i��%f@��c�d)�z!"������<�Kl��IJ��3335S#�R�s�L<#��o�q \����<�x[P������MUUs'u5b�����;������}x1�@&0����R�y4,���1d�����R�^]y��J��SiU�"8�*�����)�`��?7H�\g���7y�%�'�:]5VG.�����N"i��a��$�#�L::���OG��pW �!�}L����SS������*��J�����W�:|���Qi��}�������.�"}����u�Pr�[��$��V:��&	��g5�w�U�WJW��bN|�!��F�0��]C4����#i5�&�;��
s�����F�r�E�?�V�#
I�l:�A"��Y�Z������4�luoa�DOy��)�d��|�����VU-}S32J]r�����	��c�s�����[b������Cv;M������Zp�q�������������c����=UUUp8?��[����9J�3�'f����[7c^�������ai[���7�@�zB (3�wg��w���^�I�^b���I�Sf�Xq�62�?%���H�wQ6f��hr�����s�b�+��KiJ�1�t���0�g`h�D�j�[��i�M��z��9Z(���E��U����'��bi]����u	��D������J�1�	����&3ITla�F�������)�����h���g�|I��5��> ��Y��J�E"�����$F>�����oxv��*�	6�.��:WW$��[C�T��=~����������Q �m)V�N����XC�H&7�K�sq��G���f�&i2����	�B=Xf����W�Yr.�< �&@�\�V�C�!!XM:$�r���0����(%��O|�v�(Z
R���Dw��,��r���(��lh?�ZB���&a�s������L_D����xP����#c��.VW����[�y����0)'�B�,R��6��I�E|���:�U_�G3��������9��$v�
�EWo�$B���� �jA�����������.�7"(N�a�\z�(��2�� Kqx�h~�)y4.��n�AF�
������O��A��6d5���Aq���z7B�h6�|a����Tm��m�i���@{�������W�U��H"�.��tp���`����.%�H�R/@��fff&h!�\�wNl�,a���&8`dzX6r�����+7+��d�'tv$'Q����?P{;=��������
����=���j��}k���[8�8��t!;!����2U5�=$2Hf��������v+�,6�,CA{f�F���^~g��uvBDA�#F$c�(��J�J�j��Y$U
��]�u��]C�8���o��@(Xu�8�����~�-o���t��!%~Z���``F�� SQ��������@4����1/�����������.��CL$�R���Ld��yi�P�{��O�+�)���(1�k\���P`A�,8�h��49�Kc�?NZ3	���fok2���
�j�����BfP��"Z��b`��A�B��F�}��Ik�E���J7R�(��u`P�(�Q&�P�Lc7'.�
��wLYF�Z��eY�75J�2�l�T�6WW�S������4m�
��������<d�
�*��������E8rm�\/�(�uop��k3�<�z���u2u_�|�~�]A�$G��L5��M��LN��Du�'�D���sJiJ��FN	d�W��tj���V%�_k������pXn��$&����N������0�l�2�DNt��g���/�����j��=4;
'ZsR^Wm���h������C�,!���/���|��$��<�Q�Gs�f�D����u�huV���A�W7����������<;���9�]��lp�E��A��_)H��<6g���[P^�E�u���.\�A��@�ca3Q(�
m�������f���������#G����p>g�y�-��n�vP�#i9�����C�6��=���X ��|B�������T�G_��
�}��O�d#��~�d��m�>�O��~ep�"4���W6��/;���G���\��c&���+�����l��71u����s��/�j�!�o��1]7�����Nwv�q9��]fb��9VedQH	>����w�r�%,Xl�����@�hg��1�N`������	"��$��6X��
����D����z>�T[��x�z���3�8�� k`�8�md!��m��e�)&�����>��Q
nT9Ot&��	��|��������Eu�A�mfh��P�?�1���8��	"Ai���R5����q�t����iuJ-N��M�����N���5��2#1=�D��A��?	���	�:��Z��
?u�����4vk��}�=����l�~�w�T<���kH�z!��a��9-�S>���n�� I�����������
�5y�j�������s���9�i����g����7I�h�B-k`E0��K�����wz:
@�#w{c0E~
�c��u���'�e���4��:L�5���������Y���u�"�5k��#��Kh��/�(a��~V�2���b�a�43�`���������R��9�{�G���3�~��]#Q�N�7�**�76����)[��\xB���A��>?ExH}6��	:
�>�-��tV�6�M([��d�S,�z�wx�`�W'��#�Qh�c`5�;��af(�p"
/a/���:H���������U�C�L�p����� |Z_���y{-�Xq�MoZ9����=W�p�M���J����������O(^�{�=����gg ��)�X�F��������n(I�1��j2km�w4F������o����x�u|$G0N��A��Fh�}����j�����N����7U8�F���+�jx*x3�/U,f!����\�{��L��P�yH+jU���u:qo��Q��q�F��E�.���#aYx�e�G�P�� q6��zz�/"	D�xs�����H���M�-����K�U$��$�� �i0����21.D�(�Z�.��7�&mS'�!�SQ(�N���56}O� 0�T#� ��7��8�s{�Z&`i��s��q�r���\����y�>s��cT���E��;C���8H�2�O\�� �+����8!s���~�0���$��$��>v�-(Y�5l�����gi��3H�<��@�e�,�B�j�o��9<6��*Z��^���=��|�b"j��s��LD/�v�Tp�jR�a�n4���
kP��
�W���H")
��9j8�'
��>��b7D��=*��Q��Z�t4�X��.�J}6Q��t
�[Dl�@V�����;OG(`m`��;F8��7�
�v@4��v����R4��O��g�4��4!�D!�-.��7�Hc��BpnP�I40����o��"�Zx���SL7���@�>3����&$H�{6+^}j�SUF�i�����g����{�
f����W%������i�M�),&g�o`��t��p��1&�]���'���<1����ac��E�����AJN��zc4	�Q3s�:g	�j��	��WRhB�!���r6i���`���E��b(2���sd�����9�Q�-���q�~��dN,M�Aq�1����t�w�8;�N';�D8�\�%
@��u~�(�J����������+)�@�$I�d��������Ve
p��eqxr��,�bD���k��H���Pp�5�-:K��������M}��6I����l� �o�Ru����>� Hi
���\f��ewm��P/�����<g�����6��|�
��i����n!����������p��g�nPb���1�3i��}W�r���>_�?�}�333+1g��������������ffb����`���!^�>#4����y��I��n=�jGC�jr��336SE���}�EA�,
v�V������!,��fd��P���u	Z��)�zA	R���m�=�sVC�or��+��Q;�����N��Z���E�)�<@�BV�pyCmb&����j�C2�����
w�IC�2f@����x��)Z���y��%>�1M�+ Z<��#��,b��������\�:p�i�~�.��paJ���aJ(��������)k)�������AS8�lKB�RC��J���4�h)uP0�<C��LV��ia}I �um&�rL���*q��p�v�m���<R9TI���Y>BKdt�N3�b���i��k���=dkdjL������	����� Mw9���maA���7��!r�T����!��q�*(9��eBv����-	zZ��#b���x#-�(�E0�;�7�4�Y����>>����}�~������(�	H���'�t�W8 ������N�/��8������=;%��_86����R$�"���M[�Ha�b���m�^��e��.�CP�N�HD�C�c��\��
56�Q
P���,8����u��M/�D���}
9Z�]i#���2]��t�v#�J#�F:��?I`��3#��M��x�VD��I|���^87XfL�d�sT��@X�����$���A�$���"�B.�1
	�Yib<��f.o?��#.����K�b���w�������� ��;^���`���;�q�Y�')�+emVvs�J>2x����=�r���"\%r�!�zM.��:R��I���e�1�EB4��F����\���}�)�D�J����$������9�Y��K&!� ��j�;M�Zj��>�G���s��x�4��PAU����N�Q@!�)���e�`���{30��N����������
�!��!/� ����� r�:�������g�����H����K����P�C��!�DY#����6���6�����.D�SFo��h�7���d!�q&���}5���j��G�H�d$/�L#�h����-�'�4N�a���"��B�k�c�l������<���+�Y���C��lo�q��������N!��pRC���*!�<��qU���G9�����}�<vC��G��9zy�=>0��r��'!��w�/�e.2�����-{���a4Y�)����MS����/<��d�
��|%g0�*m�8�	Lm�A��"?e�U���82�!ffj��/a�W)���N=�/u�'���s��� ��D*IH�C
w,@�.A����N�9��}_�q/�h�d*��S4]p�7�c���� ���OG������,��V?>�b��~��3��syjj$|j_�?O��=�&�5woN�R
{�w����-�'����zCO����@I��>X�|�����}&QSpP�Y�j���	q�
�C	BC\KU�8�&BtT��{���Ky������l�=V�o�_�|:`�2Vo�K���e��xt#���p���-&���������n�2U�*���HK������GW��>�P�}����F��d�	�;#�i4���H�:�-����������BO��{[�������������C��L��s�E�O&��)���G�D��`�fd��c�����������l��Ush����b_��F�Y�1Gq��������?l�;���*�/�ZA�}g�L�
g��{�3-"WFcf�����9~u�	7��1�v[�+������sL�B;���Vh5��29��_7�h4�+�=s2�>-:�ho�p9ce�4�	W ���T��$��o��ArG����G�����P^��G�p�<#t�b	11��������5�^�|_V���5�����V1����:Bu�V�>[l������	Y���8�;N P ����wn�V��9���1:��P��&`��2	P�89t!��I
d�[��c�?��;�Y1����7��;�=������:;�*^��m�9~*!<+����lFRc24L�����l���i����U�8��"N{7���9bB�w#�T ��c����?���c�J�u� ~vH�&�[@��KE�c�uq�d^2u�(���~3���8aVf�k4�#�Z.|[��^�w�:����+,,�z�����pw��]au�H�������i���x���9��]��|9=��[v�;0��;�%�n���5m�
�+�������"xX�V��O���J6�0v��n�<�o{~���1�U��I��9�z��p��YhC�I����/y!�!�DO6]7�J�
F�����7n����3K�Z��m�^s}�X���u�<i�l�iZS���72Vq�V��G~�������"t��O�Y���{��������,�����U��yDJCE�������������yA���De)$Q��?�\����Da�8 ��"�[�%*<
�E��+0�b,x���7�I�4t�\
"�D$A�o7��n��Q����c����5,����:���b�&�����V�686tBL������R�+�w�g#���~&��=�_u�a���X����ny�8�9`���-�3�aB�\��'nE��'D�����%���9�����7�2����J7
5k�\^���N35���?� ��|�����n����N�e�%1����U~���_������b?��v�����<�&'���������	l�&x:,H�oMw��a�z�*��}s���F�?g�������m����������F��������y�����C���k��rd<��m'����Z����.�]�o8A�bv7e��1�����cz/U�����}VP�e_�EuF�K�d����z��x1��\�1;�!_��,�<=�s�#b	����&����R����X1P�aulj���Lm���������=�@���=p�����V�l��_}���8?tNy��i�am�rK�a�_;r�����j|�3�CA��������D���Y�S�������k��p�o|e����Q���X�������p1��e#�r0������n���3��hILom2&�_������}���F�6����y�k7�_����������!-�&|��"|c�����K��,HFS��G�=X���m�_
I�C#�,�~xR���Ko�����y���>����|��m��>YO����T��|�o����D���~����l��jr��f�C��=��������(|r��"��f%�2Hs}X=QY�)Gum��~���b$����s���8���k��3�z�g���q�MP=M�Zg��N_?��n���R��:�F,���7yt����Q)��da���������)�|������q4��$8��'��t��)���-f����Lv�?X��j
S���dY�2iO�G-�|Y�0X�d&����������a���c������C���d_��^,�HC����7�����_8I��+m��N�J�8c�������?7���.��A�~.��IBL@<"�����������rj�e)�ib%��#7�`�a|�g(��]�2����x?��e$���l�~�o��(o��Ev�y��,�]�a��_�w�M���@��(4[�0���Sq���v�L��b�-3�)�on�%cJp}q<f��N;5����V�g�Go<e������SF������=�{E��)C��&�?D�y�F��Da��'w����:�+�p����<0v��[���n�w������������H�,�@��c�����gx�l0}%�jq��fcZM�db[����A�c�K�8�Gc'������P������$�#����|�������Oe���zcl��$����m1���@�\���Q�S��2Os�p�I��bN��M����.i��������zDc��@xf�$$7��
�h4����f�vg!�E�2CE���:�Xf	��%���	`px�J���f�tp�
�o_��2\C&BdkI��(�#��H������������1��������B�Ltl�P����6�3���V���M.�r�����]���TkI����Z�EQEV-�V �(4Bq&5����
6@�a�����m�	,����g��
	B�%��^@������)bb�(&�����*���TT��A���E��"""5s�"4DDDDDTQ%Q#DDH��L����� 9�HUQUI��
���<�q��8��	.���v��=���<mh �=��8L��I�q�ii����z��+<Kr��#Y���%��m%��N�.xo�����]��J�������s�����O���y�[{����cI�����-�?��Y �����a|}��Z�����I�)
R3�����9/��T_�[L1�?���?���$y$o4sO?���MtP�����w��m�[n�q�t�2��u������xn��y�����V9������}=_r?��#y����5%|i�/���;D����{����J�0���,�����~Q&�
��C$� ���NG������g�==7h����YlH����WBT?�2������_�O�j���,G�"���,*j���Br	}� I(R�`!/�������YN��7Z��$?�~��Q�����-�s�R
_��4dd���a������5)�W>;q��l��I�I����jm�����5A��l��4���%�@:�rIk,��Z��C���8��0���q�`�gE��1��lA!+��������W"8o�����B��"$�����[���o@(>}����0mh��
�1�$�[`+E���0�h��v����o[J�"���:��I��N�^��of���Hp������E-�\��R�2������O�f��R�"x����f1K)��������y�s�h��������������������&����� @����%���L�-�3����H�R'(U���7����R1�
�����8���1Q#�����u�S��������2��a�l�\����a�fU��#R���6����d��0�1


][��h�hk�����2��*Q+��K\H1!�Z`	�Z�:��
.�F(b�$���v�&%KD��C�^�Q?�L��W���w[���#Ser�ga�c[�aV�'�a�&A'	-�_^���{�pzSK
i,��Y�y)�B�$�Id�?q��'�n���a���������z��N4Dg��`C���c�]����5J
J
�C]�5�a��0���R�T�UZ����K��L�"N���?�Zp��H$�d`���mJXT�����������������������o�z�^S����D�v����i����l%0�)�;%��"��(�"��(�"��(�"��(�u�u�t$�����i?o�M'��)aF�z�����o�9w/��&T�I`J
=�	�Do�J�&bI`�_�th0�j/����"����/�?�P�CP<c�����k����/n�moXw�s��l�--	mT�_UL�1U�����Q�[G�
�(`(hX�f�����q���P$y!=���t�DF+K��4�:��c���h9nk"<;U%Q%Q0;�pM��h���1�J����R�$�b#�aH(���`�-Z�Se�44�m}��G�6��CcS��#��xl��(�A�tp�8k���bg��+(� YD�pT��am����Vd)�*��gX1��^������dE���!�9�B�����x������<�?II�y�a�vLM�T�J�O��V^�J��%����yL!D�`J4EApm,���%�`�*����m%_��>o[�����wU|��M�K&fII>F��RQ{/���I$�L�d�&L�2d�'��L�2d��&L�2d��&K����'��2d��&L�2d�4�2d��&L�2d��&L�2R�L�2d��&L����:d��&L�2Ks\���~�W��S2��n�wK�.��st��n�R�\�K�����t������M������:��[��]���]����8a�{40������4�*�EE^�!�����#om����  �z�x��(�Z�W���4�
������}VQ�@%@��>��R��3��$�q��*��E>�	���z0�����/��;!�W�����?�1������������2��/���j������E�����Hn<=B����h(b1C
��[fF?����r�����������)9=���qJ�i�pY���[Ka�����F;.8�,���1���wO�xL�b�A�lk����������l��d��}��lzw4�����%[79�&�I#�R��"|�?���8~��_�W��D!IK��{���b��E���<?���a��������QQ0x��!C����$��N���bH�w�����b�� �M|��v��Q���S����?�d������j�?|�F��������.!�������"[Ci����n��T#�A0|��,{�`���)�$E%������1rJ����,���z��~���&+vO.NMN�Ua�nI<��|k�x8��o����%"Y�d��6vI/%��I�8.��3I%���q���<N�O����qh�C���^2����cb7��g<�T����q���i�F��O�H�k��>-��'�Q
������CP<G��|3F���_�����}�{$ ��l�X>������/�C��<�����`s�O�y�nI��+X�3K��n��(���PjaA�1e��P�5O�C
6@t����u�@�|FP�y�,"�g$
���#���Qj@�Pa�����F��uCX7Sz��>,Ly.8������u�	^��b��������~��H��j�C�Z��3�1k+���|,{�w A@wHB�������
��5���r��� H��c"��FN`��gK����K���N.�f��db��?x��U�M�t��mT�TX`v��<���;���V�w���(^,y<8E���"h9	�S�]H�G/��P��p�$��#Y��M�u}�
Q�%����9�+���/�k��L�ky� �0F%a�O��{�0�m=��a�9�����`��!kp~'K����`��)�N�}�?�[��R#�y������"Z�u7F����M���i��~�8
h0����$�v����2
����C��Kv<�lF!����:�"���xt�'�e��t����=�FE���%���a=#G%��y���=��2A��� ��������L@1�R�vQ��i08'!��y�����Zb�t5K��oT�B�����K-u����qQe������*c�-�f8�s�`�R�>��q�r�����x�98��X��`hh��0��
�BH/
x��~��+��^�`c	�f\[�'oa��_�p�T��������}�k���e�l���%�|P?�����0��vJ2R<��������I>I4s"h�����Yr H!���a7\^�T?�	&�v�6=��,W�����.��*1���p�]N	�%���Tk��%YK#b��8��8>?�B��?[G�� ��""u���!Vg��Dh�����Go����~���M��qs&�������O��L*�$���_��������8?��m�'m���������m��~,���������95����n���Vp��f����}���J_u��
hzew���vE�}?v������&�������x��?��4/�5#9�m<���������s���A���E����H�?gn���-x'���t[�=�5R������y%}O'���6������@mOJPH����_��������C��R�5M�lx�C���IV\U�����(�'��+q����(7���@�.
���cf<�1�-)���[m�����Z�,���L�%�h}~����~������N�_��S��/��H��o�>�?������gz��H���g�������������w����J0zY���x��4�s�o �����F�6�������T}E9,��^i�c�H��+q{8���htC:Fs��v?n~�a��Gm'��o�sNU�=4�t5k���s�(�iH�^f,�7������Tn�\�P�	G����"zXZ��~�GvmWoi���l�6}�c�z=���M����\#R������ z���������E����`b^k�����/�^�
���+X6�o���@:�/��x�:`?"��p�
s��P:
��������+��&���<�����!{
-\o�04\�`�,��������;�����$�I$�I$�������f�+������oj�fFP�W��o{�����Q$���k�v��]���U��R��v�"�zW���a�j�R1�(C�i��X���V��L��yl���>�|k��xD���<|F�HE6�d���B'���0:�|�ZL��a�Qt��N&��Y�Fng�i�/6z�����e������W���(~����"����O��l��t"��2���33.�^S�)T&m����*���R�WS4��i��vj�81��s2.�DzeE���1k#2�333.�[�S��Ss/T�nj������'��)2��[����xx��dyz�Y�$��S%t��k�����V<�X2�d98�j���wb�k�-�Q�",�b�-��CI4jbr�S��DcI��X�%����R0�$�G1�`����F�������.nd5z|k�Vm�E����0*��C�M$����I�*lMU�6ffM<^f:kR�	�S�����$S6e���Z����6�_9y�����nY�\8���1��A�[��j|�|�3t��1d��B��3!���x]�I,��;#y)^T4�x�1Bd*�v���fP�G)�,���*i\��cDT��*,����S��d���(�+U/l#&����3��(B*Z4�*Q�`��uC\9jq�4Kc�d��jAB�����%��O,]�$'M)��l{�w	�*`���uO�]P��8b�U;�'�!��h����L��$
��(K5���g�H��A�0��������d�����4Xw���H���r��D��<�|gY*��2!�]�U��a�0+l)�^]�(l�k/�������re��,x�Ibr&�3[�X`���<C�������A�rQ�wd���xzw�B)���*��cB��*�T`jt� SI����f��$��h��{v��C��y�vE�e����Q3p)�����5QxC�DE3+�QL�WmV\JM761�Xf���P,�=��Z�R����
���H����/"�A^=�l���=��iW��R���n�x�X������W���!y�O�t&%���^�H>�v_i����A�`2J,�Hf�BL D�$L+��'�9n���Y�����;L>�j6�)�,������L��
��P;������z9:���]�#�d��$�9�������$?����{>�A������!%����}+�\g��=���?q�/��s�&`3��sM��8k��o���������]�9���\iuA �I)E�r�hBB#�P����<������`2��k��� ((X'a�����Q��>M�&(�_uP�
rA�B��K�l��QM��6���t�v��M����M�#�v�D���o�.yHz���r7�I������Y�N�U5�6���*���i�����T�U;]V"Fj�����d���g����$���_bv��K��������J��yooM��G.1$�B�����Tc��T�uRC+���=����W��R@\$��=�S�AK�"� �����&����X�$�vgT����m�=�A4���������<�&}���=�[�E�E�cw�Wq?��8D�<�����5j��q1�v�es��>i����X��r��w~�u!"sR,-�Lk�/sD�Al{����fe�o�������?�_����"GSt4��K�����J8�#?��ZJr���xy]�V�NI�0���*� �b�D��ukW:\4`��T6��j�o��oI��%+ 2��!N+�+
Q���7�$ �����h��#���D4H<����<�\�1K
�]A���iafrP�V\�S���3�PNZ��I\DDv|��@5�,vsJ������o{���"H�G�-rp�m�HI(0/��\������]��o���b5�zn�J���^w�F��yd��^��������i~�E����M�9�X�.
>L4�E��u������>IQ�n(��"2���QZ��h�z|�Y+S���c7<mR�������jm8]x������Mk�b��Q����`��
7@�,v��p�������?4g-�P,�������y��.�E���)����F�_Oc�m!�_K��s�s���/��!c+�	0%y��=��4uh�V4�������!J����ux���p��������Z�L���<2�B�v3�M�'��t�X���O��?P������-�U���)�r>����}�`��s��}�m��i+��	�����V�\1�N��	�����''A~}rjp��v&I@��i��\z�����0~w��s���8�=)����"�:&�1��."^���H�������D.�+ BR��<���&��:9Gp$�;�p�pvv'��&��I-�o���)�n�n�F���H���������X���/�����Bq���PlH������SS�n3W������\�m��AE�	�!���D��D��u��
���B������'��rc�z�qamp1Z�i�-q���S:tm[��:c1qY�[�����D�t�mH2V���P��y�k
I ���%�;�<�q�������m?1���O�H ���N���F\��*����%C��������v_��?��V��������������[3!�(�����h�!$�����������"F��m�������a����F~��QRm�X�p>��IE10���nlLC�S�1� �
����?����AEJ:�|{��������
�]����&~}����_�����7��$�8Y���o��uOZSv�M�����7L	���KG�d���E��������xS���7+�=�J������=c@g�B$x���%P������4���9�y���L��m}L�4�����W�_Pp���ie��Y����{7J�=���b����_o1�u����
���'�[I7
0N_�$���k,���pO!��5�+MG=8\Fd�K$�l�t~���$������f����_�2P�H=g����<����G��zq���S���Z-e�wb�����F�W5�]H��M1���BY���[����*����i6���Y��;��Rv�������:w:�LTUO�J7.�c���?����{�����%3@>�O��#��X�MV���,���i�_*�Y���Da�����I
�.r�RPC���:-*lL�����J#.���f36�fSK����C_� �}v@�:K�}�^�����h�W����� K/�?��!wP S���I#���>�����}���z���@:�/�_�2l����C`!���Hn�X{���(gV���lNpo��w��t���)��O[k-7
���	y��bH#&��$�I��8�:�o���1se��;&��������a[�������$�NC�d����x(�K��D�v�����4<���mD+�*W:xYi�4f�p�,�9x���;���kc%E���<2fQ�&��ff�&����/�q��)hJT��.ZM����^Kl9s_j���
)�r�KB��w{�-O�|����b�^��?I�77�f�ca0P�J����y&�#�=�����a33��#*M� ?N��R�<"�#���)����]p�����J�5R�#y4��{�x�������}grn\	O�����e�(�cct~��qG����u�?(ayq��C��C��f�B�Q^upv�T�8�y��a>HN�'��B-k��v����c[*"x�M-trD�NS�v���boy�,��5C�M�$9��^0�
t\��@,�E�HI�if�8�mC� ��o0�PLo�������x���b�z�n7=���(���I�\f����
�;�&E}��$A��fj_�f�����-���>����j����;�����8f�PL���$�I$�}�����
_��x:4��
������}�G�Q=����=w�H_���eM��g.8UVYY�E��B�����w��/��o��;?�AW�S��e���D�	tY%L��������	$��1�qm��,�$�W�� j�v�D��7�� �R�������rk�_��f��q
�X���M{�4�;ZL�'��t���~z
��3F����q�UUU+����HK���q�q���m1�� �� �H$�B/�hx�A���n��a1���6�*���������!��vz�����:$�4{H������a"7{[Kiy^����{��x��vKKO]U��E��������=�xe���C�$���xD�) ��0<Ht�$�.R�����U��tT�Km-7X��-�kN���5U�}�r�]���,�����T�m�c��(��tH�	[�0}I��qr�$��4��-"{��o��������~��/�����	=kZ�����v��h=������G�����8�w�p��s��z��Qol���Io��P$�b�""I/�������z�;�y�\A��kx���b����g�jD�${*�d�6�^g^#m�����_�m������mRr���u��@�w0��_����26��������q�6����|��
�z(���&�l���$#w,!J,��B���_����O\K��g�l�jB�����NN�[����f�#�7����/���C�w�F����7�NnC;E�g�qQ�"{>�XE��r7 �-��C^G����N|�9��v�F�J,����,�L���(�g��4��+(Z�����3��U6>T����1QQWW@����W�0��lcsq��t��%E���Af���2>=KBM����r��c�@B�d�!�`S0�kD�f���@��*T����Ab����jf��:������[� �*������k���Vv`�m����m'�������C�������@��]u�p���:b���
�'�9pk��N��;�Y�{��Sn'�rv��Z���i��r&:�."�t�hk��}��q8�X��8�X,�9�E,f�3]�k����J7��d����>R�3	9#�d�ObZ&ZG]uF#�K��=x���?]tc9����c�:�e)�FE�kwf�[�k!�f�K������x�]�S(.3y1�
	��D�<��%�.w�&]����Z�I��v5Z�^���91������&���]do.��9S�2qA ���������7c*5.��s�T'�r��[��������
P�����7T8E��#�o�m��h��k^����}��$����y������~z���w�����E�����!�����#0l�S2"�L�i?Wp��s ka����O3���{r
h�����{
����c�Z��.
�}%$;��6s��C�v������|.�pO���9h�OOr��&�Q�b.���Y�.������/j*/%b�J��g.b2���**�[)p��k	p,����r����,���xk�j�����w���5�q�?��s5�������\`������+m�y��k��Z��"/~X���w:o����]f�Rt�::��@������~W�9a�r>�?���@����
,��4���u��;2�vV6��o�����d��+�P��w����5@�~dW��#�=O��6#�`7�A�>�G�������i�}#��5����KM��Z�yt_�`:$y�����`��5�B��d�}O�2�����46�|D��O�k��A�w��<�yk��g��MQE ��oYtJ-;���mn6+������\���`�^�6��=���Tvd�}�A��t+��kA��N���I�p��c���	�n�����]^3�p��f������U�
���=�i�<Q���8PXP,�o�ky���~\������A���$9�z-�Q�2=�(&`E����!�d�1�����������0�*�L���������jD������D�C��l�����J����@��s4�Vb���ao�14m��i�3���@���Xr�QlE�N_W$*�M4���P�Y�����o��T��%c
C
f��`��v��}�~��@ I$��A1��e�s�d�5c��QDs�N��������q��j6�������������v�V�:h��p[���������g�������
{�_��<Mt���y�S��Lv�Z������[,<u�����	v��B*/i���s�4�#5��3�u��Pg'���� ���P7��=�w{c�������=���7�
�����<���b�|6�����gc�|
Y�������nT�-�t�<=1�Kl;�u�.��7���:��{�� �A q�HBSy�X����`�>�b��!A���	��Am6����37,���s�*�mo�N�����rT����K������r
���	-��Y�j�-�R���DP�0���FE�_H��T�'9T��8�|�'��'F��$�����8qI���D1H
��>�k�5����veBcl�3�c��;eR��Ig�!����Z����e(��hVr+N���K5,�k�a!B��B�%��5�]��h�0`)���.���Ch?�8������k�!�jW�\�?k7��$��E�Po�kY�Y��L����������I��p��L�lBY�C�3�nFe���3�('���+��^NPG.�M�
��[dq|w��v\(�����G��N�q��]EB�8wHY����s��m���C���������>���v���KF�;)�f��y��i���[��e���g:�,�!���U�3I4���V����Y�M��wS
g�T�e�]8��fl�L	Ku����P����L���48F�^��������I��x�����]�,�:M��������n6�4'����������|�;$G�}z�5���t_�'!xW�-�u��M�������y������`��-����.��C3j�iB�a�lTR�����r-;��7�.�
����[��xb�0D-��S��������*r�<	����	)�j��D�h���i��s�4z�7�7�������l��c�{�����J����������]����:�(?k��]�%��.jb<
��{��ze�ef�>�h�`��7*k:�XfW4:&y|g���i��u|,w����Y�#�#V�b��'���<� k������""��5S�=o�k��=�����]���_.ct�{o�u��<��8����\��o'}-=B�<�d,v��������-��/����P'\�?�}�����acA��N���J�k��f�r�Gs�*%�7�p.M"�)��}�b�D�[�d0j���59D��O9O/�k!�g
��q�Y1p��w�	�%���)�������C�S$7X8��{q;r���T�:�s����S��(�0!P�h��G��n�b���p���#���cMR� :�qrL&��r�L�V&�7��w�7t�.nW(�p@Q���C�������7�����fAy��	T�zZp��y+3.�\�M���gb��LUZ
�!�ZF+"2je�M)��b�4�J/%��@�WP^e"!�^*�irU�m�s����TG�2��sD�S����:C#�z���tF�u�P���_sW)f�w+Q�O6�9M�Q��w����cu�S-���'ovE�
x���5����`�;1�0�Pz�e~��!���[W)��Xp�9Co-|VK��}����>�/J�,�4�[GC���e��m4F\D-��
�c���79���/MUv�G�'|�UTJ�����}�3�����<��f������]@QG��R�.���w�����?^2SL[8_��}��]n�*�����b�q?�o�GFM"Su3���S��bo��m�/�m��9a�qM�O%��m���uop�)�Ey�t�w������H�Z������nQ��f�b��2�"haH��dr��(����	���`��B�<��m���.���c�y�v�~
���?�?
�b���^N���|
�L^S��W5����;�e�g���I:�;���%�!��aYx�P�]2�yxn�IY���S��L��!N`E��f8���_�o��������f�_:��1!I7<q��5�)�f����sY�q�"x��^�0v�q�5����o��A�����$=���x^2n���,0����-�[�������S;�D��zt)D���On�{�h�����l<�h���Bs�����P�W\���z��N�|d|`���^<�kB������}I0�����:��;�����]�J��D&��t�k��#��6:=���A8v�US�j��y�����;��*zu�c����y..��\�l�gp��8�h��c�,�{�<7��@�?h�,k�$G8%��Z�C���D"�0�![fn�];E>\j#-�.9�Y ��e��{���Y!"=#!�H�'7����
�7�wf��m��T�����'t��l�IZ�&7�Y���������b������r���cw�<�����WA��Ncc�*H���Mq��V����u8����g�������Ftn������Fb�T��jR�6� ���
?X����#��nf&s�u��r�-;�\�J%�o�[�#����)�W��N�0%��3�3��sm���	U/���+���?^�u��=�E��U�b;�M�C��F2U�n
���;�+`����nb�E���������#n�kIK��>���`�
��;����gsb��19�U`��FD�P���_�c��5~GB<s����r�@��FK�����n�L�.s��0r��!����}�*����v�0f��#�[�Ow3�7\��7Q�y��G]����T#fx:��Ks��7Jmrj�T��ec��+"(���r#�K@��r�����i��������������`��q����Jc0U*�1��q�y��)��4~�%<o�lL�(9����|m�h0�lJ�804����!TO�������9?�DA�����$��MTa��i��RjI�M��D
>^D?��FH�4��0�-}���~OWR���,�� �$�I$�RUQU
�m1��w��vsi�'{�9�D671������F�������I%��������"	"5����$�1i<(A	%"C��;���8HI~�N�'i�6�����I$�I$�K���B�����@>�*Yb���^�@��;����1�j���}�{���;��5D�IQ���?���K�O����t����`���!Bt"���/!��� ��p��������i��!�	���4��SQ�_�3��z�t-��}�u��O��=���k;o�M�e1i��v/���
M�$��������������Y�
��=�v�J���t0�@����w�o`A��p�*�	 ���I��Wx-L�(�>:�	���6�|#�3�t%���=8�$��cIG��Vn����|on6*�f��!f������'{��m-��8-���.!�8����k#���5��,h@�����Ou�o�����lp��]N���
.��zk�q
�v���i(��L��hV����S����!|4<HK-�VrR7� ���t��Pk�6������o�r�C�$me
�P�(���Q����	`j1��m�����Y�`����K�����u�M;y���yDu���%�N��>:���p�p����VD�����g�q��F4����!�7����u|B��������;}�������-�+a[S#f� 7+VO�&"��M���E-u�r�&�����mG�N��0�Z4��C�L����?!�>r&F�l�'gs
��=������Kfo*x���<L�9�clA���~/���t_0������,���'vI���8?����u�a�z��jo"���xHk�������$:�H���e�*L��!�&�cfo��������b��I�o���Eu=���b�R����R��2A���B����1�/��p_?���|���D;!Ex>X��)Q�W�7I�L���w^������2��f�����r}�k����.h�CB.r[�q���
�Y:]i���r6�R��BitH.F�a~��{�p����?��}�����'�����`������%����v�Jm$ML�L�0��o�?�|���	>[I^�d$(=D�plG�����P@"^fG1�*�h��^���Qj;�����������)S&�"KEL�x��`)�N����N
�M�LXbL��9J�a�'���|7~Ga�SB]�IJ��1B��V��t�o�~���W�rKV�RTT,M[Z*��$B���H?���o���G���n�8f������s�4\�w�U�}�]e�o��@�Fv����U ������).����c��~����T:i��Y�C���0z�����e�����Ad�UMtd���v����.�x�'^'����,I}��k�����UB����27
�xO�9��B$a@5�&@���!A���<��m�~	��
BZ���<���:�nSn�rW���%=0�96#�]1�74/�T��)����
��lH%�D���m���iZ��0��+��iN�b�6��#��f��_�e�eF'��^��Il�Gcp[P��Kc��0�5sT@@:qA�� �\���f��O*��qh�b����l9�#�:W���Nv�����A��!yA���?{j��3.M���o@_�gK���i�#���G���<�.�c��d�g��������a���-)p-�~�����7�G���������qH��8�Hp�@vA��s-�"^bN���.�`�u�L��S3 ;d(�C��Z�L8y
5J4e�
5o�dc���w����g����nm�1>}����<�njJP�*���'�r�<�52%�������>�\W;R�h����N%!��r��e�p�1�����[��	r�T���K[RT�9���B:}��(�YGsO�������-3�w�aY�{�v�������*��1���O$�zx���0�p�����dM���~?G��h��f��}��vm������5}g3d����L�w��W����$�#�bE�m����
s�?����d��VM��{�I�d��Q��h$%URE�����wm_��l���Hr��dT��1Dq��`���${<{=�V�GEW������}zD�����MXK�����KD�
�P�!��:O���a���~C$b%�{��� C|���?J����:bw���p~�e��?X��0�x��k�,E9�BDi�������0���Y	����x�����������0t��A����������:���Rj�	��81{��_=D�/���E8kE�Z5��Z�ZR���O����3�0|W�������Dl�"{	�9��rj�y<��������{N�h������m�2��p�uo#���I���']�zh�Fz"Sn��w�����������i�FCiO$|{��U�O�~��uk�(��R�����A��=����>>+��n���5��
����j(�0�>M��$��Zi�]:��
lh����j��"v�z7I�vB"z�Lz�n��,���C�Lt�.�����4|F�PK2O��c?���=����_\�/����#�2Y��������������Q�G>#RN�61�rrc3;�0���R��6U����A�I��"T������|4�T�]�/L�/��hD3����$vu��1^���:�u�d����t�p_n`,��+{���������wv����]����M�������?����3<���)?�m��R�"<F3glYVJ��>z��[��nI����6W
�ynIS4B����I��^iVeg����O j"���}]
�#5�����o���tX�}"kN�9u:�6c�`Q$R�Pi
K����8*�t�lz��HI<
y�Q�QD�S����{�s���p8��/,&�\E�L���f�0�crm	�Ky���W���R���z^���&�Y�����a5�������Mu�T([j �%|KR��]�����5(S�l�F��t����fc#"IX�	`F����-#���1�4����RSfL��#C�PY����;c��I��3��<����9 UH��C�,����'!�	:\�6rL��aTD��,-�=U�m''=NRt��5��V�Lb��;�4�)��Rw8��"i���9������9.�u�����;�:�{Q;��UUB|�{� -y�z��}U]*��mzy�_���J�jcc�'3��i�IS�|LH��������m]���eb�Ri�k�t��P��rp� ��1&F#@�����I�HN��Q��7��U��������g�����W��p��x<�"&6�uR��mk�����m������o�}��
#�0���#�WLc���/��#k���<^*��������N�����OS�	��L7n�C����0���J~�{�������6NzT�0�it�c����8�N�!��T�EQ�Q9��h������A$�!��{��$���?���#'����#^71L�9He�����@+
#�Wn�Z���<�^�1n���h��W0b���O���f����0l`f�LKfLRN8����[��Q�N)�y������2i�zdx�Bx4��;�f��`�&fff	�g1�Hi��<���F���L��[E\HC�F�MPD����:��Bl���l��u��X�eC9�����h4��0Lf���i[�N#m*�u�'I�1�PpSG��_�]�X����A$�V	�G���H�Y���=����@��@�y������=qZI��`
|�r/y���N*`I�8�����(,���
�0�%5��9m�9��XKos�
,���Kmf�L���P�da	�"�0��� `M��Ia)
���]i��!r�����f"���x�������dQI8�����F��^�d�B
��H�)��}��7x��?O�3�K�@?
�}�I(O/<�
��1��%�:��I���(��\����\UB)��RYz����zOD����(p�/��;�����^��>qE.E;^�����;�r�"��N�q�S�'E���n��/�k������������~��Tt�����+� >&b+sd�����R��jH����0��x'�?'^\i�����_�vca#�Xd��,�&������'������|��On�%��_}���?q��41��
��P����,�j��Dy�����$����6E�F&�����6�$p��F$��t���t��
������e�gGX}�����K�d��H�F���n�!����h�\�	>>�y����X�!O���;O#�W�%W�{��14���v��"��ei�<�j��YH_J}/	�'��5��*�h���X�h�����
�!��H��?�>�v��IH�r`�S�:���w�s�|�>�nHRO:��4[7VS�!���m�wx���QeY)dy2O�?`d(���qI!�Z��:�EA+K�
 �����!��HLyE��fb�
��`�>a�6|)�[+��;Oh�HC'���@�����@sw�����m��&�'r�<
JJ'���*��ux����CU��,~w�
]���O������h�F�q2��~���X��rx���0�2m��������n��sM�ngq�*��&���������-V�u�������[�R�.�5���$�=��
"��'�;H��;N����������
x�b���+���^��������UK0q>ox;�Q{��Z�F�����a���4:�<��aD14��#��=��y�Lu�Gv�]����U���{�����
�mD�[1w�oiO���\�Y
d-Z�E�T�8�'��;��n�����t���#��m/��������s�y�������?���n[G����b��@gI>y�����KV�1W6��F�bo�W��������m(���Q�R
���`��A#��H�d�5��pl�g��u�o�;����3goc	�<I���#b�T�
������g�e���g�
�4&���T|��4���J��jr�O�(��\ 8Z�"��b�� �P�"�Ha��j�l�OTp^���=�w�X�@�	�T��wi,���y���8vu��\0��"�0�����g|9�N����t��z������������llc��N�����!Kl��w��r�G4z�7�Vj���*�;�h:-��3F���!��!kZv�I��"x��K����H�h��U��EM���iB�	U	I*C0C
JI2N�I&N�G�+�'�$tC�p=�!�����/1���rE���!��&;�&X��bH��:H���r�����)4|��6c
����uFGJ)h8u3\��B�IH�(,���otl��j����p�������)�!K.,1N�81���X�&��~x8�)�G�f�pl��m���v��1�xu�! ����������V|��;�|�z�W����n0,�
�;C]��m����<F�~�)G����'p���J���j��s�S��������-H2�6���8�G	���:�p����H�s{T�2=��W�v,.��0�R�<�\��(�H>
{}�Nd��>�}�����s��q�}+}W��<��>p�<O<M���@��JS�5�^���C�C<�)�N���
�t�K�t�J�hV�@hJ��R���������/��I/��I_-���"����~�������O#�2z$\j3�0g;�F)
J)�h*�:��[
����p�?����?�������E���p���#�`w<|
�2��AUUCR~�5s���E��s�q�/��
�sF��(jZ;_��Q���c���V�d��T����W�"-�I���4��N�F�#��N�1��#l&��UX���"�4�n��|����s�]���I�{�����@�c�}�k����H|�&M
�=�lJ5���<������:C���Q������&�.8�6c�4��(5�&��<�Ag|�\Kcb�t��A=x��B��4UUB|�9�)��K�{�I����k���q_+����%rJ��4�i.\f�He����q��V��8bu��w
�RG$�s29
�73���,��Hm�#]!��f��nx�4� �v�F��J��"�����a'c���p�u\�4��;&E�.$���PV������N{�uL��^�������'D�������"��v��g=n��M!��T����L���f���4�*���Z�'[,JE�R
�R)/���$�`4\�������m�M"�
����E��-][���%���
��
�R@��Y���oP`%K=>}�4���cs�&[z�����S�VB\�9��6��P��M���6]` l.���Cm�`����B�uff`�:e��
�@���8�gA1�q��4�I���x�N���|>���*��x>CS�>�m� ���|m��*j�U%#L5�����Q�Og�wy�
�8����A�Z~��>�]�N)��_�X!����8~!&����v>R"���������W�h,��)j�U<E�7'���x�9E�����4�'l������������_����3KY";�0�]�����q�U2 s���ddT.7��J����"�������)��^�/e��������r�^T1�G�������"J%�A�_OF����@��`�h?�%��_�3Ue*��W��:yIv<z���E<
��D�����Wa.o��W'��9��;�����+F����a�;��?�"�0�v�y��o��I�`%Gp���C���7���t"1t��	������������4��wL�%T�������J�HJ�5�8VL��%������'1�d�$��y)����;@��|�<�t;�'R�)U�F7y��E��R{��O1O�A�X9���ly%�J�I�v,��l;�d��cQL� Am�mw�<��V��SI�:ti��m���/�}���Zd[�dOu��&�m�Pi]zJ���E�5���#�{�2�tz����Ni�)��}��N�N���;�������$�h�F��I��P1�"�G&j�Cc"sc��V�IlU-U\`�+�����w�^��9�TX���''^�'O������X9;!��/T�m+}���o���i�J��Bz�^�"n�s��o��.�R���*��ql7rL�<f����OF��UA���2�S���5�*4�!d��dL1�/�����a!	�LB��6��W~k��4k��)P����1Q�.f����Z�Sx�������Z�1��,2~W<�TV�/�.��[�����"6���/����R��[({��Q}R[V-m�BD�Bkl�)R�|��C�<���4hy�`�	�`����&�Z��w�G����x��PRBSDJCiH�V2���H���]X�jck�Z=ci��o��?a��������	E���W�u�ga4���O��W��J���8�����>?<�E9��?K3i
���C1\��~<���>��?��P��� �a����JF^fz=������;��:�d�H�5���w�?�R;���^�cMz~�f����o�0����o
�m����I,���?����i�1Q���5����ti�����b
\;7E�?X_1���)IT P���!:q��%�Y�����\�_���0��N��� ��/�����=`���b��k�NI�����������>�$�
_�����5����O�����Z �!����o���#��^O${l/�`�|<���	� �����&�	_������N=K���i*}�����4\lPe�F�5�pC�M�.!%@������ �A���wY����UJ�~�~V?�oLaop�!���Tp�"��A�DF��K����4�Y��\`�g�<O����)�_��i��2 ���0�B*Z�FD#j���'���������UU?������=������a�?w�
��0D����<-b
������011 k�DH���?�{�����0��:S3yV�0f�3$)n�T[Tm�n����9�sr���%����BC��W�z"[]���d����h�Y��x�f�T�$�n�&��T�2�G����dK"q�rw����������h�R�Z)V�[j���kV�����<�&C�����<:�/��b����v� �^����>����1jm��j��(�FA�������>c��P;�vt�� T@���M{��^������[���N�)����{���bS�V�A)�l��cZ8gl*����SQp
13��h( �8��}��3a����$��C�y��xFK���;TL��*t�����y�1:kk2��D�5��&
��Hc�N{D�9B*x,���(h��/���2QLF=wS���m8ybR^��'���;��M���PU^�ZG� :����5������d�m[����]�������&�I�3��EV�y���,h�����j�XAv8�
 �0X*�k�4�mL��1�*.K��4��gDz�v����r�Vg��*"����/�
��}�:�y�8�G�������6�|+�=��5IUc��p4��u���3���UN(m���J"a��8��[�4 .���������[R����	����cu�#����b�#�>c�wK�;�����*�j�{��q6OgC��<��bp��f_���v�$�R��w�����Hc�A���C�6 H���B{4��x��f�#]��6���������%�Q�k�7G1�,v�������dm�a��f9!�x�����1��z�B��|QUT��DA0����|�$�[���w��+]q��37�w�[�^�5Br,���+W��P�b|U)����|����!��4���7������4p���[f���(.�����7������N����3KAwt�-t%�}���
I�^�s�Y�X��-���2
Y?��?wj�(o��s���������� �(|?��)!�+�"5�<���Y"f�v��N��>Ys���b�����b;����S�
��$ed_'��#unECG��
�Wd<����1���@�"=kyW�[���s����3����l;�Q#�����a{N�������b$��`1���AI:����W����@��_����{5__�@��[_�@$	DD�DZ���o
�sIYd�&Kk��s��(����J!�v�	�1�<}�#"�1��'�I*���]�N�C�������N,�����Oo��7Q��4���##�19>hCe;6����"�.�Op&��j$8 {���v���I�Y�=a*lI	H�R#tF����~��S��������v=�r}���V���+����+�1�M�|����hl9%T�R�X$:�\U$�D�*�jRnu����N0��y�$���J�T�"� �����}-��D��z[��0C������J��M`��pA$:A<f)M�9v[�P��������s����R�P��B���K�>�0a)�:�8��Z��b��'�Z�A�6�����C��eB*I�"r�CO���z9���zQCg��=������XP�B@z�jHp��p�������=�?8n����N/l@��f00=��:;M��h������������}W��_o�q�o����}������#�&?�����m/��3O������&���!t[���"k�w��~�^;C|A1�7�������7{*�����A���M��S��*����!�I�B����j=p�vtYVU�[9�52=��&�\[n�?#@1�S��?B=S�x(l��~�=2Y>��2���9:���I+~�o7.��m��mn�����	��
=�)��xHv���� ������k���=���D�C���u*G��qC�������0�=�hN���z��uZ�i$�k�$�P�N���'E1�r�:��HH�	���3�c���'E�|c��=!3����_>��D���%'��GI�G��
y��~TX��������������'x���u��(�����R�Z���c����w�7�q!�0���a�7y`p����C�D��P6G��4�I�����M��B�..��&���QDG>�����D�c��b�VT�0:!����!�&�����IL�"Re+i
U�Y$�p�<�S�����7rs��I�6v�����!���y�XG8�G��#�����$�7A-��42�W��b���Ss��'��@���{���S�����6UW��r��HhNn����VH��nK*����-��Jl�#F��wN��VZ�9&�4�VHF�b�!5�NbC�"��J0H#�T(�	��Ci���jC5b&D�a�����hIb$�!�t6��8Q��M���������=H<��:��dp��z�t.36KQ0���+�j���D��<�<d�#���i�[���7���z!��'Y�C��%I���>�vl�1��1�%�1�,XzI���>p��"� �TEDT=b|�D��v;��6GA��������qT��
pb@ 0y#���z��5L0Di�ii^�����������8�@<
HiGBs>���Nh�*A�'��8�m��@{��U���EIZ��e�")!2%�Gg�C��'��kFz$��H�q0�Gwy�#����S'-�0�&�]��x��>�����-�h�V+7��
�U������+��/>���7�_�Ci�d)`TX�'h�4{��m'�<�fb�\���Bvw!W��H7��[��zq�{��\��dSNY�i�HH����Z�#�����D��gjt=Gt~{�?%9�,rc-;��Zf/����"1g?��� ��1�4��P��G�W!�Vzi�!+�~c��(�c������h)�5MX��%������i��M�~�>?�n��{�������&0�O}v�����V@����KM4QG��O�n��W7����<?�i�/9=��;%��������:���[}��	�+5=����u��}15�#mF�0�s.�xj�����h
y�	-����Q����;��r�$� �d
��Q��������Z]4�O������:F�(��v�Q���H�XXR�_���
�������{C���
K|u�S2��\�1r��S!L\�1�A�����,%l�	F�+`���8�{��a`�DN@���������]�k� ��&�Y.t�@D@{j�!" ��_��"y�V��"""""".����!!$�HIJ�I!$�I$�IJR������wk�HI$�%�H$���Z����[�H��""DD��"$DH��""DNC��
N�DQF	��E�e0��(�"���"��2�QEDQE�6"����1����p�$��<�!'�1���ccclm����lm����lm��a�"DNK���pd^]&���8q�D`�$F	�D`�$F	�D`�$F	�D`�$F	�D`�$G�&*X%K�`�,�82"$D@D������	X���(��]V��W��Q*�iU���- �ot�
-���&�#"L�{u�!ba>���8RRRM����j��B�C�9*�kX"�UeV�R]��C�&(f%U�:�q�0(�BP��`������\��;|Y
m���@�mx�����_U�W]q]w���b�<�M1�{`(pU�C%	p�1y�f�J��rH�D��|�A��Pk%#�!�hj�2��]"Uvq���*��"�y%(�(�,B�-�J�:�RP��C�Z�����M������Z�'��~!>q�IOq�_4>_��Be�:��^�I������H��Cmv&��Ubu��w��$�6��KZ�j�e5�a��Y����u��������W��#�8������7�I�N�;@@������5��2�
�m���o�EG��Gx?q
��I��
��������D�o�{�rz ���>by�$Y����@�Hwx�3
����*�]�����sK��<�kI���^�����I����@p��bnCVg�z��V�J\���D�`wT��J!���
�_T�T��$�� ���^=8�,n��|�h�('�bL�P�X%X����kP�U�ZI�eX�k+AC�[g���(��P��e���!�������+!A�*��nbx�#�t�)�dXL����9�I<x�m8L��4j*�g�x���B�1]����=�I'���Q�^�������q-Z�������K���E�-*����l`������o��I�����4!�����;������VF=*�t,&��rN��M�c�����J��b�+�c��^���2�q���/��*"�����"�p
!��(WN�&�y
V4�=v����F����t0�����0��tQtao�X���D��]I�M'��]���b�����_�Hr&;a����������G
h�
��?�����o�;�N��z���>�i��.-x<�M-��cj���e�^o����K�K��cVF�zG��cq�����aV��a����R%��)$+�4�@�lWT��T��"cJ�i���~�F:rL�;��J�8�����~@"�(���u�=��;a����K'6�4(�C �$�7E�]�#'L��(���0���S�>S'�VI�<�I�31#D���O�����Q>�C��~$�����w�����}	��O�7��55�f���'/���6,�WyU� �C�����#r�v"!4���&Q��^l"p���2�.�������#>����Nq`=�������t�il����6��K����\@����*��B���4�hqz;'m�	���b�
�M�35W���Bu
���RD��5/�`x%����7A���#yGM��|��=$z��Q�O
�D��E�a���R����Q��!���lIZ�v�<P1��`�7�5 X (����HG�o�/b_/O�4}�921����21�Lc!c����j}X��%$J<e�l��U)���E���
I<C�����	{� �k��8�a wt\�&��H�8?�
Y 1�V�1d�T��W������?T�w{9�DD�B�������?�v�k�o�2�" 8(N�Hm�����~�L>��,M���TI>lGB;������m��8(�GO=���"B�W>I�n��1	m�C ^%m�������'����Cs�R��;�I��2���1
�F���!j�V�mUi��m�J��A���{� �%<��>���m��$��$N4>�)�NL-�|�����4�@u���8*���J���^{�7���H�$\^:�K��:7gTZ��� ���L��FG*2���'-etm�H[6�95m��cU��k*Q��^�)*:
~5M����z!S��G�K����l$,����,4�x���*p�>�y�'�w���=�����>�`:�#�5U%UU�������-��SzgT����9�����c'� ����2��_�-�9p;v�T�0|B
[���)A�w�")�f�4���	�![�!JLa;�HB�^d�=�F�z���*1d����(!�%
B�(��5H�CgtMH��5
$��J�#���LK++�CF
	�!e�+@�H 0�
HJ,*#"���H4�R��g��K@	�k^W@�	&I	����F��%��hN�*�@��������� !0���,��J3c"'4
#.��J3� l��(��I�BT�aF@iD��k�*���{$��?�R
��8�����FbK����B��W���{������a-��]q�YO���M�c�H�s�$X-~K�)~��@�]��XbF���hB��2.��g��������OQ�����5�
���"��j?�#O�>�d�1P�	�0���| *K���5�[��;O7�x���~|�[o�Y]��������2�Ll����J�/����:8]#eI��o_9����S�-!���*=2HL�����te���=�rS������d�T~�\�{@�IOJ�Gg�G��1����Wy?���o!0$b�z ��	id��K���u�BI$�I$�I6��[Z[ZHI%�I$�I$�I$�I$�I$�I$�I$�I$�I$�I$�I$�I$�JRI$�����I$�I$�I$�I$�I&I$�$�I$�I$�I$�I$�I$�I$�I$�I$�I$�I$�d�I$�I$�I.���I$�d�I$�I$�I$�I$�I$�$�I$�I$�I$�I$�JRI$�I$�I$�I$�I$�I$�I$�I$�I$�@�I%���V�l�����T6�$���,���t�<�G��J,�G$=k��#����d%!�*J���� J8�!����,�%5�jD�LA�N�U�q\�`��Q�D9��&��:~	2n�������rZ�&������7��z�qP����/�n!��'�����4)�)T�+�*Y�_U��H�J$,!K`EUKA�9*H�����*n�A������(%��$(��D�m�ce�U��X_[��pv�'?���p��9�s9��U*N$�U��I�:Wd?����^V�2��]�B�+"�3$2@QD�()�H
�]�&�<�,�����R������Y#�,�{��LK�B���]��7d4C],�>����y��#�&qI�2s|	�f�yly��i��C��V��OE=���y�\�[i�ctD��r�(B�G�SR?
��Cd�A������xG�fi,������zH�'�*xVd�3&e����}�4$6�d�����'�U�A
0h�g-����@
2AA>��9�5U����hD�z�:�Uz�(��D����l�ZS���C
���<C�~����������-�p�5w ����z9fDr�	��lf��.m4��$����}~i�4��i}5,XT�2-�|�i�Q�mE��q6�o�T�b��GV����.�kS
3��'����:�]��S����h2�3��Z�p�q"��%gJ'��0�(�C	ui�
y8w^A���a��p��;��^^��8�)�����f���hx
4�,�(Zw�{�d
��5��N����xn,(N���5t|��xV��m�;wd���e��{�t��A�����e����xt^�:��:�i�A����FU��*hV��H�s!�����v�$�j��������}��p�O\�����f)�&�����I�]�Z�s���	�Y:���}�3�Ti�M�d�#f�6yS��gM�:�l�t(�(J,@�H�T��#������K`��?v
����4P��� ��CE&gO&�6���k$�aI��tML�	&G	5%
t!�D�������\Ps�t	�,�������:u��N���JC0�2"��7����z���$I�{����������KL�_N�fv���C��6��-~,YEHA����		o7������b����@H!/�RJ���m��U6x-��:���������d!<"c�FNOr����	Shi��x��ULQA1�C,.���HU}��Pc��D�I! �`f��?�ff�u�	��gL?J����Bz�H�THS[~�~z����.��q��_H	���H{gv�����
�,:���N�{��t|;b}�����1a���1J���7=������&r������,M��?�G��cx�p�Dn��d�3)��~1w����r���&*?YRcfa$�����9$'�$��B%��v4���!5�"�������@�a�oWlz���*q���^,/H2$���B��,
"_y��r]����q���w�m9P�����p;8���H�,���X&�C���������qZ��!�W�C��"E��::lm��[�4*va�]�a�94�:3���>�I��1�~�Z%e�[m�V7l|���S���u^�$�#�]�d[#�n2T��
�?�)�|�I���������� �(D��4�L� �J��3��y\����k���J�������sd�Y�)%�c-m�r^�}�]�[�#H1�m��{"q�����9�����UR�Tu��5���c%�f�M���g��D��� `H�ip�z��_��b��m�v.P��i�����7��9����j����3�r[��T����Rt&\
�������"2��h��SZ�V��W5\%����MHAD����}�u��
���k�D�EwV�����U��K	��B�)�D$`���C���t��5�e-�zuu��BW<���H�h�X�9�����]{�:���P���b{,q���-c@i�����a�Z{d��F���V��`�|�%$(+E�����F�i��4�d�N����@M@�%N.�W���w������3�h&�,�/��I�|��EA�(����!"A{���n�+��fe�0������sCT  ZY
�QA�^ge���4��5��p�����z�g9����K�~���U�gBx$������*r�����fi����S�v'mz�����e���U MP/ U�+�*C�<�[�j�	#�_Q�r"][�7��"�]
XV�UjX"�F��Z�7E;�'i��1��e`��`F%X�FZ^,G�CO����0B!L��E�(J��J2�< +	���Y&&	w>DT��k���t	^kZ��C���,�E�n���-V��D�l��Q+�[�f)mqV���������l���n�?��N��p���2 |	�;���<���
����O0�����!�H�e���Q2	p�@�����[i9G��Tb�}�\(���"j�h.�<�6��x���VO(d(���DO%=��C�X�����BYY
�'r2�� yR1h�!��[�"5JL>���Fx��A^����$}���I�[�G�TA1��0i��O&L���+vkc)S��;G�����j��eUzH����[st`��y��:�C������`��y�}e(�t7�x�'��yZ�H$���t�Lu)��z�z�p�be<t5'C���	�	p��Aa��-K18&T�c5�E9�>)�F�ey���M�S�|U������2/)�N$d5����_oLl8"���{���K�A��������L��K�-+8��kz��Pw���y��>'3r�e�J��v����m�!���9�������6I��;#c`�C%�Nl��nL	���9�m����SCLk��7��=15&��v#���I&�d�bCA�m
RR�	�o9�Jr&457P�f��m����I ��i�����C9)��Ot�#���+�|���H��X�!�AS�
JY�7����������R��E����?�Tm�����M���'?�u�C]�&�����.�w�dy'��g7O&I���x�A�H�aC�*�a�.������}�h���V�
��T<;G���
=�*`��	��z��c�#"-nnpR���d�&*NhB��"�5��z_�fB|�8pW#��&k�����hK�g�:��XV��9���������4CE�@�
��U�\N�L`R!�"=��H�JD��N);�� ���A���KJ���;�:9���P�<�]4�o��a����B�=�p������K���?:_���{�8;�p��>�7/E�ox��%1�^@�g�����n���
��6G���Wk����Du$��,�?�H�`nqg�+�,1���V#�����>���rY$UU����F����HO����J l?�oo�4�;��Tz�PL;��Q��C6�������/Q�����'���(�-�7�A�db���K����E�wSq	�G��������[F���n�����9/�O���V�_���$�����b����v��z[��1�;�c��X��P��N�1!�]�E���K���.��o��DW����@>6�U� QT�#PV���)���lm��V;)��8�p������P��/�������J)��I6JD�KIm�m����c��z)�o!@���x'%%���-�p���_�
�?i&�g��D}u5O���G����4���Ov�O4f�'F���ic{q��h^'C6��a��m�'
���\(}=x'���"�L$�@B2xt����J�eN�f����jEDq�������,�xy<�?M=rhL��������%��~'mp��lmL����m�]X��e:���3���n��E���I�7��3�=T3�lN�m���`i4��������,|��y
��w��!����Q�W�T��DI�xG���������L��gwU�!6���+KJ�5nk6a�HN����5�����Bq
��e�)�
�����'��&�}G|����$����v�]&���B�K32�1��y�m��$����y���Aa�{���y����j-�
}$o��;NH�5��L��D��d>Bo������--�Y���k���'�����>���r���]�%�������:i��YM��769�&6��u��L*raB�Kp��J�&D2blS�1��9�0N��^��T�K��i/�����L�[)��������)P�-���Mc&�����daH)x�I&d; ����Z��(F�����eqX�a����d�����-�5M+	�$�6����K����
6i��������H��U�t�	�XX��;�������B�������1��$��>�o
H�=���J�5�E!Rn1�#��#��Ij�U�&B�(A_�rU�/���9"R��F�H�$������e��������)
������ /4l��cdTTUTUJ��+��24�����~��4����$v4f�b�h�	k��!Dy�%3r\(Hb���J���:�:��H�%'�2��4�����1Rc��C=���t�w�&���I��)�4m��_�Ja��z��G!b�����I���S�d���=:{,�Y/Y����p�t~x�����<�_�vZJz�L{L�������/����o[$�%����O�9�6��8W��|4R���#���Y��e	��,��7�"jG,�����%�e%B���c�)��#�
K0����	
j����kt����.�P;:b������8~���>��lxc�R���i������U��d��(�d��@6���UUf&W�.^�"2E���}MG,��FN���!)���T��&?�hL`���,
���g$��B��Kg�l�np�a%Jooi�;m��	�p����c0m��L����U�]�cf��8�11]�����[$���!La4hV��h����"v��
"*'�����#�K���s����C��d1
�;`���l:H��JE�U��*��T>ES��3O�Q��D �bO������Z���[EW�	9$�����D��Tw���*������b8!�:��V����wpqR>�@���P��I�X
Ru�Z��O��H����aDk��}0 i�2�� �%J@�eB�P�D������\��mGQxxqF�����JI#���P����N
�s)����F�-�����?f��"�K�p�e*J�U.R��-�a�Rg���^^y��^]qy�u��$�����[n�	�d$����&�&�!�  y��$��y�� �3��W~����?I!�l����y*���{ 5�s��=0'��Q�k[
����U���#���z$��v=z��|��$D�UY����%�1 �=��}�'�~�0�OSV;��-��Y�s�
�A6���g��c��������{�������;b'du�2o����-��d�s�5�>�$�GI��������i��F������~��>�juV7�+ms� j��byA	�a.�����UQ�D����#�:�@;C��P��)����q���;�����;����D&����`�����{����a����z�����Hcq���5��GN$�66�� \O�I�GNy�Y]Vr��V\�6�XmDY���V���;;I��r�L.��&���<�7Gk~�0���M��8\����L
6��]jC_�@����jJ^=�$	�tN�
MH�1�5#iD��6J��h��� ���d��I�'iOQG��=S�P���AIJRbA)	�:D�q�����>�o;V(����N�V$�|����D)7�=���#*"������^�>���f��s��]6��!�����{CsO�a�b~�*x'��������(�
���D��RgrG����o:m6�y��O�dotw�v�����Hw����US#Y�w�odHa�����\�!�dH�.&8:L�QI
NClqC���*�">������F�����(��d�i$<q�OLx���>�{
-H��&=s^V4�Jkd�kdY�i o�w�H�YA% �$�Zd!���e���83�Q���k��-y���a�50XM�
<([,��#�7M�	IX����������X!�N�I-���#1U�ml���������VF$7G!����FU	He�w;�`��y7��1PM��_���P?t���i���T!)������Lg��*���RZ�[4�����b�.*��(DR�����6���L�D��RH�o�Cv^��uB@w���fI �9��P�~�bZ'%��H�������r�I��$��q���&�-��_O��/)��� �j���H%� ��d	���}�''�����xb�e&�$N!D��;:���b�4���;�/���-�����I	{9�5�"��`��j)3��g{�g4�������
��������I�`�� �z21X
3��l�������`���
BiU�w���f���R?���$�R D�/��$���D?pJ���
�<Hr:AH~`)K�FH��*a��Y�k�f�N[k�CI�C[
��T�:�H��}0�'�UT�n����4�^�_�P�'
��9����������G9X*�1J��5"����������$�NW-V���-������!��o�_����*���vi��[DDDDDDDDDE���W��W�oWIyhz�%n!CCJ�D���8J���J���&	<e�N�p7x���r�8c���9b��D�'=�7D���8ZK'f�u����;A���������������*��h �PD�`�`#@$�$��3 �m��<�~��b�8z�������%
ow}�����X�������������Uh��2�[5G�mdiH�$q��n�:f9*L�� N��;�*��a�z���������[x�����z}J{�Ap%LD�=���	(�"�)�8�'a�e�~S����99�>n��^	���	�T��\����G&
�
(�` y��TER1��S��2m�0�"V��8 ,��N����J
i;��X�����F�M(x$�������IT}d���0E"+�(O��2 ��%X��B�
yf;�$I�w1D(z��"�������5��6L�Q�����	�����)R|���$�$�!Q�=W��\y��=�0���-
Ec�QT���������"zI�z@�t1A���
��]���w��eD� R>������X.���3�����}f��	�U�Q�'u��#���/�K�j����M�~c����K�5#j�(�R�����)��l��7NM�����e������n�!tq�k@�)���t��;�r:u���/d���t*p]�7�����8���r��d��0���
�#�L_����1x������P����T�%jyF���q�C��^��\@�'�
I���S��m�N:
P|�Pu��]���"��f��I�f�Cc;H��m'��{���?��>��PQ�:J�u} �aDM8��D+��/4�-��|j�X2��P_����:�1Kc�0v��\�fLeK_s\���������8-?�i�&�D�����,�~O���,�y��9�O\9	ZGJ�����]�3���J���4�;0�"K���R	S�6~���;����(F	 ��&�)RM����wuI�T�Sb�f2j*���%�1�C�0��)I%� G�6w>����I�a���~��]�v�!��$��E�3(�}�
��;G�t�q���'����KK%,�-�b��I��Qif�g|?�i9u>�#���/��P�������l�v���C��.��W����'��7��0;Z��r*���^��5\i�����9�,8���5V�o:n�4�F�sY�~V���P��L�7.��j1�<�*Qbxw7z��|cs��R�"~u$��]��";Q��;����	A�^y���Y�LI�c�9�;�K
�u��	�L|z>7������.��H������
������|��2�i���F%
l@�3�������RHz�;�����F�����mPm[SL��!��<��%�.����A0B;��h6�a)d���A��(Z��X�kj����
�������''�9�;
��p4
Y)����
J�ReT�O(M?����"��2U�C�	�X�>�f���M��@%"�<dELI<����f`|��>���0�������3(a����t�a0C����=C����J4S���<8=�Q�-��%	`�,a�Bbf��,2Hmbx��v�����]�
gYv�����!��FJ5GP��	v00��V���d�)�J ��C��s��x���p<
D��K8��:U�9o��%>�t���A	1`��C���$P��Hp����R��S2�B�%�v0S�V�kZ��p�.!0}{hkC7p�:��	-�.��ffy���������0�4����������O���GG]%�����3�Z�;������4h��<sq�j7y���O��;$��I+"}p���wwM�<x�Dp�rE@������=��* ;���I�6�o��NQ�Hs��4��q��
��M�CRM�h9�i
�,��i����X|����}�!�J������uV���t{a����)!�8���M��8=��A�Lj*"�;�Cm���2f�Z�X�0�����I�gLXQ��(t98���l��;9�u�����\���Q�kl��O��i�����������������N�HbTt'G�5��5�����Xo��|�$�Q<�W���-�+�n,��5��Y�^���*WwwI��0����K`��7 4�AL[�@gW+�f�vF��h�I�2��%�[�T}�&�����o|<I�J!�wSwH-���Y0,�#���K))�<y��g2���Y�;�N���QERj{g�n��^���g)�=#3`��t�=)�j�/'#,}��}�X[�H��J*,\`��Vss����(��~R&�_�K
��N���o�������S��f�)6�u�}������C��/�o��������_���7���o�������(�B�l��nMUa��UT����k#���>B��OL����\I����R��}�������f��R�_�W.���F;�����m}�J"MpV��x������_zkj���������G�����!.���Xl�~�^�d��Q��h�OKJl����Q��y����$���4/B��#*���������2�Y����c��D���Y0G�����S�SB���LY4%�N1�JM����8l6$�����-�u��7:�����}��w�!1>g�ny��"#��.gF�"c�=�o@��>��Q�����|�nG�5v}H# �$��'�%,�@�d�Wq��7L����EO\TI����{�����zd��['��S��Z�5M#d��t{��3�h��r�|��\/v�\�u�Z���C������,)��-�m�+Qk	��kX�4Z�3����MH(�DjJ�WT�V�,�5-0��RMHH��I���b"*A�>E�61��<��BW�9��n;s�?[����s�����'��7*���+^)�.�C�N��{+V�����x�4|~�|5��}XG���B7t"x��@�����m���	���%x�t;:,Z{�h�����z
�K]�u�����E}��I�g�ya/�>�Mx�k����OY�l!�'o�>3
�*��H����W�WWW�|dp��E�C$��% 9���!��Je�W�N���H1^�6N��*�f�#��O������=C+C��1�Gs�������]�ux�j5���VtJ��);�)���k��v��Pz���
�����������!�P7$���q?�m�t��&�k��9��O�3�4�EDPC�����K'���u���M�b��w;���n�+�2C$M�UK�D��EX��9�`L$+�5�|A)���]i�\<�:W����Y��C>�G�������;�����9�ETJ�������OcQ����Gs�g��nd���
f�0�C�R���TI�����L���zc�O��C������a���)c!����#�$���8*ys%���ZieRd���X�,
���&�2'=&��0�B
J>Z���
�1�u(d�K���B�N�dj��MC���D!w@�D�\�Np$������X������	2*l�4�
���QM|�+��N!�������`���H�F���������\��������[;4��������0���py�A-Ci���� ���7(c�c')�
��Ca)aM�J�h?s��2n��-d��������\�:�Nmi:a?��pd<��NG
��,Y��-�!K��'TNJ``vXSJ����-��FbC�����6
��q2k�i��16s�u�R"��P5`�" ����7M������K�U6�9c\�.�x-�YM=�'Hx����Z!��g[L����brz�<�=�,� �.�	��Pt�hR�8_������G7��s��No�1)����KHk$<����	�?`��_�=w����+Y�S~�5
�Gu�+�1���R����Cx�����8��
k&j��&0�ds�6�'�T�rH�"�0@�1E^(���8�l��x�v'�i����n��eI�0 �dLd�g�o�GZ�E	����G�`�H���},D5�IvtU\2J�A\���;���L����D�,�!���H@�"���HET&��=+o��[�m$#�� �6���0�JI�&bT���#�f	#P����p1C#Zt���ht�����6�s[X��hCdt�
�����(%���qfB�4�8���Z0�b!1�b��RqXY�+l�3*���AFSX����T���(��C1W.-&C&�����q���%��o�$'��H#g�$pS��U�c*=�I����e!N��H�l�XE�����B�"��(]K[��I��V���FQ�rY-�b����Cwt1C1E&�)JB$`�DDDG-n73�gtRh�WJ���S�G�M4I��&I$ufI��[���N��/�����5���6@iA�����C��jVVa���hb]/07NCP�%��cV1�T�����N2HwG�$��
p�T����I��H�����614l�*�M�������v����D�3T*��B������&�	�	�d:�V�"9�O�I������6W���?�F��OQb<�I�*�!�ZilF��T�-N'���gZ<�BOl��q
�H�����]�5*%�Y42���hT�.��f`�)C��&*��))`�5�*�@��q-X�`��,@h�:�"V����
n�e���d��x�]�
���-���\P!�����@���R�)J��R��I%!
�dd�t��&�e��|�0D��]�~�Y�th���.�Q��%���l~x��c��J��X���r��RNp�bN��F��E��y'������dtA�IJ:�\��iT���v5a*���Dnhe��hGy��9��m�T>rD��I�)�ig#=����T���&G���B��d���^�dHm&��F�k��q��w�����%������8Z��f�����QlLq������;�9Q1q�~�h�^�OD��'_�5#28�f�X�ZiE����D q�3l�3�}lYq��� ;	Ds\�:D��w�����y�W��C�w�O��o$��`�7eSI4��z�9������,?����P�CwI�/�'�,5���K!�'���#��(�g���"e	|��{������sv
�A��*1a��KHj�1Q�������7�v�k6�H--5-�����m���09/D���!��;�0H�Q(� ���"�w�����2�������ww��3��N3%a����Nd�`J��x��4�2�������UZ������w��$	#�v��>)@��e��?q�8.\%��4
<CB���%��� 'w"���D�JI��S��L	 �
�!���V)-�� �a����o��6-#IC@����B�d�w `�&J�>2�W5��Vk)�6�����0^�+���$S�c���h���� ���E�H$�VHQ�(&�"�����)��;�Ox ���"q��x��e��U�����ST���Tb�Q��]+�=`'���|HN!�������=�A"""���0DD__t_��U��N��k��K�o�^���� g��F���_���v�ZH�Y�V�Y`�@�''&���i��0H�T�#
�1��F ��":����J-'$u7m�,*"Z��K5��c���a����
C
�����NlSuYm�HX��$�y���$�Gr|�zO��[�
 ��GF��g����x����d����tRZ�2
�����;|(P����.�Ich��X�Qi�d� D��B*r �����-E�Nq���xIji�+S�c�i�C���nP0IHA�e�b1��@y���`���*C��;a�?g�����Q��C��)�d!���'�3��*N��O��B�~����+,��1�����}pjM`��N"CJ}��i�v�[e0�Q���z��=6UfO��x���
;��tu.���m&���pB�FG8��W��2����-��f0��|��FMSM���(���f�� d$�4/h@���HM}���1�H\8g=����"����n�z�����O%O>��(�s�4�b��Y���]�<}��z�Z���"���<|Mwu5����"��s�k�Y��zf�0 ��k�� b���$m��Y]���;��Z�
�QR��>0a�#���8�C�1��m2�V�������l�]�6,x�w��i����T�KtH���G1�nx���(~�B�GxD���D��w�r����7Nu�X�h��
	 ���g��4�V�����5����,AAC�vp�D��s��!���s�neE_�a-!��`�A�D�Q*J���%aDA��0D`���#F�F	`Q`���#cF�"0D`���#F�"$L�>	��D`���#F�"0D`�� �"0D`���#F�"0D`���#F�"0DH �F�"0D`�`�`�`��"1" �`���#F�"0L0j*ZT�%YF� 
,�kla��=�����<=���d��y'���o���������@�6�$X�m���&��lB��$��4�QP��R���m�7n��|�.���[wl�[iV\u8�F4��m$?����5;��Be1�17q���p��� �`pY���\M)�}X��T��x�B
+�$JV��!x��P��5k�E!l��H|#}n�LEs�gl�d@��j8E+�����i���������BP�B�f�
@�4����IJ/�&�Xd��w�t���)9��@��!�ge��u���J�+(� YD�D���$�l4�f*A�l�7���=�_�����NDGv'�&���*����D�m����H9������n��`��j|�ob14r����,�00��l4��Z%r��rw�{-��g���<p��>�;!�R���"o�@�����Q2��)���o��Dm<9!����}}�
��k�L�"X�q�/���EM�a��1�;�Cs��3�~3.�3�V���o�r���'����zwy����i����{�q#QJ�(��]�����!&����TJ*��L�uc #8�H��'c=]r�w
%�$�rlH�
�p�i�B�<&;����mm�/��#��"��4�2�A����NvY����9��D�$B��"Z	Z^dH!c
ql������r�sU���'�����x����f&X��ocv�����J�r."_\�CX�������&�4�,KpT��I!n�SV:T�U���E��"�H1��
�M�T�IK�1�JH"�j������]�n�0��8iN)�uv�^�rk�����D�-c�b��*��)����g�Z4��N���2m������ZpI�8L��8uE������$���N�G�����f 2�v���\�L��cj8���P�<��"�/N�td
I���J�|��i?����F�F�#�gE=	1U!��p�3�����]���U[�zu�m������U��U�8�Mh��"hK.�9��n	dan�����!�`*���p07a!�'�W�#�s�9I���!���B��`lrSt�.�aCm�6)��d�4�Q1dG
�k�6��K$����D8,rN�E�Y������Y����B�+�*=��@xj�����b�M�WuH��%}����W��0����"G4�9�bz1$a)"��ED�D��K�bb���Xw\c�������7���[��3��-�|��*NZ	
?��^�*a�a�_4��b�f/���N�)V
�	9���
����=x�����[k��>����M�4R����m;�M�>�#�?��4B��I��Qu����	��{����q5q�6���.$���Mz���x_�-Y2�sG����	"=�'���s��O����f��*��H�nu��0���`�",��s��l��1g���!�!V,T�d�c@srtTs�lg����a�r^���IQI���VI�0xX�
��fE�P}�o/�{�>?���P���1:����]����H p�b�����"�?��q�Z�8�h�����E���9
X�$��8l�!�m�?F�5+9DM��aP�(=|J����������RD���w�5_
i���W#�/���k.�(�T\$1l�������T���a; �"G$	�(�]��:HR�h�]'����j�����#��_t)nx����	��u8(�E'b��OY��Y��<���$�k:A<��I��,���Q�	H(�vH�8��:
H��hhpf����
�G7�2�TfQ�9&ZyW\�x���(��n\���\��e��.h��jkLj5dFw�"a����"�6 �7
�W�aH�Qz��7�~
���Mp����b_g�����C�z��vv�|��T����q5X����&���YH!H��dCbD3CP���*���>���
�z5�J�`H�o���w}��	,+������������kZ�G���K L����V�]�l��� .���f6���r+N��P��t�]��������+jp<x�h��;X�;f�vH�G�RZ�6�w�F��������
�_
���;�<��t%��y-%��������D�����No���~`��QM�2'�4�d"�������s�+4`�c��<�����ZP!�4��dz���\@CTw�M�v�:.4�j'dj���� ��"���#01hH|�lP0�X��W8���9%+�n�n�]p0�O(E���0`�)����II���f"�$}�"��o�8&r6%��4
0z\c�+[�j-
����SKJ!@���`�/���e���dOeG�:@-�0��Y1��k�����Vf���i����+q�������W�)9��H5
tR5��wH-JS{��i@�V������G��8^�=�v��6!)R1Q$�Z[H.��e�[+��s���w��\��0p-�tJc�N
>�9��,�%��j*�v�fFv�T��� 2����B��0���i��	�����4A�09�a�o�G��6�an!�Cq#U���U�����rC�^�U��U�s���5�������q�x���#5<�a���yP��]��cE(kA�S[���1J}0�@\��3��PE<$��-vMJ���U��kR�` ����u{�v����!��\�[�Y�.��c0r�@����w
��DQ�ww@�z_�.��-S08���@�$�8�p�p�n���`7�( ���7@
K����pPS{�	�2�C�{�� ��d�W�aY9���1v��F�����yD��j"B��aHt�K;�rI����6��
������hE\����~�kZ��Cv9;�����d�F�p�����Q����][!���bM'F�eG�G��2�u��kN�y�F���;�a�����t��AS�]���	�-)�q�e���62JD����I�m�<������C;��`1x''N+���� ]�����|	��D�*��F�K=���5��,
��*odc0��o�d��8���OF� j����/��i%5X��^6���k!{Z/M��&���Xyyn��L���bwF��
1c���a�8{D|�;�PD�����U5P�����!�������u��D�iBtI�B��Q��|��N:��?�����#��V�6���>�dtaRA@&�@��x2�7���i2�0M��e@DVY�Y�2�>@@�i���JJ�9� ��(�R����A�I�I�F�A�	�S���;b��z�I|f��
� T�@�!���y�I5{.���I>0��G�+�������\r�T��������CzH^�b�bXCIP�����4����Yw����������&��q��o������+@Ynn�T�f0�h2b(�)��0�2�A�� ����H���G�����|^������-�/�)���
����]�����y=%�>��`�y�P�����+��yF&�n��7
h�I��� ��J	CLA\�d�6�pd_V�UGn3�GRqn�8XRXL�F�i���o	6���	a���������e�m+�d�l�)LsG2S���M�����YB���)�����S�F�K.0k�p Zc���$E�f��j�".�R0�S��p�����s�@�`a*W��#s`p]�uQ8b���~3rJr7�L������mg���u���*�Q[��%
v~������
�6#�
f`������trR��1+�1���C��Z4Q�A�x����>��<��E9���|<$�E{\���gT��Lq���c�)@�1�F������#-1�H8���N!�
�������}i�c�����F#�IcK;�����������IJ����e���?������W/-�`��P����<�����J-TY
��h�~��aQ��9c�X�8�Ih�F�"��()]\T����Zl|�����{�j���p*�m5s�U�m��{��ws��2���3-�����m�Sh�V3�d|��"T�>G�&G��|P��[����VK��E�,���B���#�m;�����e��8�����k�������+\������L����w	���������}t {�k��b�r�"�F����p���h<4�1�u�la��;����� ��%!2��H�������Xw������+T
��@2wq2�2���6�����!�0�"q���7���@6���C�h�����t:
m5�-��4��M����Rv%:���g��dF�<�7'}��l�w3�Q1M��	l�������������Jg�xH��y�s�o�������PQeT�;�SW�D�"��]y,��v�ND�|��R@
���!TX���6 b�`,U�������-!'�ILM����d���4�\�������b�id�ZZ�}��������CP
�o"gadH.8�>:#Q�oC##C���I��n5�oM�g:95^K�G���C�!h_d#D@z9u�H�S��s��l��x���7E:���{S�Z���2'���8'��p���=���WqlN�62��kaI	P{((#�H�b�Y�[$�RIy��!�%��<6V���T�m�0�S��P�BB�p�U���!��}�����K�if�����D�A�H� ��m+2�@E�H:vA���HI���T�Q�2�I9Z ��0i
@��6�C�M�0p&�Sn���2����+h��r�Cs�y��#a�B@��%��y]}�����f�%�XC�9�9�n(�6��	C^���D����6���$�9�D$�i�h8��l
�#0
�\k��;�W��HDHZ*q�H����t(�jv�68��X��"5�I��6���m�31j�2�IQ�b9���Tvw
S�!B������@B�$�������u'[�}����+���r�
��������Do$o��v���N\L�;T'[3L����-��W���@�X��t/n��:����s��L�f����L��4T��~��w��	��aRR�����4��GZ6�16�&#���������C^0��9s���u�m��nn������	��4L�9%���~��{���T25!���Q�M���F�l�-������{]�"C������1�1T#�C~���5":��5����8*p� �
����TQ1�E���;��/�I�FWk���;;_
�zvs��F��a�����w!C�C�tT���J����g�����9R��-�CR��TEUE����
�
A46��K����M1"�6�V�$���������9�����f�o�y�.6����
�(i�8ze��|�������������j�����`���b�l��^�/sR{�y�m���'����W�bb��LZ`�bJ���r)k�oOq����j	��I��D�E���	���A*���I
�2������Y"�����{�A
iQ?���K`L@��@7$�������6�\6�9h���cbJ{.,Q���#��=�'��<%���"���%8���u����B�8�W��!�5����PIB&B�B�����Q��@�����@S�E"�������'���� 
���2@����o�.��"6�4��	��3${rFR�6XC�J�4���"m'�I��:�z�<De�^�#Q�t�����=V^j�)O�|N�T��y�h�9S�����O4:��v��x�����.�e�`����//�d�#�����1����nS�:�Wn
')I
C����P�V8.Od�(�%C��T�av�Si W�������H=�s�����]dVst���U]N�M�,F�*��k]����O���F�m�J�{%*'XD�E�
$V��+2c��p���hT���H�D��x'"&�FDsHsxq$������Ha$����`;F�
K�;��8f��X'�E�����0�SH�����$G��s�c�ET�#��������:(�pg�d��
BM�wid�jI��/l��SsL_���=3���m��+�7%�!��o�F��po�u�s�~�A�l�C�e������r��L,:��NA������0�U8�3�Z;OWfz�.a�]$�"N�Tqc$��v�i"�$��7�n��������(G�����'�����	�>]�q���Y|���A�85W���Y[�7T��!��_��-g�}��R�L���/(�:��A�^:������}���W����xl�(�.�L"�����B)�`R`����:3 ���p�XJ��BJy&��OT��jVO#���}Wd�DN�B��l�z���^Z��i�&��h�#����^FHN�0�T=�����D�3�0AD��J@	��4�*!��4@��������3�FBjB��m��fD�
JTM���$ze���J,����0�T���%�����{�}��"��V	�;g�s�x��������b���-E�����)	�>�a�m�5�_��C�]���J$���DA)0�BQY��0'&��{���E4�W����������L�>O����
Oj|��""wF����*�I�����
�4�BcY"��c�����$��T�P��VY-$o�x�HX.�����jH$��������Ef���	�KmU�����c�����|����t?��������$H�0R���B�3��#,����*;B�|���j$k��w���}���;����3�sR�i����A��>���D^�,(��z�b��bg�3�S[ei��
�E�(���U�I�c����e��*����P�oD�'�G1�o#w<6=z���$�>U$'���w;���@�fp�C���U��I�����[������7A��7.�U)\6��O9j��}Q��ID�J??D�lU
$�$�4�b/tdR�I�u���!��B��=����{�J���	:�'��+79]�d]�����,�[O����%���G�a��4D{%��Fd��{�[�` �^�)����6e{G�u���	��;r�*�bC�9�Y/2�i�EE�I����&�s�,�*�[���������mK�2�Wo���n�a���`����N �j��qf��
I�IQ?n���Iw�Q�.c��4�>m��fK�"g�I}����B>��,�)�������F����>����R	��G����T�VOjm���J�5&M�dM�dM������l�$���I�o{yj��|�����G�p��D{���
1(�(������.c�k$��[��*�]0����g8Z��=|��[�X�������G��f��M��m��]�r@��WI
I�N+~�K�J{J���$�[�����~����O��lsjU����bi����6W[go#��^!d�����T�sWHivUL�M�$MIDpg���� �x�$%�!���[����e��d^�'|(�"p���\7�U��d�8@��W���K��(��I �M$�I�'_��#_3��!>j�,���cL���9J�5$o�u9��;��V�m�I�Qt������������G���yx2w[���;��:8c=`�u;��69|t����{��m����6�ax(ZJC��6o{5���M�Z]�e;���/����y��$����+sY���vqbop�j�	W���[�L	���N��4�j5�Uy�k�U�'3
B�@K�����H�%Z��(D�1�c��{�<<��<����IHjH����C��I=	��������(��8��h�BS�d��:G���������kUU^!���V�J|���@��!������>lN�j��zf(���/q�{��H� ���(��o����z��L�i�J�
�s��\��������--!��8���t�zI������W����k��1��n�(���MG"A�%��%(d���&���\G��� R���i��
$�����F;&�oQ/��,@=d�ym:�u��i�KJ!�����r��P��^RF����F�xxz:l=$��w{y�+��M|�]��& �6��e�t����H;������1Z��W;S8�a�!k�p�7���d�V��v���(um)m!��~�3I��b���fo#�A��JHC�DDJ�(����5����hy��(�� /�, aA���=0�����U����(U�(*���8}l~�O������6��R�l��(�?���W��[�~kU�������L�/u?�h�l
'��B�J�J�BA%4����a�02�L�A/\W"��.x��2��+.�	>slUNrP��b��H���&��")/+h*I��OW�$���]�?����� ��� �$���?EM��}���VR��#e'�/� s~��r���R�R�����(�0�)JR�
�sO7f���%�\���b=����������������d�8�G�����=�?��Xj��U\�`��#�T�i�t,qA #�?���w$S�	I�L`
v1-0003-Remove-check_decls.m4-obsoleted-by-Autoconf-updat.patchtext/plain; charset=UTF-8; name=v1-0003-Remove-check_decls.m4-obsoleted-by-Autoconf-updat.patch; x-mac-creator=0; x-mac-type=0Download
From 7100f8efe2ce147a07bb7c4154d9f34a72379520 Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <peter@eisentraut.org>
Date: Fri, 17 Jul 2020 10:26:27 +0200
Subject: [PATCH v1 3/4] Remove check_decls.m4, obsoleted by Autoconf update

---
 aclocal.m4            |   1 -
 config/check_decls.m4 | 116 ------------------------------------------
 2 files changed, 117 deletions(-)
 delete mode 100644 config/check_decls.m4

diff --git a/aclocal.m4 b/aclocal.m4
index bfd34ecec8..a517e949f1 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -4,7 +4,6 @@ m4_include([config/ax_prog_perl_modules.m4])
 m4_include([config/ax_pthread.m4])
 m4_include([config/c-compiler.m4])
 m4_include([config/c-library.m4])
-m4_include([config/check_decls.m4])
 m4_include([config/docbook.m4])
 m4_include([config/general.m4])
 m4_include([config/libtool.m4])
diff --git a/config/check_decls.m4 b/config/check_decls.m4
deleted file mode 100644
index f1b90c5430..0000000000
--- a/config/check_decls.m4
+++ /dev/null
@@ -1,116 +0,0 @@
-# config/check_decls.m4
-
-# This file redefines the standard Autoconf macro _AC_CHECK_DECL_BODY,
-# and adds a supporting function _AC_UNDECLARED_WARNING, to make
-# AC_CHECK_DECLS behave correctly when checking for built-in library
-# functions with clang.
-
-# This is based on commit 82ef7805faffa151e724aa76c245ec590d174580
-# in the Autoconf git repository.  We can drop it if they ever get
-# around to releasing a new version of Autoconf.  In the meantime,
-# it's distributed under Autoconf's license:
-
-# This file is part of Autoconf.  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, either version 3 of the License, or
-# (at your option) any later version.
-#
-# 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.
-#
-# Under Section 7 of GPL version 3, you are granted additional
-# permissions described in the Autoconf Configure Script Exception,
-# version 3.0, as published by the Free Software Foundation.
-#
-# You should have received a copy of the GNU General Public License
-# and a copy of the Autoconf Configure Script Exception along with
-# this program; see the files COPYINGv3 and COPYING.EXCEPTION
-# respectively.  If not, see <http://www.gnu.org/licenses/>.
-
-# Written by David MacKenzie, with help from
-# Franc,ois Pinard, Karl Berry, Richard Pixley, Ian Lance Taylor,
-# Roland McGrath, Noah Friedman, david d zuhn, and many others.
-
-
-# _AC_UNDECLARED_WARNING
-# ----------------------
-# Set ac_[]_AC_LANG_ABBREV[]_decl_warn_flag=yes if the compiler uses a warning,
-# not a more-customary error, to report some undeclared identifiers.  Fail when
-# an affected compiler warns also on valid input.  _AC_PROG_PREPROC_WORKS_IFELSE
-# solves a related problem.
-AC_DEFUN([_AC_UNDECLARED_WARNING],
-[# The Clang compiler raises a warning for an undeclared identifier that matches
-# a compiler builtin function.  All extant Clang versions are affected, as of
-# Clang 3.6.0.  Test a builtin known to every version.  This problem affects the
-# C and Objective C languages, but Clang does report an error under C++ and
-# Objective C++.
-#
-# Passing -fno-builtin to the compiler would suppress this problem.  That
-# strategy would have the advantage of being insensitive to stray warnings, but
-# it would make tests less realistic.
-AC_CACHE_CHECK([how $[]_AC_CC[] reports undeclared, standard C functions],
-[ac_cv_[]_AC_LANG_ABBREV[]_decl_report],
-[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [(void) strchr;])],
-  [AS_IF([test -s conftest.err], [dnl
-    # For AC_CHECK_DECL to react to warnings, the compiler must be silent on
-    # valid AC_CHECK_DECL input.  No library function is consistently available
-    # on freestanding implementations, so test against a dummy declaration.
-    # Include always-available headers on the off chance that they somehow
-    # elicit warnings.
-    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([dnl
-#include <float.h>
-#include <limits.h>
-#include <stdarg.h>
-#include <stddef.h>
-extern void ac_decl (int, char *);],
-[@%:@ifdef __cplusplus
-  (void) ac_decl ((int) 0, (char *) 0);
-  (void) ac_decl;
-@%:@else
-  (void) ac_decl;
-@%:@endif
-])],
-      [AS_IF([test -s conftest.err],
-	[AC_MSG_FAILURE([cannot detect from compiler exit status or warnings])],
-	[ac_cv_[]_AC_LANG_ABBREV[]_decl_report=warning])],
-      [AC_MSG_FAILURE([cannot compile a simple declaration test])])],
-    [AC_MSG_FAILURE([compiler does not report undeclared identifiers])])],
-  [ac_cv_[]_AC_LANG_ABBREV[]_decl_report=error])])
-
-case $ac_cv_[]_AC_LANG_ABBREV[]_decl_report in
-  warning) ac_[]_AC_LANG_ABBREV[]_decl_warn_flag=yes ;;
-  *) ac_[]_AC_LANG_ABBREV[]_decl_warn_flag= ;;
-esac
-])# _AC_UNDECLARED_WARNING
-
-# _AC_CHECK_DECL_BODY
-# -------------------
-# Shell function body for AC_CHECK_DECL.
-m4_define([_AC_CHECK_DECL_BODY],
-[  AS_LINENO_PUSH([$[]1])
-  # Initialize each $ac_[]_AC_LANG_ABBREV[]_decl_warn_flag once.
-  AC_DEFUN([_AC_UNDECLARED_WARNING_]_AC_LANG_ABBREV,
-	   [_AC_UNDECLARED_WARNING])dnl
-  AC_REQUIRE([_AC_UNDECLARED_WARNING_]_AC_LANG_ABBREV)dnl
-  [as_decl_name=`echo $][2|sed 's/ *(.*//'`]
-  [as_decl_use=`echo $][2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`]
-  AC_CACHE_CHECK([whether $as_decl_name is declared], [$[]3],
-  [ac_save_werror_flag=$ac_[]_AC_LANG_ABBREV[]_werror_flag
-  ac_[]_AC_LANG_ABBREV[]_werror_flag="$ac_[]_AC_LANG_ABBREV[]_decl_warn_flag$ac_[]_AC_LANG_ABBREV[]_werror_flag"
-  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([$[]4],
-[@%:@ifndef $[]as_decl_name
-@%:@ifdef __cplusplus
-  (void) $[]as_decl_use;
-@%:@else
-  (void) $[]as_decl_name;
-@%:@endif
-@%:@endif
-])],
-		   [AS_VAR_SET([$[]3], [yes])],
-		   [AS_VAR_SET([$[]3], [no])])
-  ac_[]_AC_LANG_ABBREV[]_werror_flag=$ac_save_werror_flag])
-  AS_LINENO_POP
-])# _AC_CHECK_DECL_BODY
-- 
2.27.0

v1-0004-configure.ac-Remove-_DARWIN_USE_64_BIT_INODE-hack.patchtext/plain; charset=UTF-8; name=v1-0004-configure.ac-Remove-_DARWIN_USE_64_BIT_INODE-hack.patch; x-mac-creator=0; x-mac-type=0Download
From b102290502a1cde85c97f4abdf9b0567db6acc22 Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <peter@eisentraut.org>
Date: Fri, 17 Jul 2020 10:26:27 +0200
Subject: [PATCH v1 4/4] configure.ac: Remove _DARWIN_USE_64_BIT_INODE hack

This is no longer necessary with Autoconf 2.69b.
---
 configure                  | 1 -
 configure.ac               | 5 -----
 src/include/pg_config.h.in | 2 --
 3 files changed, 8 deletions(-)

diff --git a/configure b/configure
index 4c7da12c31..5e621f3a3f 100755
--- a/configure
+++ b/configure
@@ -15957,7 +15957,6 @@ rm -rf conftest*
   fi
 fi
 
-
 fi
 
 # The cast to long int works around a bug in the HP C Compiler
diff --git a/configure.ac b/configure.ac
index 77ee9bee87..648832804a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1592,11 +1592,6 @@ esac
 # defines can affect what is generated for that.
 if test "$PORTNAME" != "win32"; then
    AC_SYS_LARGEFILE
-   dnl Autoconf 2.69's AC_SYS_LARGEFILE believes it's a good idea to #define
-   dnl _DARWIN_USE_64_BIT_INODE, but it isn't: on macOS 10.5 that activates a
-   dnl bug that causes readdir() to sometimes return EINVAL.  On later macOS
-   dnl versions where the feature actually works, it's on by default anyway.
-   AH_VERBATIM([_DARWIN_USE_64_BIT_INODE],[])
 fi
 
 dnl Check for largefile support (must be after AC_SYS_LARGEFILE)
diff --git a/src/include/pg_config.h.in b/src/include/pg_config.h.in
index 60579cee20..dee2707cc9 100644
--- a/src/include/pg_config.h.in
+++ b/src/include/pg_config.h.in
@@ -941,8 +941,6 @@
    */
 #undef XLOG_BLCKSZ
 
-
-
 /* Number of bits in a file offset, on hosts where this is settable. */
 #undef _FILE_OFFSET_BITS
 
-- 
2.27.0

#13Noname
ilmari@ilmari.org
In reply to: Noah Misch (#11)
Re: renaming configure.in to configure.ac

Noah Misch <noah@leadboat.com> writes:

On Thu, Jul 16, 2020 at 11:41:56AM +0100, Dagfinn Ilmari Mannsåker wrote:

Instead of doing this on the master branch, would it be worth defining a
namespace for branches that the buildfarm tests in addition to master
and REL_*_STABLE?

In the Perl world we have this in the form of smoke-me/* branches, and
it's invaluable to be able to test things across many platforms without
breaking blead (our name for the main development branch).

Potentially. What advantages and disadvantages has Perl experienced?

The advantage is getting proposed changes tested on a number of
platforms that individual developers otherwise don't have access to.
For example http://perl.develop-help.com/?b=smoke-me%2Filmari%2Fremove-symbian
shows the reults of one branch of mine.

The only disadvantage is that it takes up more build farm capacity, but
it's not used for all changes, only ones that developers are concerned
might break on other platforms (e.g. affecting platform-specific code or
constructs otherwise known to behave differently across platforms and
compilers).

- ilmari
--
- Twitter seems more influential [than blogs] in the 'gets reported in
the mainstream press' sense at least. - Matt McLeod
- That'd be because the content of a tweet is easier to condense down
to a mainstream media article. - Calle Dybedahl

#14Tom Lane
tgl@sss.pgh.pa.us
In reply to: Noname (#13)
Re: renaming configure.in to configure.ac

ilmari@ilmari.org (Dagfinn Ilmari =?utf-8?Q?Manns=C3=A5ker?=) writes:

Noah Misch <noah@leadboat.com> writes:

On Thu, Jul 16, 2020 at 11:41:56AM +0100, Dagfinn Ilmari Mannsåker wrote:

Instead of doing this on the master branch, would it be worth defining a
namespace for branches that the buildfarm tests in addition to master
and REL_*_STABLE?

Potentially. What advantages and disadvantages has Perl experienced?

The advantage is getting proposed changes tested on a number of
platforms that individual developers otherwise don't have access to.
For example http://perl.develop-help.com/?b=smoke-me%2Filmari%2Fremove-symbian
shows the reults of one branch of mine.
The only disadvantage is that it takes up more build farm capacity, but
it's not used for all changes, only ones that developers are concerned
might break on other platforms (e.g. affecting platform-specific code or
constructs otherwise known to behave differently across platforms and
compilers).

I'd argue that cluttering the main development repo with dead branches
is a non-negligible cost. We have one or two such left over from very
ancient days, and I don't really want more. (Is there a way to remove
a branch once it's been pushed to a shared git repo?)

Another issue is that we're not going to open up the main repo for
access by non-committers, so this approach doesn't help for most
developers. We've had some success, I think, with Munro's cfbot
solution --- I'd rather see that approach expanded to provide more
test environments.

regards, tom lane

#15Magnus Hagander
magnus@hagander.net
In reply to: Tom Lane (#14)
Re: renaming configure.in to configure.ac

On Fri, Jul 17, 2020 at 4:12 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:

ilmari@ilmari.org (Dagfinn Ilmari =?utf-8?Q?Manns=C3=A5ker?=) writes:

Noah Misch <noah@leadboat.com> writes:

On Thu, Jul 16, 2020 at 11:41:56AM +0100, Dagfinn Ilmari Mannsåker

wrote:

Instead of doing this on the master branch, would it be worth defining

a

namespace for branches that the buildfarm tests in addition to master
and REL_*_STABLE?

Potentially. What advantages and disadvantages has Perl experienced?

The advantage is getting proposed changes tested on a number of
platforms that individual developers otherwise don't have access to.
For example

http://perl.develop-help.com/?b=smoke-me%2Filmari%2Fremove-symbian

shows the reults of one branch of mine.
The only disadvantage is that it takes up more build farm capacity, but
it's not used for all changes, only ones that developers are concerned
might break on other platforms (e.g. affecting platform-specific code or
constructs otherwise known to behave differently across platforms and
compilers).

I'd argue that cluttering the main development repo with dead branches
is a non-negligible cost. We have one or two such left over from very
ancient days, and I don't really want more. (Is there a way to remove
a branch once it's been pushed to a shared git repo?)

Yes, it's trivial to remove a branch from a shared git repo. In modern
versions of git, just "git push origin --delete stupidbranch".

The actual commits remain in the repo of course, until such time that it's
GCed.

Another issue is that we're not going to open up the main repo for

access by non-committers, so this approach doesn't help for most
developers. We've had some success, I think, with Munro's cfbot
solution --- I'd rather see that approach expanded to provide more
test environments.

That one does more or less what Dagfinn suggests except in a separate repo.
We could also just have a separate repo for it where people could push if
we wanted to. Which could be committers, or others. But in comparison with
what Perl does, I would assume actually having "just committers"be able to
push would really be enough for that. A committer should be able to judge
whether a patch needs extra cross-platform testing (and the cfbot does just
fine for the limited platforms it runs on, which would still be good enough
for *most* patches).

--
Magnus Hagander
Me: https://www.hagander.net/ <http://www.hagander.net/&gt;
Work: https://www.redpill-linpro.com/ <http://www.redpill-linpro.com/&gt;

#16Tom Lane
tgl@sss.pgh.pa.us
In reply to: Magnus Hagander (#15)
Re: renaming configure.in to configure.ac

Magnus Hagander <magnus@hagander.net> writes:

That one does more or less what Dagfinn suggests except in a separate repo.
We could also just have a separate repo for it where people could push if
we wanted to. Which could be committers, or others. But in comparison with
what Perl does, I would assume actually having "just committers"be able to
push would really be enough for that. A committer should be able to judge
whether a patch needs extra cross-platform testing (and the cfbot does just
fine for the limited platforms it runs on, which would still be good enough
for *most* patches).

By and large, once a patch has reached that stage, we just push it to
master and deal with any fallout. I suppose you could argue that
pushing to a testing branch first would reduce the amount of time that
HEAD is broken, but TBH I think it would not help much. An awful lot
of the stuff that breaks the buildfarm is patches that the committer
was not expecting trouble with.

regards, tom lane

#17Andres Freund
andres@anarazel.de
In reply to: Peter Eisentraut (#12)
Re: renaming configure.in to configure.ac

Hi,

On 2020-07-17 10:46:30 +0200, Peter Eisentraut wrote:

Okay, let's take a look. Attached is a patch series.

Cool.

One thing that's annoying is that the release notes claim that configure
should now be faster, and some of the changes they have made should support
that, but my (limited) testing doesn't bear that out. Most notably, the
newly arisen test

checking for g++ option to enable C++11 features... none needed

takes approximately 10 seconds(!) on my machine (for one loop, since "none
needed"; good luck if you need more than none).

Something got to be wrong here, no? I see that there's a surprisingly
large c++ program embedded for this test, but still, 10s?

It's not even clear why we're seeing this test at all? Is this now
always part of AC_PROG_CXX?

Greetings,

Andres Freund

#18Thomas Munro
thomas.munro@gmail.com
In reply to: Tom Lane (#14)
Re: renaming configure.in to configure.ac

On Sat, Jul 18, 2020 at 2:12 AM Tom Lane <tgl@sss.pgh.pa.us> wrote:

Another issue is that we're not going to open up the main repo for
access by non-committers, so this approach doesn't help for most
developers. We've had some success, I think, with Munro's cfbot
solution --- I'd rather see that approach expanded to provide more
test environments.

Recently I've been using Cirrus CI for my own development branches
that involve portability stuff, because it supports Linux, FreeBSD,
macOS and Windows in one place. That's nearly half the OSes we
support, and they hinted that they might be about to add more OSes
too. What you get (if you're lucky) is a little green check mark
beside the commit hash on github, which you can click for more info,
like this:

https://github.com/macdice/postgres/tree/cirrus-ci

The .cirrus.yml file shown in that branch is just a starting point.
See list of problems at the top; help wanted. I also put some
information about this on
https://wiki.postgresql.org/wiki/Continuous_Integration. I think if
we could get to a really good dot file for (say) the three providers
shown there, we should just stick them in the tree so that anyone can
turn that on for their own public development branches with a click.
Then cfbot wouldn't have to add it, but it'd still have a good reason
to exist, to catch bitrot and as a second line of defence for people
who don't opt into the first one.

#19Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Eisentraut (#12)
Re: renaming configure.in to configure.ac

Peter Eisentraut <peter.eisentraut@2ndquadrant.com> writes:

On 2020-07-16 18:17, Tom Lane wrote:

Yeah. Because we'd want to rip out those hacks, it's not quite as simple
as "regenerate configure with this other autoconf version"; somebody will
have to do some preliminary investigation and produce a patch for the
autoconf input files. Peter, were you intending to do that?

Okay, let's take a look. Attached is a patch series.

I haven't carefully read any of these patches, but I applied them and did
some testing on a couple of machines. I find that I get near-identical
output files, so the functionality appears OK. There are just a couple of
non-comment differences in pg_config.h:

1. The new autoconf omits
#define HAVE_MEMORY_H 1
which we don't care about, so that's not an issue.

2. "pg_restrict" and "restrict" get defined as "__restrict__" not
"__restrict". That seems cosmetic.

One thing that's annoying is that the release notes claim that configure
should now be faster, and some of the changes they have made should
support that, but my (limited) testing doesn't bear that out. Most
notably, the newly arisen test
checking for g++ option to enable C++11 features... none needed
takes approximately 10 seconds(!) on my machine (for one loop, since
"none needed"; good luck if you need more than none).

Yeah, I confirm these results. The time penalty for the "C++11 features"
test is about 8 seconds on my RHEL8 machine, but only about 3 seconds
on a current MacBook Pro. Not sure if that's all about faster hardware
or if clang is faster than gcc for this test.

Now, the one bit of good news about that is that the result is cacheable:
using either ccache or configure --enable-cache causes the time for a
repeated test to drop to nil. Still, it's going to be damn annoying for
environments where neither escape hatch applies.

As best I can tell, the reason it's so slow is that somebody decided they
ought to have a completionist approach to discovering whether the compiler
has "C++11 features". The test program embedded in configure for this
is a good 220 lines long, and it imports 20 different header files, and
appears to be trying to exercise every one of those modules. This seems
utterly unreasonable. The traditional autoconf approach, I think, has
been to test for a couple of bellwether features and assume that if
you have those then you have the full set. As you say, it'd be
particularly important to do it like that if the test requires multiple
iterations to find working switches.

BTW, when I tried this on an old gcc (gaur's compiler), the C++11 test
failed fairly quickly but then it spent an equally ridiculous amount of
time testing for "C++98 features". So both parts of that are completely
overdesigned if you ask me.

So I think we should push back on that test, or if all else fails
find a way to dike it out of our configure run --- we don't actually
care about these feature switches do we?

Also, I'm kinda wondering why our configure script investigates g++
at all when I haven't specified --with-llvm. Up to now, that hasn't
been enough of a penalty to really get me irate, but this behavior
might get me on the warpath about it.

Anyway, the bottom line for speed is that on a modern Linux (RHEL8),
considering only the runtime in the fully-cached case (both ccache and
accache up to date), it does seem like the new version is noticeably
faster: I see ~2.2 seconds instead of 2.7. Similarly on my MacBook Pro.
It's hard to compare the non-cached cases because the silly g++ test
swamps everything.

This clearly depends on a lot of specifics of the environment, so some
more testing would be useful.

The test scenarios I tried were

* gcc 8.3.1 on RHEL8
* Apple clang version 11.0.3 on macOS Catalina
* gcc 4.5.4 on HPUX 10.20

regards, tom lane

#20Andres Freund
andres@anarazel.de
In reply to: Tom Lane (#19)
Re: renaming configure.in to configure.ac

Hi,

On 2020-07-18 20:15:52 -0400, Tom Lane wrote:

As best I can tell, the reason it's so slow is that somebody decided they
ought to have a completionist approach to discovering whether the compiler
has "C++11 features". The test program embedded in configure for this
is a good 220 lines long, and it imports 20 different header files, and
appears to be trying to exercise every one of those modules. This seems
utterly unreasonable. The traditional autoconf approach, I think, has
been to test for a couple of bellwether features and assume that if
you have those then you have the full set. As you say, it'd be
particularly important to do it like that if the test requires multiple
iterations to find working switches.

Yea, that's way over top.

So I think we should push back on that test, or if all else fails
find a way to dike it out of our configure run --- we don't actually
care about these feature switches do we?

Not at the moment, at least.

Also, I'm kinda wondering why our configure script investigates g++
at all when I haven't specified --with-llvm. Up to now, that hasn't
been enough of a penalty to really get me irate, but this behavior
might get me on the warpath about it.

IIRC we ended up doing it that way because it'd be annoying for pgxs
using extensions etc to not be able to rely on the c++ compiler being
detected, even when actually available.

The docs don't mention disabling the conformance tests:

If necessary, add an option to output variable @code{CXX} to enable
support for ISO Standard C++ features with extensions. Prefer the
newest C++ standard that is supported. Currently the newest standard is
ISO C++11, with ISO C++98 being the previous standard. After calling
this macro you can check whether the C++ compiler has been set to accept
Standard C++; if not, the shell variable @code{ac_cv_prog_cxx_stdcxx} is
set to @samp{no}. If the C++ compiler will not accept C++11, the shell
variable @code{ac_cv_prog_cxx_cxx11} is set to @samp{no}, and if it will
not accept C++98, the shell variable @code{ac_cv_prog_cxx_cxx98} is set
to @samp{no}.

And it can't be cleanly done in the code either afaict:

In lib/autoconf/c.m4
_AC_PROG_CXX_CXX11([ac_prog_cxx_stdcxx=cxx11
ac_cv_prog_cxx_stdcxx=$ac_cv_prog_cxx_cxx11
ac_cv_prog_cxx_cxx98=$ac_cv_prog_cxx_cxx11],
[_AC_PROG_CXX_CXX98([ac_prog_cxx_stdcxx=cxx98
ac_cv_prog_cxx_stdcxx=$ac_cv_prog_cxx_cxx98],
[ac_prog_cxx_stdcxx=no
ac_cv_prog_cxx_stdcxx=no])])

Presumably we could, as a pretty ugly workaround, define the cache
variable to a constant value :/

The commit that added this is

commit bd79b51000e2fe59368c93ff463adb59852ec6e7
Author: Roger Leigh <rleigh@debian.org>
Date: 2013-01-20 18:50:49 +0000

AC_PROG_CXX: Add checks for C++11, C++98TR1 and C++98

Greetings,

Andres Freund

#21Peter Eisentraut
peter.eisentraut@2ndquadrant.com
In reply to: Peter Eisentraut (#12)
Re: renaming configure.in to configure.ac

On 2020-07-17 10:46, Peter Eisentraut wrote:

v1-0001-Rename-configure.in-to-configure.ac.patch

I have committed that, and I have sent feedback to the Autoconf
developers about our concerns about the slowness of some of the new tests.

--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

#22Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Eisentraut (#21)
Re: renaming configure.in to configure.ac

Peter Eisentraut <peter.eisentraut@2ndquadrant.com> writes:

On 2020-07-17 10:46, Peter Eisentraut wrote:

v1-0001-Rename-configure.in-to-configure.ac.patch

I have committed that, and I have sent feedback to the Autoconf
developers about our concerns about the slowness of some of the new tests.

Sounds good. Do we want to try Noah's idea of temporarily committing
the remaining changes, to see if the buildfarm is happy?

regards, tom lane

#23Peter Eisentraut
peter.eisentraut@2ndquadrant.com
In reply to: Tom Lane (#22)
Re: renaming configure.in to configure.ac

On 2020-07-24 15:23, Tom Lane wrote:

Peter Eisentraut <peter.eisentraut@2ndquadrant.com> writes:

On 2020-07-17 10:46, Peter Eisentraut wrote:

v1-0001-Rename-configure.in-to-configure.ac.patch

I have committed that, and I have sent feedback to the Autoconf
developers about our concerns about the slowness of some of the new tests.

The slow C++ feature test has been fixed in Autoconf git.

Sounds good. Do we want to try Noah's idea of temporarily committing
the remaining changes, to see if the buildfarm is happy?

I think to get value out of this you'd have to compare the config.status
output files (mainly pg_config.h and Makefile.global) before and after.
Otherwise you're just testing that the shell can parse the script.
Perhaps some manual tests on, say, AIX and HP-UX using the native shell
would be of some value.

--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

#24Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Eisentraut (#23)
Re: renaming configure.in to configure.ac

Peter Eisentraut <peter.eisentraut@2ndquadrant.com> writes:

On 2020-07-24 15:23, Tom Lane wrote:

Sounds good. Do we want to try Noah's idea of temporarily committing
the remaining changes, to see if the buildfarm is happy?

I think to get value out of this you'd have to compare the config.status
output files (mainly pg_config.h and Makefile.global) before and after.
Otherwise you're just testing that the shell can parse the script.
Perhaps some manual tests on, say, AIX and HP-UX using the native shell
would be of some value.

I already did that on assorted boxes, using the patches you previously
posted [1]/messages/by-id/30379.1595117752@sss.pgh.pa.us. Do you think there's value in re-doing it manually,
rather than just having at it with the buildfarm?

(I did not try to test whether the configure script itself could be
regenerated on an ancient platform; I doubt we care.)

regards, tom lane

[1]: /messages/by-id/30379.1595117752@sss.pgh.pa.us

#25Peter Eisentraut
peter.eisentraut@2ndquadrant.com
In reply to: Tom Lane (#24)
Re: renaming configure.in to configure.ac

On 2020-08-25 18:44, Tom Lane wrote:

Peter Eisentraut <peter.eisentraut@2ndquadrant.com> writes:

On 2020-07-24 15:23, Tom Lane wrote:

Sounds good. Do we want to try Noah's idea of temporarily committing
the remaining changes, to see if the buildfarm is happy?

I think to get value out of this you'd have to compare the config.status
output files (mainly pg_config.h and Makefile.global) before and after.
Otherwise you're just testing that the shell can parse the script.
Perhaps some manual tests on, say, AIX and HP-UX using the native shell
would be of some value.

I already did that on assorted boxes, using the patches you previously
posted [1]. Do you think there's value in re-doing it manually,
rather than just having at it with the buildfarm?

I think right now we don't need any further organized testing.

--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services