From 2d5eb9fe1ceb212d67693a78986e2e1cfd8c2746 Mon Sep 17 00:00:00 2001 From: Mario Fetka Date: Tue, 28 May 2024 17:59:32 +0200 Subject: [PATCH] add release dir --- release/A/Release-Notes-3.5 | 149 + release/A/Version | 1 + release/A/config/Makefile | 128 + release/A/etc/ardomains.cf | 18 + release/A/etc/motd | 3 + release/A/etc/serverlist | 45 + release/base/Archierc | 22 + release/base/Manifest | 303 + release/base/Release-Notes-3.5 | 149 + release/base/Version | 1 + release/base/cgi/bin/archie.cgi | 435 + release/base/cgi/html/archie-adv.html | 47 + release/base/cgi/html/archie-help.html | 138 + release/base/cgi/html/archie.html | 30 + release/base/cgi/html/query.gif | Bin 0 -> 6845 bytes release/base/cgi/html/results.gif | Bin 0 -> 10382 bytes release/base/config/Makefile | 128 + release/base/contrib/README | 49 + release/base/contrib/archie.el | 71 + release/base/contrib/archie.zip | Bin 0 -> 73212 bytes release/base/contrib/c-archie-1.3.2-vms.com | 9459 +++++++++++++++++ release/base/contrib/c-archie-1.4.1.tar.gz | Bin 0 -> 99300 bytes .../base/contrib/less-177-for-archie.tar.gz | Bin 0 -> 107556 bytes release/base/contrib/mac-archie-client-09.hqx | 1126 ++ release/base/contrib/perl-archie-3.8.tar.gz | Bin 0 -> 17673 bytes release/base/contrib/xarchie-2.0.8.tar.gz | Bin 0 -> 271060 bytes release/base/doc/manual-3.5.ps.gz | Bin 0 -> 244067 bytes release/base/etc/ardomains.cf | 18 + release/base/etc/arretdefs.cf | 3 + release/base/etc/arretrieve.cf | 2 + release/base/etc/arupdate.cf | 3 + release/base/etc/catalogs.cf | 7 + release/base/etc/domain.order | 4 + release/base/etc/email.help | 366 + release/base/etc/find_files.cf | 1 + release/base/etc/hm_db.cf | 5 + release/base/etc/inform_web | 29 + release/base/etc/manpage.ascii | 1107 ++ release/base/etc/manpage.roff | 1355 +++ release/base/etc/motd | 3 + release/base/etc/options.cf | 15 + release/base/etc/resolv.conf | 3 + release/base/etc/serverlist | 45 + release/base/etc/sites.glist | 256 + release/base/etc/sites.update | 791 ++ release/base/etc/stoplist | 415 + release/base/etc/termcap | 2892 +++++ release/base/etc/whatis | 3087 ++++++ release/base/help/english/= | 21 + release/base/help/english/about/= | 81 + release/base/help/english/bugs/= | 3 + release/base/help/english/bye/= | 5 + release/base/help/english/compress/= | 6 + release/base/help/english/domains/= | 23 + release/base/help/english/done/= | 7 + release/base/help/english/email/= | 14 + release/base/help/english/exit/= | 5 + release/base/help/english/find/= | 24 + release/base/help/english/general/= | 10 + release/base/help/english/help/= | 17 + release/base/help/english/list/= | 28 + release/base/help/english/mail/= | 29 + release/base/help/english/manpage/= | 12 + release/base/help/english/motd/= | 5 + release/base/help/english/nopager/= | 5 + release/base/help/english/pager/= | 4 + release/base/help/english/path/= | 6 + release/base/help/english/prog/= | 24 + release/base/help/english/quit/= | 5 + release/base/help/english/regex/= | 341 + release/base/help/english/servers/= | 4 + release/base/help/english/set/= | 34 + release/base/help/english/set/autologout/= | 14 + release/base/help/english/set/compress/= | 5 + release/base/help/english/set/encode/= | 6 + release/base/help/english/set/language/= | 3 + release/base/help/english/set/mailto/= | 30 + release/base/help/english/set/match_domain/= | 28 + release/base/help/english/set/match_path/= | 22 + .../base/help/english/set/max_split_size/= | 7 + release/base/help/english/set/maxhits/= | 55 + release/base/help/english/set/maxhitspm/= | 55 + release/base/help/english/set/maxmatch/= | 55 + release/base/help/english/set/output_format/= | 4 + release/base/help/english/set/pager/= | 11 + release/base/help/english/set/search/= | 138 + release/base/help/english/set/server/= | 4 + release/base/help/english/set/sortby/= | 49 + release/base/help/english/set/status/= | 22 + release/base/help/english/set/term/= | 22 + release/base/help/english/show/= | 17 + release/base/help/english/site/= | 5 + release/base/help/english/stty/= | 11 + release/base/help/english/term/= | 4 + release/base/help/english/unset/= | 16 + release/base/help/english/version/= | 6 + release/base/help/english/whatis/= | 42 + release/base/help/francais/.doit | 2 + release/base/help/francais/.nl | 1 + release/base/help/francais/= | 13 + release/base/logs/archie.log | 0 release/base/logs/email.log | 0 release/base/manpages/anonftp_parser_output.5 | 85 + release/base/manpages/archie.n | 1172 ++ release/base/manpages/archie_clients.n | 454 + release/base/manpages/archie_headers.5 | 184 + release/base/manpages/archie_protocol.5 | 197 + release/base/manpages/arcontrol.n | 352 + release/base/manpages/ardomains.n | 211 + release/base/manpages/arexchange.n | 353 + release/base/manpages/arretrieve.n | 216 + release/base/manpages/arserver.n | 335 + release/base/manpages/convert_hostdb.n | 53 + release/base/manpages/db_build.n | 125 + release/base/manpages/db_check.n | 117 + release/base/manpages/db_dump.n | 99 + release/base/manpages/db_reorder.n | 116 + release/base/manpages/db_siteidx.n | 101 + release/base/manpages/db_stats.n | 108 + release/base/manpages/delete_anonftp.n | 118 + release/base/manpages/delete_webindex.n | 121 + release/base/manpages/handle_header.n | 179 + release/base/manpages/host_manage.n | 552 + release/base/manpages/insert_anonftp.n | 173 + release/base/manpages/insert_webindex.n | 171 + release/base/manpages/mail_stats.n | 57 + release/base/manpages/net_anonftp.n | 151 + release/base/manpages/parse_anonftp.n | 138 + .../base/manpages/parse_anonftp_unix_bsd.n | 96 + release/base/manpages/parse_anonftp_vms_std.n | 1 + release/base/manpages/retrieve_anonftp.n | 298 + release/base/manpages/update_anonftp.n | 133 + release/base/manpages/weaseld.n | 120 + release/base/pager/bin/less.hlp | 100 + release/base/pager/bin/less.sh | 2 + release/base/pager/etc/termcap | 2892 +++++ release/base/pfs/pfs.log | 0 release/base/tmp/db.tar | Bin 0 -> 16384 bytes release/install/0README | 36 + release/install/unrotate | 93 + release/install/untar | 98 + release/install/unwrap | 230 + 142 files changed, 34106 insertions(+) create mode 100644 release/A/Release-Notes-3.5 create mode 100644 release/A/Version create mode 100644 release/A/config/Makefile create mode 100644 release/A/etc/ardomains.cf create mode 100644 release/A/etc/motd create mode 100644 release/A/etc/serverlist create mode 100644 release/base/Archierc create mode 100644 release/base/Manifest create mode 100644 release/base/Release-Notes-3.5 create mode 100644 release/base/Version create mode 100644 release/base/cgi/bin/archie.cgi create mode 100644 release/base/cgi/html/archie-adv.html create mode 100644 release/base/cgi/html/archie-help.html create mode 100644 release/base/cgi/html/archie.html create mode 100644 release/base/cgi/html/query.gif create mode 100644 release/base/cgi/html/results.gif create mode 100644 release/base/config/Makefile create mode 100644 release/base/contrib/README create mode 100644 release/base/contrib/archie.el create mode 100644 release/base/contrib/archie.zip create mode 100644 release/base/contrib/c-archie-1.3.2-vms.com create mode 100644 release/base/contrib/c-archie-1.4.1.tar.gz create mode 100644 release/base/contrib/less-177-for-archie.tar.gz create mode 100644 release/base/contrib/mac-archie-client-09.hqx create mode 100644 release/base/contrib/perl-archie-3.8.tar.gz create mode 100644 release/base/contrib/xarchie-2.0.8.tar.gz create mode 100644 release/base/doc/manual-3.5.ps.gz create mode 100644 release/base/etc/ardomains.cf create mode 100644 release/base/etc/arretdefs.cf create mode 100644 release/base/etc/arretrieve.cf create mode 100644 release/base/etc/arupdate.cf create mode 100644 release/base/etc/catalogs.cf create mode 100644 release/base/etc/domain.order create mode 100644 release/base/etc/email.help create mode 100644 release/base/etc/find_files.cf create mode 100644 release/base/etc/hm_db.cf create mode 100644 release/base/etc/inform_web create mode 100644 release/base/etc/manpage.ascii create mode 100644 release/base/etc/manpage.roff create mode 100644 release/base/etc/motd create mode 100644 release/base/etc/options.cf create mode 100644 release/base/etc/resolv.conf create mode 100644 release/base/etc/serverlist create mode 100644 release/base/etc/sites.glist create mode 100644 release/base/etc/sites.update create mode 100644 release/base/etc/stoplist create mode 100644 release/base/etc/termcap create mode 100644 release/base/etc/whatis create mode 100644 release/base/help/english/= create mode 100644 release/base/help/english/about/= create mode 100644 release/base/help/english/bugs/= create mode 100644 release/base/help/english/bye/= create mode 100644 release/base/help/english/compress/= create mode 100644 release/base/help/english/domains/= create mode 100644 release/base/help/english/done/= create mode 100644 release/base/help/english/email/= create mode 100644 release/base/help/english/exit/= create mode 100644 release/base/help/english/find/= create mode 100644 release/base/help/english/general/= create mode 100644 release/base/help/english/help/= create mode 100644 release/base/help/english/list/= create mode 100644 release/base/help/english/mail/= create mode 100644 release/base/help/english/manpage/= create mode 100644 release/base/help/english/motd/= create mode 100644 release/base/help/english/nopager/= create mode 100644 release/base/help/english/pager/= create mode 100644 release/base/help/english/path/= create mode 100644 release/base/help/english/prog/= create mode 100644 release/base/help/english/quit/= create mode 100644 release/base/help/english/regex/= create mode 100644 release/base/help/english/servers/= create mode 100644 release/base/help/english/set/= create mode 100644 release/base/help/english/set/autologout/= create mode 100644 release/base/help/english/set/compress/= create mode 100644 release/base/help/english/set/encode/= create mode 100644 release/base/help/english/set/language/= create mode 100644 release/base/help/english/set/mailto/= create mode 100644 release/base/help/english/set/match_domain/= create mode 100644 release/base/help/english/set/match_path/= create mode 100644 release/base/help/english/set/max_split_size/= create mode 100644 release/base/help/english/set/maxhits/= create mode 100644 release/base/help/english/set/maxhitspm/= create mode 100644 release/base/help/english/set/maxmatch/= create mode 100644 release/base/help/english/set/output_format/= create mode 100644 release/base/help/english/set/pager/= create mode 100644 release/base/help/english/set/search/= create mode 100644 release/base/help/english/set/server/= create mode 100644 release/base/help/english/set/sortby/= create mode 100644 release/base/help/english/set/status/= create mode 100644 release/base/help/english/set/term/= create mode 100644 release/base/help/english/show/= create mode 100644 release/base/help/english/site/= create mode 100644 release/base/help/english/stty/= create mode 100644 release/base/help/english/term/= create mode 100644 release/base/help/english/unset/= create mode 100644 release/base/help/english/version/= create mode 100644 release/base/help/english/whatis/= create mode 100644 release/base/help/francais/.doit create mode 100644 release/base/help/francais/.nl create mode 100644 release/base/help/francais/= create mode 100644 release/base/logs/archie.log create mode 100644 release/base/logs/email.log create mode 100644 release/base/manpages/anonftp_parser_output.5 create mode 100644 release/base/manpages/archie.n create mode 100644 release/base/manpages/archie_clients.n create mode 100644 release/base/manpages/archie_headers.5 create mode 100644 release/base/manpages/archie_protocol.5 create mode 100644 release/base/manpages/arcontrol.n create mode 100644 release/base/manpages/ardomains.n create mode 100644 release/base/manpages/arexchange.n create mode 100644 release/base/manpages/arretrieve.n create mode 100644 release/base/manpages/arserver.n create mode 100644 release/base/manpages/convert_hostdb.n create mode 100644 release/base/manpages/db_build.n create mode 100644 release/base/manpages/db_check.n create mode 100644 release/base/manpages/db_dump.n create mode 100644 release/base/manpages/db_reorder.n create mode 100644 release/base/manpages/db_siteidx.n create mode 100644 release/base/manpages/db_stats.n create mode 100644 release/base/manpages/delete_anonftp.n create mode 100644 release/base/manpages/delete_webindex.n create mode 100644 release/base/manpages/handle_header.n create mode 100644 release/base/manpages/host_manage.n create mode 100644 release/base/manpages/insert_anonftp.n create mode 100644 release/base/manpages/insert_webindex.n create mode 100644 release/base/manpages/mail_stats.n create mode 100644 release/base/manpages/net_anonftp.n create mode 100644 release/base/manpages/parse_anonftp.n create mode 100644 release/base/manpages/parse_anonftp_unix_bsd.n create mode 100644 release/base/manpages/parse_anonftp_vms_std.n create mode 100644 release/base/manpages/retrieve_anonftp.n create mode 100644 release/base/manpages/update_anonftp.n create mode 100644 release/base/manpages/weaseld.n create mode 100644 release/base/pager/bin/less.hlp create mode 100644 release/base/pager/bin/less.sh create mode 100644 release/base/pager/etc/termcap create mode 100644 release/base/pfs/pfs.log create mode 100644 release/base/tmp/db.tar create mode 100644 release/install/0README create mode 100755 release/install/unrotate create mode 100755 release/install/untar create mode 100755 release/install/unwrap diff --git a/release/A/Release-Notes-3.5 b/release/A/Release-Notes-3.5 new file mode 100644 index 0000000..976f53d --- /dev/null +++ b/release/A/Release-Notes-3.5 @@ -0,0 +1,149 @@ + + + + + Archie 3.5 Beta + --------------- + + + +Patch level 3: +============== + + - Support for ls-lR.gz files + - New WWW front-end to the Archie database. + - Improved search speed. + - ISO-Latin-1 support for searches. + - bug fixes as well.. + + +Some notes on how to install or take advantage of the new features. + + +ls-lR.gz +-------- + You must have gzip and gunzip on your system. + You need to edit the files + + ~archie/etc/arretdefs.cf + + modify the line anonftp:unix_bsd:image:.Z:anonymous:::-R:*?:ls-lR + to anonftp:unix_bsd:image:.gz,.Z:anonymous:::-R:*?:ls-lR + + you need to modify the file + + ~archie/etc/options.cf (read the instructions in that file) + + +WWW front-end +------------- + + Thw files related to the WWW front-end are in ~archie/cgi + + You will find in ~archie/cgi/bin + a perl script (archie) and a binary program (cgi-client). + + The top part of the perl script will tell you what needs to + be setup. + + In ~archie/cgi/html are the different gif files and search forms. + They are not in their final stage ... so do not hesitate to + give us your comments. + + The files archie and archie-adv in that directory should + be modified to indicate where the perl script is located. + + We recommend that a uniform url be used for archie so that + Archie users will easily find the search page. + + http://archie.foo.bar/archie and + http://archie.foo.bar/archie-adv + + + +New in this release: +==================== + +Here are the major added components to the system with some +of the key points involved in each one of them. + + +- Support for a new database module (webindex) + - retrieval of HTML pages through http protocol + - Keyword extraction + - Controlled crawling of the WWW + - Site by site basis + - Content extraction + - configurable stoplist (keyword exclusion) + +- New database structure + - More reliable structure. + + +- New search engine + - Based on a paged tree structured index + - Faster searches + - Less memory required + - More disk space for construction of the index + +- New search interface + - cgi-bin compliant interface + + +- A better domain filter for anonftp + - results can be pre-configured to return in a certain order + (e.g. ftp sites close to the server first) + - configurable on a server basis + + + +Fixed bugs +========== + + +- the ``-t'' switch on arcontrol creates the new files and work files + in the specified temp directory and not in ~archie/db/tmp + + +- Lock files are now created in ~archie/db/locks + +- host_manage can handle multiple preferred hostsnames + + + + +Currently working on: +===================== + +- Rewrite of the cgi-bin front-end to be more flexible. + +- Archie Help page + +- Regular Expressions with the new search engine. + +- New set of manpages and documentation. + +- Additional type of searches + + + + + +Currently testing: +================== + +- dirsrv with the new database technology. + + + + +Known Problems: +=============== + +- arexchange of webindex will not fully functional + it will not transfer .excerpt files. We still need to experiment + with indexing of the Web and see what is involved with + exchanges of data. + + + diff --git a/release/A/Version b/release/A/Version new file mode 100644 index 0000000..b9bfc26 --- /dev/null +++ b/release/A/Version @@ -0,0 +1 @@ +Version 3.5, Patch Level 4 diff --git a/release/A/config/Makefile b/release/A/config/Makefile new file mode 100644 index 0000000..cc10dc3 --- /dev/null +++ b/release/A/config/Makefile @@ -0,0 +1,128 @@ +# archie Version 3.5-beta +# Bunyip Information Systems, 1994 +# $Id: Makefile,v 1.10 1995/03/17 13:50:36 pedro Exp $ +# +# This is the configuration Makefile for the archie V 3.5 distribution +# +# Change the following 2 definitions if you don't like the defaults MAKE +# SURE that you have allocated the archie user codes before running this +# Makefile The name of the archie administrative code. You might want to +# create an archie group as well +# +# YOU MUST RUN THIS MAKEFILE AS SUPERUSER +# + +ARCHUSER=archie +ARCHGRP =archie + +# The place for the manpages describing the binaries + +MANEXT=n +MAN=../man + +#MAN5EXT=$(MANEXT) +MAN5EXT=5 +MAN5=$(MAN)/man${MAN5EXT} + +# Default permissions for archie binaries + +AR_PERMS=711 +ARS_PERMS=755 + +all: su links manpages owners archieb pfs links + + +su: + @echo "Making sure you're superuser" + @id=`id | sed 's/(.*$$//' | sed 's/^.*=//'`; \ + echo "Your uid is $$id"; \ + if [ "$$id" -ne "0" ]; then \ + echo "You must be running as superuser to configure archie"; \ + exit 2;\ + fi + +owners: + @echo Changing ownership to the archie user: $(ARCHUSER) + (cd ..; chown -R $(ARCHUSER) *; chgrp -R $(ARCHGRP) *;\ + chown $(ARCHUSER) . ; chgrp $(ARCHGRP) .; \ + chown $(ARCHUSER) .*; chgrp $(ARCHGRP) .*; chmod 755 .) + +archieb: + @echo Copying the shell and perl scripts into the bin directory + (cd ../scripts; tar cf - . | gzip > /tmp/scripts.tgz ; cd ../bin ;\ + ../scripts/untar /tmp/scripts.tgz) + @echo Setting permissions for binaries + for i in `find ../bin -type f -print | grep -v CVS | \ + sed 's?../bin/??g'`; do\ + chmod $(AR_PERMS) ../bin/$$i;\ + done + @echo Setting permissions for scripts + cd ../bin; /bin/file ./* | egrep -v '(demand|link|directory)' | \ + sed 's?:.*$$??' | xargs -t chmod $(ARS_PERMS) + @echo Setting permissions for logs + chmod 662 ../logs/email.log + @echo Setting permissions for tmp directory + chmod 1777 ../db/tmp ../tmp + @echo Taking care of the pager + cp ../bin/less* ../pager/bin + chmod 555 ../pager/bin/less* + @echo Setting permissions for telnet client + chown root ../bin/telnet-client + chmod 111 ../bin/telnet-client + chmod u+s ../bin/telnet-client + chmod 755 ../bin ../etc ../logs + chmod 644 ../etc/* + @echo Setting permissions for cgi progs + chmod 755 ../cgi ../cgi/* + chmod 644 ../cgi/html/* + chmod 755 ../cgi/bin/archie.cgi + chmod 755 ../cgi/bin/cgi-client + chmod u+s ../cgi/bin/cgi-client + @echo Setting permissions for databases + chmod o+rx ../db ../db/* + +manpages: + -mkdir $(MAN) && chmod 755 $(MAN) + -mkdir $(MAN)/man$(MANEXT) && chmod 755 $(MAN)/man$(MANEXT) + -mkdir $(MAN5) && chmod 755 $(MAN5) + for i in `find ../manpages/*.n -type f -print | grep -v CVS |\ + sed 's?../manpages/??g' | sed 's/\..$$//g'`; do\ + cp ../manpages/$$i.n $(MAN)/man$(MANEXT)/$$i.$(MANEXT);\ + chmod 644 $(MAN)/man$(MANEXT)/$$i.$(MANEXT);\ + if [ -f /usr/ucb/echo ] ; then /usr/ucb/echo -n "." ; \ + else echo -n "." ; fi \ + done + @echo "" + for i in `find ../manpages/*.5 -type f -print | grep -v CVS |\ + sed 's?../manpages/??g' | sed 's/\..$$//g'`; do\ + cp ../manpages/$$i.5 $(MAN5)/$$i.$(MAN5EXT);\ + chmod 644 $(MAN5)/$$i.$(MAN5EXT);\ + if [ -f /usr/ucb/echo ] ; then /usr/ucb/echo -n "." ; \ + else echo -n "." ; fi \ + done + @echo "" + @echo "Done"; + +pfs: + @echo "Taking care of things in /pfs" + find ../pfs -type f -print | xargs -t chmod 644 + find ../pfs -type d -print | xargs -t chmod 755 + find ../pfs/bin -type f -print | xargs -t chmod 755 + chown root ../pfs/bin/pstart + chmod gu+s ../pfs/bin/pstart + +links: + @echo "Creating /pfs link" + -rm -f /pfs + ln -s `pwd | sed 's?/config??'`/pfs /pfs + @echo "Creating other links" + -cd .. ; rm -f bin/-telnet-client bin/arexchange bin/arretrieve + cd ../bin; ln -s telnet-client ./-telnet-client; \ + ln -s arserver arexchange; \ + ln -s arserver arretrieve; \ + ln -s update_anonftp update_webindex + + + + + diff --git a/release/A/etc/ardomains.cf b/release/A/etc/ardomains.cf new file mode 100644 index 0000000..c33f9f3 --- /dev/null +++ b/release/A/etc/ardomains.cf @@ -0,0 +1,18 @@ +# +westeurope1 de:ie:pt:es:uk:at:fr:it:be:nl +westeurope2 ch:cy:gr:li:lu:tr +westeurope westeurope1:westeurope2 Western Europe +easteurope bg:cs:cz:hr:hu:pl:ro:sk:si Eastern Europe +scandinavia no:dk:se:fi:ee:is Scandinavia +europe westeurope:easteurope:scandinavia Europe +usa edu:com:mil:gov:us:org:net United States +northamerica usa:ca:mx North America +southamerica ar:bo:br:cl:co:cr:cu:ec:pe:ve South American +centralamerica sv:gt:hn Central America +asia kr:hk:sg:jp:cn:my:tw:in Asia +mideast eg:.il:kw:sa Middle East +africa za Africa +anzac au:nz OZ & New Zealand +world1 europe:scandinavia:northamerica +world2 centralamerica:southamerica:mideast:africa:anzac:as +world world1:world2 The World diff --git a/release/A/etc/motd b/release/A/etc/motd new file mode 100644 index 0000000..8f01bbd --- /dev/null +++ b/release/A/etc/motd @@ -0,0 +1,3 @@ + + Welcome to Archie! + Vers 3.3 diff --git a/release/A/etc/serverlist b/release/A/etc/serverlist new file mode 100644 index 0000000..7666698 --- /dev/null +++ b/release/A/etc/serverlist @@ -0,0 +1,45 @@ +--------------------< List of active archie servers >-------------------- + + Last Update: Jun 21 1996 + + archie.au 139.130.23.2 Australia + archie.univie.ac.at 131.130.1.23 Austria + archie.belnet.be 193.190.248.18 Belgium + archie.bunyip.com 192.77.55.2 Canada + archie.cs.mcgill.ca 132.206.51.250 Canada + archie.funet.fi 128.214.6.102 Finland + archie.univ-rennes1.fr 129.20.254.2 France + archie.th-darmstadt.de 130.83.22.1 Germany + archie.ac.il 132.65.208.15 Israel + archie.unipi.it 131.114.21.10 Italy + archie.wide.ad.jp 133.4.3.6 Japan + archie.hana.nm.kr 128.134.1.1 Korea + archie.kornet.nm.kr 168.126.63.10 Korea + archie.sogang.ac.kr 163.239.1.11 Korea + archie.nz 140.200.128.13 New Zealand + archie.uninett.no 128.39.2.20 Norway + archie.icm.edu.pl 148.81.209.5 Poland + archie.rediris.es 130.206.1.5 Spain + archie.luth.se 130.240.12.23 Sweden + archie.switch.ch 130.59.1.40 Switzerland + archie.switch.ch 130.59.10.40 Switzerland + archie.ncu.edu.tw 192.83.166.12 Taiwan + archie.doc.ic.ac.uk 146.169.16.11 UK + archie.doc.ic.ac.uk 146.169.17.5 UK + archie.doc.ic.ac.uk 146.169.2.10 UK + archie.doc.ic.ac.uk 146.169.32.5 UK + archie.doc.ic.ac.uk 146.169.33.5 UK + archie.doc.ic.ac.uk 146.169.43.1 UK + archie.doc.ic.ac.uk 155.198.1.40 UK + archie.doc.ic.ac.uk 155.198.191.4 UK + archie.hensa.ac.uk 129.12.200.130 UK + archie.sura.net 192.239.16.130 USA (MD) + archie.unl.edu 129.93.1.14 USA (NE) + archie.internic.net 192.20.239.132 USA (NJ) + archie.internic.net 198.49.45.10 USA (NJ) + archie.internic.net 204.179.186.65 USA (NJ) + archie.rutgers.edu 128.6.21.13 USA (NJ) + archie.ans.net 147.225.1.10 USA (NY) + + +-------------------------------------------------------------------------- diff --git a/release/base/Archierc b/release/base/Archierc new file mode 100644 index 0000000..4da7236 --- /dev/null +++ b/release/base/Archierc @@ -0,0 +1,22 @@ +# sample .archierc file. +# +# This file contains customization variables for the +# bunyip telnet archie client. +# + +set prompt "archie> " +set server localhost +#set pager_path bin/less +set pager_opts "" +set pager_help_opts "" +set search sub +set mail_service archiemail +set help_dir help/english +set servers_file etc/serverlist +set whatis_file etc/whatis +set man_ascii_file etc/manpage.ascii +set man_roff_file etc/manpage.roff +#set tmpdir db/tmp +set maxhits 25 +set search exact +set sortby time diff --git a/release/base/Manifest b/release/base/Manifest new file mode 100644 index 0000000..7800bd3 --- /dev/null +++ b/release/base/Manifest @@ -0,0 +1,303 @@ +drwxr-s--- . +-rw-r----- ./Archierc +-rw-r----- ./Manifest +-rw-r----- ./Release-Notes-3.5 +-rw-r----- ./Version +drwxr-s--- ./bin +-rwxr-x--- ./bin/arcontrol +-rwxr-x--- ./bin/ardomains +-rwxr-x--- ./bin/arserver +-rwxr-x--- ./bin/convert_hostdb +-rwxr-x--- ./bin/db_build +-rwxr-x--- ./bin/db_check +-rwxr-x--- ./bin/db_dump +-rwxr-x--- ./bin/db_reorder +-rwxr-x--- ./bin/db_siteidx +-rwxr-x--- ./bin/db_stats +-rwxr-x--- ./bin/delete_anonftp +-rwxr-x--- ./bin/delete_webindex +-rwxr-x--- ./bin/email-client +-rwxr-x--- ./bin/extern_urls +-rwxr-x--- ./bin/fix_start_db +-rwxr-x--- ./bin/host_manage +-rwxr-x--- ./bin/insert_anonftp +-rwxr-x--- ./bin/insert_webindex +-rwxr-x--- ./bin/less +-rwxr-x--- ./bin/net_anonftp +-rwxr-x--- ./bin/net_webindex +-rwxr-x--- ./bin/parse_anonftp +-rwxr-x--- ./bin/parse_anonftp_novell +-rwxr-x--- ./bin/parse_anonftp_unix_bsd +-rwxr-x--- ./bin/parse_anonftp_vms_std +-rwxr-x--- ./bin/parse_webindex +-rwxr-x--- ./bin/partial_webindex +-rwxr-x--- ./bin/retrieve_anonftp +-rwxr-x--- ./bin/retrieve_webindex +-rwxr-x--- ./bin/split_file +-rwxr-x--- ./bin/telnet-client +-rwxr-x--- ./bin/update_anonftp +-rwxr-x--- ./bin/weaseld +drwxr-s--- ./cgi +drwxr-s--- ./cgi/bin +-rw-r----- ./cgi/bin/archie.cgi +-rw-r----- ./cgi/bin/cgi-client +drwxr-s--- ./cgi/html +-rw-r----- ./cgi/html/archie-adv.html +-rw-r----- ./cgi/html/archie-help.html +-rw-r----- ./cgi/html/archie.html +-rw-r----- ./cgi/html/query.gif +-rw-r----- ./cgi/html/results.gif +drwxr-s--- ./config +-rw-r----- ./config/Makefile +drwxr-s--- ./contrib +-rw-r----- ./contrib/README +-rw-r----- ./contrib/archie.el +-rw-r----- ./contrib/archie.zip +-rw-r----- ./contrib/c-archie-1.3.2-vms.com +-rw-r----- ./contrib/c-archie-1.4.1.tar.gz +-rw-r----- ./contrib/less-177-for-archie.tar.gz +-rw-r----- ./contrib/mac-archie-client-09.hqx +-rw-r----- ./contrib/perl-archie-3.8.tar.gz +-rw-r----- ./contrib/xarchie-2.0.8.tar.gz +drwxr-s--- ./db +drwxr-s--- ./db/anonftp_db +drwxr-s--- ./db/anonftp_db/start_db +drwxr-s--- ./db/host_db +-rw-r----- ./db/host_db/domain-db.dir +-rw-r----- ./db/host_db/domain-db.pag +-rw-r----- ./db/host_db/host-db.dir +-rw-r----- ./db/host_db/host-db.pag +-rw-r----- ./db/host_db/hostaux-db.dir +-rw-r----- ./db/host_db/hostaux-db.pag +-rw-r----- ./db/host_db/hostbyaddr.dir +-rw-r----- ./db/host_db/hostbyaddr.pag +drwxr-s--- ./db/locks +drwxr-s--- ./db/tmp +drwxr-s--- ./db/webindex_db +drwxr-s--- ./db/webindex_db/start_db +drwxr-s--- ./doc +-rw-r----- ./doc/manual-3.5.ps.gz +drwxr-s--- ./etc +-rw-r----- ./etc/ardomains.cf +-rw-r----- ./etc/arretdefs.cf +-rw-r----- ./etc/arretrieve.cf +-rw-r----- ./etc/arretrieve.cf~ +-rw-r----- ./etc/arupdate.cf +-rw-r----- ./etc/catalogs.cf +-rw-r----- ./etc/domain.order +-rw-r----- ./etc/email.help +-rw-r----- ./etc/find_files.cf +-rw-r----- ./etc/hm_db.cf +-rw-r----- ./etc/inform_web +-rw-r----- ./etc/manpage.ascii +-rw-r----- ./etc/manpage.roff +-rw-r----- ./etc/motd +-rw-r----- ./etc/options.cf +-rw-r----- ./etc/resolv.conf +-rw-r----- ./etc/serverlist +-rw-r----- ./etc/sites.glist +-rw-r----- ./etc/sites.update +-rw-r----- ./etc/stoplist +-rw-r----- ./etc/termcap +-rw-r----- ./etc/whatis +drwxr-s--- ./help +drwxr-s--- ./help/english +-rw-r----- ./help/english/= +drwxr-s--- ./help/english/about +-rw-r----- ./help/english/about/= +drwxr-s--- ./help/english/bugs +-rw-r----- ./help/english/bugs/= +drwxr-s--- ./help/english/bye +-rw-r----- ./help/english/bye/= +drwxr-s--- ./help/english/compress +-rw-r----- ./help/english/compress/= +drwxr-s--- ./help/english/domains +-rw-r----- ./help/english/domains/= +drwxr-s--- ./help/english/done +-rw-r----- ./help/english/done/= +drwxr-s--- ./help/english/email +-rw-r----- ./help/english/email/= +drwxr-s--- ./help/english/exit +-rw-r----- ./help/english/exit/= +drwxr-s--- ./help/english/find +-rw-r----- ./help/english/find/= +drwxr-s--- ./help/english/general +-rw-r----- ./help/english/general/= +drwxr-s--- ./help/english/help +-rw-r----- ./help/english/help/= +drwxr-s--- ./help/english/list +-rw-r----- ./help/english/list/= +drwxr-s--- ./help/english/mail +-rw-r----- ./help/english/mail/= +drwxr-s--- ./help/english/manpage +-rw-r----- ./help/english/manpage/= +drwxr-s--- ./help/english/motd +-rw-r----- ./help/english/motd/= +drwxr-s--- ./help/english/nopager +-rw-r----- ./help/english/nopager/= +drwxr-s--- ./help/english/pager +-rw-r----- ./help/english/pager/= +drwxr-s--- ./help/english/path +-rw-r----- ./help/english/path/= +drwxr-s--- ./help/english/prog +-rw-r----- ./help/english/prog/= +drwxr-s--- ./help/english/quit +-rw-r----- ./help/english/quit/= +drwxr-s--- ./help/english/regex +-rw-r----- ./help/english/regex/= +drwxr-s--- ./help/english/servers +-rw-r----- ./help/english/servers/= +drwxr-s--- ./help/english/set +-rw-r----- ./help/english/set/= +drwxr-s--- ./help/english/set/autologout +-rw-r----- ./help/english/set/autologout/= +drwxr-s--- ./help/english/set/compress +-rw-r----- ./help/english/set/compress/= +drwxr-s--- ./help/english/set/encode +-rw-r----- ./help/english/set/encode/= +drwxr-s--- ./help/english/set/language +-rw-r----- ./help/english/set/language/= +drwxr-s--- ./help/english/set/mailto +-rw-r----- ./help/english/set/mailto/= +drwxr-s--- ./help/english/set/match_domain +-rw-r----- ./help/english/set/match_domain/= +drwxr-s--- ./help/english/set/match_path +-rw-r----- ./help/english/set/match_path/= +drwxr-s--- ./help/english/set/max_split_size +-rw-r----- ./help/english/set/max_split_size/= +drwxr-s--- ./help/english/set/maxhits +-rw-r----- ./help/english/set/maxhits/= +drwxr-s--- ./help/english/set/maxhitspm +-rw-r----- ./help/english/set/maxhitspm/= +drwxr-s--- ./help/english/set/maxmatch +-rw-r----- ./help/english/set/maxmatch/= +drwxr-s--- ./help/english/set/output_format +-rw-r----- ./help/english/set/output_format/= +drwxr-s--- ./help/english/set/pager +-rw-r----- ./help/english/set/pager/= +drwxr-s--- ./help/english/set/search +-rw-r----- ./help/english/set/search/= +drwxr-s--- ./help/english/set/server +-rw-r----- ./help/english/set/server/= +drwxr-s--- ./help/english/set/sortby +-rw-r----- ./help/english/set/sortby/= +drwxr-s--- ./help/english/set/status +-rw-r----- ./help/english/set/status/= +drwxr-s--- ./help/english/set/term +-rw-r----- ./help/english/set/term/= +drwxr-s--- ./help/english/show +-rw-r----- ./help/english/show/= +drwxr-s--- ./help/english/site +-rw-r----- ./help/english/site/= +drwxr-s--- ./help/english/stty +-rw-r----- ./help/english/stty/= +drwxr-s--- ./help/english/term +-rw-r----- ./help/english/term/= +drwxr-s--- ./help/english/unset +-rw-r----- ./help/english/unset/= +drwxr-s--- ./help/english/version +-rw-r----- ./help/english/version/= +drwxr-s--- ./help/english/whatis +-rw-r----- ./help/english/whatis/= +drwxr-s--- ./help/francais +-rw-r----- ./help/francais/.doit +-rw-r----- ./help/francais/.nl +-rw-r----- ./help/francais/= +drwxr-s--- ./include +drwxr-s--- ./logs +-rw-r----- ./logs/archie.log +-rw-r----- ./logs/email.log +drwxr-s--- ./manpages +-rw-r----- ./manpages/anonftp_parser_output.5 +-rw-r----- ./manpages/archie.n +-rw-r----- ./manpages/archie_clients.n +-rw-r----- ./manpages/archie_headers.5 +-rw-r----- ./manpages/archie_protocol.5 +-rw-r----- ./manpages/arcontrol.n +-rw-r----- ./manpages/ardomains.n +-rw-r----- ./manpages/arexchange.n +-rw-r----- ./manpages/arretrieve.n +-rw-r----- ./manpages/arserver.n +-rw-r----- ./manpages/convert_hostdb.n +-rw-r----- ./manpages/db_build.n +-rw-r----- ./manpages/db_check.n +-rw-r----- ./manpages/db_dump.n +-rw-r----- ./manpages/db_reorder.n +-rw-r----- ./manpages/db_siteidx.n +-rw-r----- ./manpages/db_stats.n +-rw-r----- ./manpages/delete_anonftp.n +-rw-r----- ./manpages/delete_webindex.n +-rw-r----- ./manpages/handle_header.n +-rw-r----- ./manpages/host_manage.n +-rw-r----- ./manpages/insert_anonftp.n +-rw-r----- ./manpages/insert_webindex.n +-rw-r----- ./manpages/mail_stats.n +-rw-r----- ./manpages/net_anonftp.n +-rw-r----- ./manpages/parse_anonftp.n +-rw-r----- ./manpages/parse_anonftp_unix_bsd.n +-rw-r----- ./manpages/parse_anonftp_vms_std.n +-rw-r----- ./manpages/retrieve_anonftp.n +-rw-r----- ./manpages/update_anonftp.n +-rw-r----- ./manpages/weaseld.n +drwxr-s--- ./pager +drwxr-s--- ./pager/bin +-rw-r----- ./pager/bin/less.hlp +-rw-r----- ./pager/bin/less.sh +drwxr-s--- ./pager/etc +-rw-r----- ./pager/etc/termcap +drwxr-s--- ./pfs +drwxr-s--- ./pfs/bin +-rwxr-x--- ./pfs/bin/als +-rwxr-x--- ./pfs/bin/archie +-rwxr-x--- ./pfs/bin/dirsrv +-rwxr-x--- ./pfs/bin/fakebin +-rwxr-x--- ./pfs/bin/gen_vfsetup +-rwxr-x--- ./pfs/bin/list_acl +-rwxr-x--- ./pfs/bin/menu +-rwxr-x--- ./pfs/bin/newvs +-rwxr-x--- ./pfs/bin/p__vcd +-rwxr-x--- ./pfs/bin/p__vfsetup +-rwxr-x--- ./pfs/bin/padmin +-rwxr-x--- ./pfs/bin/pfs +-rwxr-x--- ./pfs/bin/psession +-rwxr-x--- ./pfs/bin/pstart +-rwxr-x--- ./pfs/bin/pstatus +-rwxr-x--- ./pfs/bin/set_acl +-rwxr-x--- ./pfs/bin/set_atr +-rwxr-x--- ./pfs/bin/vget +-rwxr-x--- ./pfs/bin/vln +-rwxr-x--- ./pfs/bin/vls +-rwxr-x--- ./pfs/bin/vmkdir +-rwxr-x--- ./pfs/bin/vrm +drwxr-s--- ./pfs/history +drwxr-s--- ./pfs/info-tree +-rw-r----- ./pfs/pfs.log +drwxr-s--- ./pfs/pfsdat +drwxr-s--- ./pfs/shadow +drwxr-s--- ./scripts +-rwxr-x--- ./scripts/archie.shell +-rwxr-x--- ./scripts/archiemail +-rwxr-x--- ./scripts/aslip +-rwxr-x--- ./scripts/batch-email +-rwxr-x--- ./scripts/daily.admin +-rwxr-x--- ./scripts/eval-perf.pl +-rwxr-x--- ./scripts/filter_anonftp_novell +-rwxr-x--- ./scripts/filter_anonftp_unix_bsd +-rwxr-x--- ./scripts/filter_anonftp_unix_bsd.nowork +-rwxr-x--- ./scripts/filter_anonftp_unix_bsd.perl +-rwxr-x--- ./scripts/filter_anonftp_unix_bsd.sed +-rwxr-x--- ./scripts/filter_anonftp_vms_std +-rwxr-x--- ./scripts/mail_handler +-rwxr-x--- ./scripts/mail_inform +-rwxr-x--- ./scripts/mail_receiver +-rwxr-x--- ./scripts/mail_stats +-rwxr-x--- ./scripts/process-email +-rwxr-x--- ./scripts/prospero-stats.pl +-rwxr-x--- ./scripts/rotate +-rwxr-x--- ./scripts/show_arcompress +-rwxr-x--- ./scripts/start-weaseld +-rwxr-x--- ./scripts/trimplog.pl +-rwxr-x--- ./scripts/unrotate +-rwxr-x--- ./scripts/untar +drwxr-s--- ./tmp +-rw-r----- ./tmp/db.tar diff --git a/release/base/Release-Notes-3.5 b/release/base/Release-Notes-3.5 new file mode 100644 index 0000000..976f53d --- /dev/null +++ b/release/base/Release-Notes-3.5 @@ -0,0 +1,149 @@ + + + + + Archie 3.5 Beta + --------------- + + + +Patch level 3: +============== + + - Support for ls-lR.gz files + - New WWW front-end to the Archie database. + - Improved search speed. + - ISO-Latin-1 support for searches. + - bug fixes as well.. + + +Some notes on how to install or take advantage of the new features. + + +ls-lR.gz +-------- + You must have gzip and gunzip on your system. + You need to edit the files + + ~archie/etc/arretdefs.cf + + modify the line anonftp:unix_bsd:image:.Z:anonymous:::-R:*?:ls-lR + to anonftp:unix_bsd:image:.gz,.Z:anonymous:::-R:*?:ls-lR + + you need to modify the file + + ~archie/etc/options.cf (read the instructions in that file) + + +WWW front-end +------------- + + Thw files related to the WWW front-end are in ~archie/cgi + + You will find in ~archie/cgi/bin + a perl script (archie) and a binary program (cgi-client). + + The top part of the perl script will tell you what needs to + be setup. + + In ~archie/cgi/html are the different gif files and search forms. + They are not in their final stage ... so do not hesitate to + give us your comments. + + The files archie and archie-adv in that directory should + be modified to indicate where the perl script is located. + + We recommend that a uniform url be used for archie so that + Archie users will easily find the search page. + + http://archie.foo.bar/archie and + http://archie.foo.bar/archie-adv + + + +New in this release: +==================== + +Here are the major added components to the system with some +of the key points involved in each one of them. + + +- Support for a new database module (webindex) + - retrieval of HTML pages through http protocol + - Keyword extraction + - Controlled crawling of the WWW + - Site by site basis + - Content extraction + - configurable stoplist (keyword exclusion) + +- New database structure + - More reliable structure. + + +- New search engine + - Based on a paged tree structured index + - Faster searches + - Less memory required + - More disk space for construction of the index + +- New search interface + - cgi-bin compliant interface + + +- A better domain filter for anonftp + - results can be pre-configured to return in a certain order + (e.g. ftp sites close to the server first) + - configurable on a server basis + + + +Fixed bugs +========== + + +- the ``-t'' switch on arcontrol creates the new files and work files + in the specified temp directory and not in ~archie/db/tmp + + +- Lock files are now created in ~archie/db/locks + +- host_manage can handle multiple preferred hostsnames + + + + +Currently working on: +===================== + +- Rewrite of the cgi-bin front-end to be more flexible. + +- Archie Help page + +- Regular Expressions with the new search engine. + +- New set of manpages and documentation. + +- Additional type of searches + + + + + +Currently testing: +================== + +- dirsrv with the new database technology. + + + + +Known Problems: +=============== + +- arexchange of webindex will not fully functional + it will not transfer .excerpt files. We still need to experiment + with indexing of the Web and see what is involved with + exchanges of data. + + + diff --git a/release/base/Version b/release/base/Version new file mode 100644 index 0000000..b9bfc26 --- /dev/null +++ b/release/base/Version @@ -0,0 +1 @@ +Version 3.5, Patch Level 4 diff --git a/release/base/cgi/bin/archie.cgi b/release/base/cgi/bin/archie.cgi new file mode 100644 index 0000000..22ddd8d --- /dev/null +++ b/release/base/cgi/bin/archie.cgi @@ -0,0 +1,435 @@ +#!/usr/local/bin/perl +# +# Archie Perl Client (front-end) +# This script needs the binary cgi-client (back-end) to pass the query parameters +# to. It then reads the result returned from cgi-client and reformats it +# for the http server. +############################################################################## + +############################################################################## +# These few lines MUST be configured according to your system. +# The first variable holds the full path to your cgi-client binary which could +# be of any name you wish. The $archie_user variable holds the user name under which +# your archie service is running. +############################################################################## + +$archiebin = "/services/archie/archie-3.5/cgi/bin/cgi-client"; + # You can rename the binary to archie.bin or any other suitable name you + # choose. + +$archieperl = "http://services.bunyip.com:8800/cgi-bin/archie.cgi"; + # This same perl script you are looking at. Where will its URL be? + +$archie_user = "archie"; + # If your archie server is running under another user name then please + # change this accordingly. + +$adv_page = "/archie-adv.html"; +$smpl_page = "/archie.html"; + # The above URLs will take you to our web pages! We don't mind but we doubt + # that you setup an Archie server for nothing! Please change the web site + # in those lines to your web site name. + +$gif_url = "http://services.bunyip.com:8800/results.gif"; + # Where the results.gif file is. +############################################################################## +# The following lines hold the different strings sent back to the httpd +# server. It is optional to modify them to comply with your HTML-look +# preference. +############################################################################## + +$excerpt_offset = 9; +$site_offset = 6; +$info_offset = 5; + +$archie_title = "Archie Results\n"; +$archie_header_plain = "

Archie Results

\n";
+$archie_header_logo = "\"Archie\n";
+$archie_continue_button = "
New Advanced Query | New Simple Query
Modify Search
:
\n"; +$archie_pages = "
New Advanced Query | New Simple Query
\n"; +$str1 = "

Found %d Hit(s)

\n"; +$str2 = "(%d) %s

\n"; +$str3 = "\n"; +$str4 = "\n"; +$str5 = "(%d)%s

\n"; +$str6 = "(%d)%s

\n"; +$str7 = ' 'x$info_offset."%d "; +$str8 = ' 'x$site_offset."%s"; +$str9 = "Keyword: %s"; +$str10 = "Date: %s"; +$str11 = ' 'x$info_offset."Size: %d"; +$str12 = ' 'x$excerpt_offset."

%s

";
+$str13 = "
\n"; + + +format OUTINFO = +~
@<<<<<<<<<<<<<@<<<<<<<<<<< @<<<<<<<<<<<<<<<<<<<<<<<<<<< @* +$perms, $size, $date, $strout +. + + +format OUTPATH = +@* +$path +. + +############################################################################## +# END OF CHANGES +############################################################################## + +%proto =( +"Anonymous FTP", "ftp", +"Web Index", "http" +); + +%main_tran =( + FORM_PLAIN_OUTPUT_FLAG, "oflag", + FORM_CASE, "case", + FORM_CASE_SENS, "Sensitive", + FORM_CASE_INS, "Insensitive", + FORM_QUERY, "query", + FORM_OLD_QUERY, "oldquery", + FORM_STRINGS_ONLY, "strings", + FORM_MORE_SEARCH, "more", + FORM_SERV_URL, "url", + FORM_GIF_URL, "gifurl", + FORM_STR_HANDLE, "strhan", + FORM_STRINGS_NO, "NO", + FORM_STRINGS_YES, "YES", + FORM_DB, "database", + FORM_ANONFTP_DB, "Anonymous FTP", + FORM_WEB_DB, "Web Index", + I_ANONFTP_DB, 0, + I_WEBINDEX_DB, 1, + FORM_TYPE, "type", + FORM_EXACT, "Exact", + FORM_SUB, "Sub String", + FORM_REGEX, "Regular Expression", + FORM_MAX_HITS, "maxhits", + FORM_MAX_HPM, "maxhpm", + FORM_MAX_MATCH, "maxmatch", + FORM_PATH_REL, "pathrel", + FORM_PATH, "path", + FORM_EXCLUDE_PATH, "expath", + FORM_AND, "AND", + FORM_OR, "OR", + FORM_START_STRING, "start_string", + FORM_START_STOP, "start_stop", + FORM_START_SITE_STOP, "start_site_stop", + FORM_START_SITE_FILE, "start_site_file", + FORM_START_SITE_PRNT, "start_site_prnt", + PATH_AND, 0, + PATH_OR, 1, + FORM_DOMAINS, "domains", + FORM_DOMAIN_1, "domain1", + FORM_DOMAIN_2, "domain2", + FORM_DOMAIN_3, "domain3", + FORM_DOMAIN_4, "domain4", + FORM_DOMAIN_5, "domain5", + PLAIN_HITS, "HITS", + FORM_ERROR, "ERROR", + FORM_FORMAT, "format", + FORM_FORMAT_KEYS, "Keywords Only", + FORM_FORMAT_EXC, "Excerpts Only", + FORM_FORMAT_LINKS, "Links Only", + FORM_FORMAT_STRINGS_ONLY, "Strings Only", + I_FORMAT_KEYS, 2, + I_FORMAT_EXC, 0, + I_FORMAT_LINKS, 1 +); + +%result_tran=( + PLAIN_START, "START_RESULT", + PLAIN_END, "END_RESULT", + PLAIN_URL, "URL", + PLAIN_STRING, "STRING", + PLAIN_TITLE, "TITLE", + PLAIN_NO_TITLE, "NO_TITLE", + PLAIN_SITE, "SITE", + PLAIN_PATH, "PATH", + PLAIN_TYPE, "TYPE", + PLAIN_WEIGHT, "WEIGHT", + PLAIN_TEXT, "TEXT", + PLAIN_PERMS, "PERMS", + PLAIN_SIZE, "SIZE", + PLAIN_DATE, "DATE", + PLAIN_FILE, "FILE", + PLAIN_KEY, "KEY", + PLAIN_START_STRINGS, "START_STRINGS_ONLY", + PLAIN_END_STRINGS, "END_STRINGS_ONLY" +); + +$ENV{"ARCH_USER"} = $archie_user; +$| = 1; +open(stdin,"-"); +open(IN,"$archiebin < '$stdin' |"); + +$i = 1; +$s = 1; +$top=1; +$k = 1; +$no_sites = 1; +$entry{"FORM_GIF_URL"} = $gif_url; +$entry{"FORM_SERV_URL"} = $archieperl; +while (){ + chop; + if( $_ =~ /^$main_tran{"FORM_PLAIN_OUTPUT_FLAG"}/ ){ + ($junk,$flag) = split(/=/,$_,2); + if( $flag == 1 ){ + ## This is for plain results returned to the web + ## server in record-like format (no processing is + ## done on the results). Used for certain types + ## of URAs. Unlikely to be used by our clients! + print STDOUT "Content-type: text/plain\n\n"; + print STDOUT $_."\n"; + foreach $k (keys %entry){ + print STDOUT "$main_tran{$k}=$entry{$k}\n"; + } + while (){ + print STDOUT $_; + } + exit 1; + } + } + if ( $_ =~ /^$main_tran{"FORM_ERROR"}/ ) { + $entry{"PLAIN_HITS"} = 0; + ($junk,$err) = split(/=/,$_,2); + &print_error($err,$entry{"FORM_GIF_URL"}); + last; + }elsif( ($i == 0) && !( $_ =~ /^$main_tran{"PLAIN_HITS"}/ )){ + &print_error("Returned results are incorrect",$entry{"FORM_GIF_URL"}); + last; + }else{ + if( !($_ =~ /=/) ) { + last; + } + ($junk,$value) = split(/=/,$_,2); + if( ($i == 1) && ( $junk eq $main_tran{"PLAIN_HITS"} ) && ($value == 0)){ + &print_error("No hits",$entry{"FORM_GIF_URL"}); + exit 1; + } + if($value eq ""){ + next; + } + $main = 0; + foreach $key (keys (%main_tran)) { + if( $main_tran{$key} eq $junk ){ + $entry{$key} = $value; + $main = 1; + last; + } + } + $strings_only=0; + if($result_tran{"PLAIN_START_STRINGS"} eq $junk){ + $strings_only = 1; + &print_header($entry{"FORM_GIF_URL"},$entry{"FORM_SERV_URL"}); + printf STDOUT $str1,$entry{"PLAIN_HITS"}; + $_ = ; + if( $_ eq "" ){ + last; + } + chop; + if( $_ !~ /=/ ) { + last; + } + ($junk,$value) = split(/=/,$_,2); + if($value eq ""){ + next; + } + }elsif( ($main == 0) && ($junk ne $result_tran{"PLAIN_START"}) ){ + $entry{$junk} = $value; + $main = 1; + } + + if( $main == 0 ){ + if( defined($entry{"FORM_DB"}) && ($entry{"FORM_DB"} eq $main_tran{"FORM_ANONFTP_DB"} )){ + $db = $main_tran{"I_ANONFTP_DB"}; + }else{ + $db = $main_tran{"I_WEBINDEX_DB"}; + } + if (($strings_only == 0) && (!defined( $entry{"FORM_SERV_URL"} )) ){ + &print_error("The submitted information does not include URL information. Read the HELP pages to setup your html page correctly.",$entry{"FORM_GIF_URL"}); + exit 1; + } +# do while instead + + while (1){ + if($result_tran{"PLAIN_END_STRINGS"} eq $junk){ + last; + }elsif($strings_only == 1){ + printf STDOUT $str2, $s ,$value; + $s++; + }elsif( $result_tran{"PLAIN_START"} eq $junk ){ + $rec_num = $value+1; + if($top != 1){ + $old_site = $curr_site; + $old_str = $curr_str; + } + }elsif( $result_tran{"PLAIN_END"} eq $junk ){ + if ($top == 1){ + &print_header($entry{"FORM_GIF_URL"},$entry{"FORM_SERV_URL"}); + printf STDOUT $archie_continue_button, $entry{"FORM_OLD_QUERY"}; + foreach $k ( keys %entry ){ + if( $k eq "PLAIN_HITS" ){ + printf STDOUT $str1, $entry{$k}; + printf STDOUT $str3; + }else{ + printf STDOUT $str4, $main_tran{$k}, $entry{$k}; + } + } + print STDOUT "
\n";
+												$top=0;
+										}
+										if($db == $main_tran{"I_ANONFTP_DB"}){
+												if( $old_site ne $curr_site ){
+														## Do some processing for a new site
+														$no_sites++;
+														printf STDOUT "

"; + + if($result{"PLAIN_STRING"} ne $result{"PLAIN_SITE"}){ + printf STDOUT $str5, $rec_num, $result{"PLAIN_SITE"}; + }else{ + printf STDOUT $str6, $rec_num, $result{"PLAIN_URL"}, $result{"PLAIN_SITE"}; + } + } + $str = $result{"PLAIN_STRING"}; + $size = $result{"PLAIN_SIZE"}; + $date = $result{"PLAIN_DATE"}; + $perms = $result{"PLAIN_PERMS"}; + if($result{"PLAIN_STRING"} ne $result{"PLAIN_SITE"}){ + $path = $result{"PLAIN_PATH"}; + &print_spaces($info_offset); + printf STDOUT $str7, $proto{"Anonymous FTP"}, $result{"PLAIN_SITE"}, $result{"PLAIN_PATH"}, $rec_num; + + $~ = "OUTPATH"; + write; + + $strout = "".$result{"PLAIN_STRING"}."

"; + $~ = "OUTINFO"; + write; + } + }elsif($db == $main_tran{"I_WEBINDEX_DB"}){ + if( defined( $result{"PLAIN_TITLE"})){ + $title =$result{"PLAIN_TITLE"}; + }else{ + $title = $result{"PLAIN_NO_TITLE"}; + } + + (defined ($result{"PLAIN_SITE"})) && ($site = $result{"PLAIN_SITE"}); + (defined ($result{"PLAIN_TEXT"})) && ($text = $result{"PLAIN_TEXT"}); + (defined ($result{"PLAIN_STRING"})) && ($str = $result{"PLAIN_STRING"}); + (defined ($result{"PLAIN_SIZE"})) && ($size = $result{"PLAIN_SIZE"}); + (defined ($result{"PLAIN_WEIGHT"})) && ($weight = $result{"PLAIN_WEIGHT"}); + (defined ($result{"PLAIN_DATE"})) && ($date = $result{"PLAIN_DATE"}); + (defined ($result{"PLAIN_URL"})) && ($strurl = $result{"PLAIN_URL"}); + if ($strurl eq $title) { + $title =~ s/:80\//\//; + $strurl = $title; + $title = "(NO-TITLE) $title"; + }elsif($strurl !~ /:80\d+/){ + $strurl =~ s/:80//; + } + if($site !~ /:80\d+/){ + $site =~ s/:80//; + } + if( $old_site ne $curr_site ){ + ## Do some processing for a new site + $no_sites++; + print STDOUT "

"; + + if($result{"PLAIN_STRING"} ne $result{"PLAIN_SITE"}){ + printf STDOUT $str5, $rec_num, $site; + }else{ + printf STDOUT $str6, $rec_num, $strurl, $site; + } + } + + if($result{"PLAIN_STRING"} ne $result{"PLAIN_SITE"}){ + &print_spaces($site_offset); + printf STDOUT $str8, $strurl, $title; + defined( $weight ) && (print STDOUT "\n\n".' 'x$site_offset) && (printf STDOUT $str9, $str); + defined( $date ) && (print STDOUT "\n\n".' 'x$site_offset) && (printf STDOUT $str10, $date) && (&print_spaces($info_offset)) && (printf STDOUT $str11, $size); + printf STDOUT $str12, $text; + } + } + + undef(%result); + undef $site; undef $text; undef $str; undef $size; undef $weight; undef $date; undef $strurl; + }else{ + foreach $key (keys (%result_tran)) { + if( $result_tran{$key} eq $junk ){ + $result{$key} = $value; + if($key eq "PLAIN_SITE"){ + $curr_site = $value; + } + if($key eq "PLAIN_STRING"){ + $curr_str = $value; + } + $main = 1; + last; + } + } + } + $_ = ; + if( $_ eq "" ){ + last; + } + chop; + if( $_ !~ /=/ ) { + last; + } + ($junk,$value) = split(/=/,$_,2); + if($value eq ""){ + next; + } + } + last; + } + } + $i++; +} +# printf STDOUT $archie_continue_button, $entry{"FORM_OLD_QUERY"}; +if( !defined( $entry{"PLAIN_HITS"} ) ){ + &print_error("No hits",$entry{"FORM_GIF_URL"}); +}elsif($err eq ""){ + print STDOUT $str13; +} +exit 1; + + + +sub print_error { + local($error_msg,$gifurl) = @_; + print STDOUT "Content-type: text/html\n\n"; + if( $gifurl eq "" ){ + print STDOUT "

Archie Results


\n\n"; + }else{ + printf STDOUT $archie_header_logo, $gifurl; + print STDOUT "

Archie Results


\n\n"; + } +# print STDOUT "

Archie Error


\n\n"; + + print STDOUT "".$error_msg."

\n"; + printf STDOUT $archie_pages; + print STDOUT "\n"; + return(1); +} + +sub print_header { + local($gifurl, $url) = @_; + print STDOUT "Content-type: text/html\n\n"; + printf STDOUT $archie_title; + if( $gifurl eq "" ){ + printf STDOUT $archie_header_plain; + }else{ + printf STDOUT $archie_header_logo, $gifurl; + } + print STDOUT "
\n"; + return(1); +} + +sub print_spaces { + local($n) = $_; + print STDOUT ' 'x$n; + return(1); +} diff --git a/release/base/cgi/html/archie-adv.html b/release/base/cgi/html/archie-adv.html new file mode 100644 index 0000000..14f1a2f --- /dev/null +++ b/release/base/cgi/html/archie-adv.html @@ -0,0 +1,47 @@ + + +Search in Archie + + + +
+Archie Query Form
+Search for:
+

+

+
+
+Database: Anonymous FTP Web Index +Search Type: Sub String Exact Regular Expression +Case: Insensitive Sensitive

+Output Format For Web Index Search: Keywords Excerpts + Links Strings +

+
+
+

Optional Search Parameters

+
    +

    +

  • Maximum Hits:
    + +
  • If you want to limit the search so that it only looks in certain domains +(such as ca, edu or com), enter one or more in the following boxes:
    + +
    + +
  • Limit the search results to match a directory path (this is optional): +

    + +
  • You can use as many terms as you like in your path restriction field, as long as you separate them by spaces. The operator among these terms is: +
    OR AND
    + +
  • Exclude search results that match a directory path you don't want (this is also optional): +

    +
+
+Help | Simple Search | Archie's Home Page +
+
+ diff --git a/release/base/cgi/html/archie-help.html b/release/base/cgi/html/archie-help.html new file mode 100644 index 0000000..d650ade --- /dev/null +++ b/release/base/cgi/html/archie-help.html @@ -0,0 +1,138 @@ + +Archie Help +

Archie Help

+
This help file explains in moderate detail what each field in the search page +means. If you still can't locate the help you need or you want to report an +error please mail us at archie-group@bunyip.com and we +will get back to you as soon as we can. +
+
+
+Search For: +
+Here you type in the search variable. If regular expression is the type of +search you are using then the string would be the +regular expression you are +looking for. +
+ +Database: +
+The database which will be undergoing the search. If you are searching the +web then press on the Web Index button. Otherwise if you are searching +the FTP sites then press on the other button. +
+ +Search Type: +
+
    +
  • Exact: +
  • Sub String:
    +Substring (case insensitive): A match occurs if +the file (or directory) name in the database contains +the user-given substring, without regard to case. +
    +Example:
    +
    +               The pattern:
    +                    is
    +
    +               matches any of the following:
    +
    +                    islington
    +                    this
    +                    poison
    +
    +
    +Substring (case sensitive): As above, but taking case as significant. + +
    +Example:
    +
    +               The pattern:
    +
    +                    TeX
    +
    +               will match:
    +
    +                    LaTeX
    +
    +               but neither of the following:
    +
    +                    Latex
    +                    TExTroff
    +
    +
  • Regular Expression: + Regular expressions follow the conventions of the ed(1) command, + allowing sophisticated pattern matching. Regular expressions imbue + certain characters with special meaning, providing a quoting mechanism to remove + this special meaning when required. +
+
+ +Case: +
+This option only affects searches of type Regular Expression and Substring. +
+ +Output Format: +
+This controls the output format for results from the Web Index database. +
    +
  • Keywords Only: The most frequently occurring Keywords in each document will +be displayed after the document's URL. +
  • Excerpts Only: A short excerpt from each document is displayed +after its URL. +
  • Links Only: Only links are displayed with no further details. No excerpts +or Keywords are displayed with each URL. +
+
+ +

Optional Parameters

+
    +
  • Path restriction or exclusion: Several parameters could be used to +improve your search results. But first you must specify what type of operation +to be used on those upcoming fields. If you specify OR then you ask +that the strings you provide in these fields have an OR relationship among +them. Otherwise if you specify AND then you are asking for all the +strings that you provide in these fields to be considered. +
      +
    • Path Restriction : You can improve the results by restricting on +the path of each URL that comes back. The strings you provide in these field +will be matched against the paths returned in the result and paths that do not +contain these strings will be disregarded. If you have chosen the OR +as your operator among the strings then if any of the strings occur in a path +this path will be considered valid. However if you have chosen AND as +your operator then unless all the entered strings appear in the path, the path +is invalid. +
    • Path Exclusion : You can exclude certain results from coming back +if they contain a specific string you don't need to see. By specifying this +string in this field you will achieve your goal. +
    +
  • Domains: This variable allows you to restrict the scope of +your search based upon the Fully Qualified Domain Names (FQDN) of the +anonymous FTP or Web sites being searched. In this way, you can specify a +list of domain names to which all returned sites must match. + +
  • Maximum Hits : Allows Archie to generate at most the +specified number of matches (permissible range: 0-200; default: 100). + +
  • Maximum Hits Per Match : Across all the anonymous FTP and +Web archives on the Internet (and even on one single anonymous FTP archive) many +files will have the same name. For example, if you +search for a very common filename like "README" you can +get hundreds even thousands of matches. You can limit +the number of files with the same name through this variable. + +
  • Maximum Match : This variable will limit the number filenames (or +strings matched) returned. +For example, if maxmatch is set to 2 and you perform a +substring search for the string "etc", and the database +contains filenames "etca", "betc" and "detc" only the +filenames "etca" and "betc" will be returned. However, +depending on the values of maxhitspm and maxhits you +will get back a number of actual files with those +names. +
+ \ No newline at end of file diff --git a/release/base/cgi/html/archie.html b/release/base/cgi/html/archie.html new file mode 100644 index 0000000..e297eee --- /dev/null +++ b/release/base/cgi/html/archie.html @@ -0,0 +1,30 @@ + + +Search in Archie + +
+ + +
+Archie Query Form
+Search for:
+
+ +
+
+
+Database: Anonymous FTP Web Index +Search Type: Sub String Exact Regular Expression +Case: Insensitive Sensitive

+Output Format For Web Index Search: Keywords + Excerpts + Links + Strings +

+
+
+
+Help | Advanced Search | Archie's Home Page +
+
+ diff --git a/release/base/cgi/html/query.gif b/release/base/cgi/html/query.gif new file mode 100644 index 0000000000000000000000000000000000000000..9708601763b391255865ae9ad84cbdf046fcac89 GIT binary patch literal 6845 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 literal 0 HcmV?d00001 diff --git a/release/base/config/Makefile b/release/base/config/Makefile new file mode 100644 index 0000000..cc10dc3 --- /dev/null +++ b/release/base/config/Makefile @@ -0,0 +1,128 @@ +# archie Version 3.5-beta +# Bunyip Information Systems, 1994 +# $Id: Makefile,v 1.10 1995/03/17 13:50:36 pedro Exp $ +# +# This is the configuration Makefile for the archie V 3.5 distribution +# +# Change the following 2 definitions if you don't like the defaults MAKE +# SURE that you have allocated the archie user codes before running this +# Makefile The name of the archie administrative code. You might want to +# create an archie group as well +# +# YOU MUST RUN THIS MAKEFILE AS SUPERUSER +# + +ARCHUSER=archie +ARCHGRP =archie + +# The place for the manpages describing the binaries + +MANEXT=n +MAN=../man + +#MAN5EXT=$(MANEXT) +MAN5EXT=5 +MAN5=$(MAN)/man${MAN5EXT} + +# Default permissions for archie binaries + +AR_PERMS=711 +ARS_PERMS=755 + +all: su links manpages owners archieb pfs links + + +su: + @echo "Making sure you're superuser" + @id=`id | sed 's/(.*$$//' | sed 's/^.*=//'`; \ + echo "Your uid is $$id"; \ + if [ "$$id" -ne "0" ]; then \ + echo "You must be running as superuser to configure archie"; \ + exit 2;\ + fi + +owners: + @echo Changing ownership to the archie user: $(ARCHUSER) + (cd ..; chown -R $(ARCHUSER) *; chgrp -R $(ARCHGRP) *;\ + chown $(ARCHUSER) . ; chgrp $(ARCHGRP) .; \ + chown $(ARCHUSER) .*; chgrp $(ARCHGRP) .*; chmod 755 .) + +archieb: + @echo Copying the shell and perl scripts into the bin directory + (cd ../scripts; tar cf - . | gzip > /tmp/scripts.tgz ; cd ../bin ;\ + ../scripts/untar /tmp/scripts.tgz) + @echo Setting permissions for binaries + for i in `find ../bin -type f -print | grep -v CVS | \ + sed 's?../bin/??g'`; do\ + chmod $(AR_PERMS) ../bin/$$i;\ + done + @echo Setting permissions for scripts + cd ../bin; /bin/file ./* | egrep -v '(demand|link|directory)' | \ + sed 's?:.*$$??' | xargs -t chmod $(ARS_PERMS) + @echo Setting permissions for logs + chmod 662 ../logs/email.log + @echo Setting permissions for tmp directory + chmod 1777 ../db/tmp ../tmp + @echo Taking care of the pager + cp ../bin/less* ../pager/bin + chmod 555 ../pager/bin/less* + @echo Setting permissions for telnet client + chown root ../bin/telnet-client + chmod 111 ../bin/telnet-client + chmod u+s ../bin/telnet-client + chmod 755 ../bin ../etc ../logs + chmod 644 ../etc/* + @echo Setting permissions for cgi progs + chmod 755 ../cgi ../cgi/* + chmod 644 ../cgi/html/* + chmod 755 ../cgi/bin/archie.cgi + chmod 755 ../cgi/bin/cgi-client + chmod u+s ../cgi/bin/cgi-client + @echo Setting permissions for databases + chmod o+rx ../db ../db/* + +manpages: + -mkdir $(MAN) && chmod 755 $(MAN) + -mkdir $(MAN)/man$(MANEXT) && chmod 755 $(MAN)/man$(MANEXT) + -mkdir $(MAN5) && chmod 755 $(MAN5) + for i in `find ../manpages/*.n -type f -print | grep -v CVS |\ + sed 's?../manpages/??g' | sed 's/\..$$//g'`; do\ + cp ../manpages/$$i.n $(MAN)/man$(MANEXT)/$$i.$(MANEXT);\ + chmod 644 $(MAN)/man$(MANEXT)/$$i.$(MANEXT);\ + if [ -f /usr/ucb/echo ] ; then /usr/ucb/echo -n "." ; \ + else echo -n "." ; fi \ + done + @echo "" + for i in `find ../manpages/*.5 -type f -print | grep -v CVS |\ + sed 's?../manpages/??g' | sed 's/\..$$//g'`; do\ + cp ../manpages/$$i.5 $(MAN5)/$$i.$(MAN5EXT);\ + chmod 644 $(MAN5)/$$i.$(MAN5EXT);\ + if [ -f /usr/ucb/echo ] ; then /usr/ucb/echo -n "." ; \ + else echo -n "." ; fi \ + done + @echo "" + @echo "Done"; + +pfs: + @echo "Taking care of things in /pfs" + find ../pfs -type f -print | xargs -t chmod 644 + find ../pfs -type d -print | xargs -t chmod 755 + find ../pfs/bin -type f -print | xargs -t chmod 755 + chown root ../pfs/bin/pstart + chmod gu+s ../pfs/bin/pstart + +links: + @echo "Creating /pfs link" + -rm -f /pfs + ln -s `pwd | sed 's?/config??'`/pfs /pfs + @echo "Creating other links" + -cd .. ; rm -f bin/-telnet-client bin/arexchange bin/arretrieve + cd ../bin; ln -s telnet-client ./-telnet-client; \ + ln -s arserver arexchange; \ + ln -s arserver arretrieve; \ + ln -s update_anonftp update_webindex + + + + + diff --git a/release/base/contrib/README b/release/base/contrib/README new file mode 100644 index 0000000..cc7e1b2 --- /dev/null +++ b/release/base/contrib/README @@ -0,0 +1,49 @@ +The archie standalone clients are the property of the individual authors +and are included here for the convenience of our customers. All of these +clients are available on the Internet via anonymous FTP. + +The modified sources for less used with the archie system are included +in less-177-for-archie.tar.Z + +NOTE: These sources do _NOT_ contain the prospero patch for V2/V3 + archie/prospero systems. However, the fix is included if you would + perform the patch yourself. It is in prospero-fix. + + + Archie Standalone clients + +File name Author Comments +---------- ------ ------------ + +c-archie-1.[1-3].tar.Z + Brendan Kehoe Command line interface + (brendan@cygnus.com) written in C + +c-archie-1.[2,3]-for-vms.com + Brendan Kehoe Command line interface + (brendan@cygnus.com) written for VMS + + +archie.el + Brendan Kehoe Command line interface + (brendan@cygnus.com) written for emacs + +perl-archie-3.8.tar.Z + Khun Yee Fung Command line interface + (clipper@csd.uwo.ca) written in Perl + +xarchie-2.0.8.tar.Z + George Ferguson X11(R4) interface + (ferguson@cs.rochester.edu) Athena widget set + +archie-one-liner.sh + Mark Moraes + (moraes@deshaw.com) /bin/sh interface + +archie.zip Brad Clemens + (bkc@omnigate.clarkson.edu) PC DOS client + +mac-archie-client-09.hqx + Chris J McNeil + cmcneil@macc2.mta.ca Mac archie client + (This is shareware) diff --git a/release/base/contrib/archie.el b/release/base/contrib/archie.el new file mode 100644 index 0000000..7ee046c --- /dev/null +++ b/release/base/contrib/archie.el @@ -0,0 +1,71 @@ +;; +;; archie.el v1.0 -- by Brendan Kehoe (brendan@cs.widener.edu) +;; +;; A mock-interface to Archie for Emacs. This will shave by when you need +;; it. ARCHIE-SEZ will insert the result of the query in the current buffer, +;; and plain ARCHIE will create a separate buffer . +;; +;; TODO: hack ange-ftp to use the output of archie -l, and let you select +;; from a magic list which one you want to FTP into an Emacs buffer. +;; + +(defvar archie-program "/usr/local/bin/archie" + "Program that queries archie servers.") + +(defvar archie-server "archie.sura.net" + "Server for \\[archie] searches. + +Known archie servers: + archie.ans.net (USA [NY]) + archie.sura.net (USA [MD]) + archie.mcgill.ca (Canada) + archie.funet.fi (Finland/Mainland Europe) + archie.au (Australia) + archie.doc.ic.ac.uk (Great Britain/Ireland) +") + +(defvar archie-search-type "-e" + "Search type for \\[archie] searches. +Can be one of: -c for substring searches + -e for exact matches (default) + -r for a regexp + -s for a case-insensitive substring search +") + +(defun archie-sez (string) + "Insert the results of an archie query on STRING into the current buffer. + Uses the function `archie' for its main work." + (interactive (list (read-string "String: " nil))) + (archie string nil t)) + +(defun archie (string &optional type inplace) + "Look for STRING on an Archie server. +Optional second arg TYPE is the type of search to make -- by default, it's +`archie-search-type'. Possible values are substring, subcase (case insensitive +substring), and regexp (a regular expression). Interactively, a prefix arg +will make it prompt for this." + (interactive (list (read-string "String: " nil) + (and current-prefix-arg + (read-string "Search type [-c/-e/-r/-s]: " + archie-search-type)))) + (let ((buf (or inplace (get-buffer-create "*Archie*")))) + (if inplace + (progn + (push-mark (point) t) + (insert "Archie sez: \n")) + (progn + (pop-to-buffer buf) + (setq buffer-read-only nil + mode-line-process (concat ": " string) + mode-name "Query for" + minor-mode-alist nil) + (erase-buffer))) + (call-process archie-program nil buf nil + "-h" archie-server + (or type archie-search-type) + string)) + + (if (not inplace) + (progn + (setq buffer-read-only t) + (goto-char (point-min))))) diff --git a/release/base/contrib/archie.zip b/release/base/contrib/archie.zip new file mode 100644 index 0000000000000000000000000000000000000000..aacc45d8d6219c3e8c7e6f13d9c1eea27b78e8d8 GIT binary patch literal 73212 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 P#*^pgNj)QQ`sDsE3$Sx~ literal 0 HcmV?d00001 diff --git a/release/base/contrib/c-archie-1.3.2-vms.com b/release/base/contrib/c-archie-1.3.2-vms.com new file mode 100644 index 0000000..ba066d9 --- /dev/null +++ b/release/base/contrib/c-archie-1.3.2-vms.com @@ -0,0 +1,9459 @@ +$ write sys$output "Unpacking..." +$ if f$search("archie.dir") .eqs. "" then create/dir [.ARCHIE] +$ if f$search("[.ARCHIE]vms.dir") .eqs. "" then create/dir [.ARCHIE.VMS] +$ if f$search("[.ARCHIE]msdos.dir") .eqs. "" then create/dir [.ARCHIE.MSDOS] +$ set noverify +$! This is a DCL shar-type archive created by Unix dclshar. +$! +$CREATE [.archie]INSTALL +$DECK +[Last changed: 04/14/92 v1.3.2] + + This is the minimal set of things you need to build an Archie client +that takes advantage of the Prospero system. It is derived from the +4.2beta version of Prospero, currently available as the file prospero.tar.Z +on the host cs.washington.edu. + + * To make the client under Unix: + * edit the Makefile, changing CC, OPTIONS, LDFLAGS, and RM if + necessary (odds are you won't have to do this..see below) + * edit the DEFINEs as necessary + * if archie.ans.net isn't "close" to you netwise, please edit + ARCHIE in the Makefile appropriately. This is particularly important + if you're not in the US. You don't need to touch archie.h anymore. + * type `make' + + I've tried to make this as portable as possible. I'd encourage you +to try doing a "make" without any changes to the Makefile, and see how +it goes. If it pukes, and you have to define something, please drop +me a line---my goal is for anybody to just type "make" and not have to +worry about things like what functions their system supports. + + * To make the client under VMS, just type @MAKE and it'll ask you + which of the available Archie servers is closest. That's it! + + * To make the client under MSDOS or OS/2: + * with FTP Software's PC/TCP for MSDOS (version 2.1 or higher) and + OS/2 (version 1.1 and higher), use makefile.os2 or makefile.dos + * with CUTCP (NCSA telnet), use makefile.cut + +-- Brendan Kehoe (brendan@cs.widener.edu) +$EOD +$! +$CREATE [.archie]Makefile +$DECK +# +# Last changed: 4/14/92, v1.3.2 +# +# Makefile for the minimal build for an archie Prospero client. + +# Your C compiler: +CC=cc + +# For most systems, these OPTIONS will suffice. Exceptions: +# +# * If you're on a Stardent, add -43 +# * If you're running EP/IX, you may need to add -systype bsd43 +# but try it without it first. +OPTIONS= -O -I. -I/usr/netinclude -I/usr/ucbinclude + +# For this, DEFINES is usually ok as-is. Try it without any of these +# first; if some stuff fails or shows up undefined, then come back and +# add 'em. Also please drop me a line if you had to add anything...ideally +# things will reach a point where this whole section will be unnecessary. +# +# * if you want to include the debugging code (so you +# can help with problem-solving if any crop up), add -DDEBUG +# * if you're running Interactive Unix, add -DISC +# * if you're running System V, add -DSYSV +# * if you're running a USG (System V.2) system, add -DUSG +# * if you're running UTS, add -DUTS +# * if your system doesn't have the functions index(), +# rindex(), bcopy(), or bzero(), add -DFUNCS +# * if your system is missing the getenv(3) routine, add -DGETENV +# * if your system doesn't have the re_comp/regcmp or re_exec/regex +# routines (no regex(3)/regcmp(3X) library), then add -DNOREGEX +# * if your system is lacking strspn(), add -DSTRSPN +DEFINES= -DDEBUG + +# The default Archie server; choose one of: +# archie.ans.net (USA [NY]) +# archie.rutgers.edu (USA [NJ]) +# archie.sura.net (USA [MD]) +# archie.unl.edu (USA [NE]) +# archie.mcgill.ca (Canada) +# archie.funet.fi (Finland/Mainland Europe) +# archie.au (Australia) +# archie.doc.ic.ac.uk (Great Britain/Ireland) +# +ARCHIE= archie.sura.net + +# Usually LDFLAGS is empty; if, after you build this, archie +# complains that it can't resolve ARCHIE.ANS.NET (or whatever +# you defined ARCHIE_HOST as), you need to add `-lresolv'. +# * If you need the PW library (e.g. A/UX), add -lPW +# * If you're using ISC, add -linet +# * If you're using Wollongong TCP/IP on an AT&T box, use the +# arguments -lnet -lnsl_s . +# * If you're using UTS, add -lsocket +# * If you're using System V Release 4, add -L/usr/ucblib etc. +LDFLAGS= +#LDFLAGS= -lresolv +#LDFLAGS= -lnet -lnsl_s +#LDFLAGS= -lsocket +#LDFLAGS= -L/usr/ucblib -lucb -lsockdns -lnsl + +# Change this if necessary. +RM=/bin/rm + +# ========================= +# Yer' done....make archie. +# ========================= +# +CFLAGS=$(OPTIONS) $(DEFINES) -DARCHIE_HOST=\"$(ARCHIE)\" + +VERSION=1.3.2 +VMS_VERSION=`echo $(VERSION) | sed -e 's,\\.,_,g'` + +OBJS= aquery.o archie.o atalloc.o dirsend.o get_pauth.o get_vdir.o \ + perrmesg.o procquery.o ptalloc.o regex.o stcopy.o support.o \ + vlalloc.o vl_comp.o + +all: archie + +archie: $(OBJS) + $(CC) $(CFLAGS) -o $@ $(OBJS) $(LDFLAGS) + +$(OBJS): archie.h pmachine.h pcompat.h Makefile + +procquery.o: copyright.h + +clean: + $(RM) -f *.o archie archie.doc + +gclean: clean + $(RM) -f *~ archie.0* archie$(VMS_VERSION).com archie.tar* gmon.out archie.doc + +unx-deadly: + unifdef -UXARCHIE xprocquery.c > procquery.c + +udp: udp.o + $(CC) -o $@ udp.o + +udptest: udp + @echo "This should print the date, if UDP's enabled, or hang if not:" + @./udp + +FILES= INSTALL Makefile Prospero README README.dos archie.c archie.h \ + archie.lnk archie.doc archie.man aquery.c atalloc.c dirsend.c \ + get_pauth.c get_vdir.c make.com makefile.cut makefile.dos makefile.os2 \ + msdos/cutcp.h msdos/hostform.h msdos/netevent.h \ + perrmesg.c patchlevel.h pauthent.h pcompat.h perrno.h pfs.h pmachine.h \ + pprot.h procquery.c ptalloc.c rdgram.h regex.c regex.h stcopy.c \ + support.c copyright.h udp.c vl_comp.c vlalloc.c vms.h vms_support.c \ + vms/fd.h vms/in.h vms/pseudos.h vms/signal.h vms/socket.h vms/time.h \ + vms/types.h vms/network.h vms/multi.opt vms/ucx.opt vms/woll.opt + +BFILES= $(FILES) xprocquery.c + +dist: tar shar dcl + +shar: archie.doc + makekit -narchie-$(VERSION). archie-$(VERSION) `echo $(FILES) | \ + tr ' ' '\012' | sed -e "s/^/archie-$(VERSION)\//g"` \ + vms msdos > Manifest + +archie.doc: archie.man + nroff -man archie.man | tr '\010' _ | sed -e s/__//g > archie.doc + +dcl: archie.doc + if [ ! -d archie$(VMS_VERSION)/ ]; then ln -s . archie$(VMS_VERSION); fi + echo '$$ write sys$$output "Unpacking..."' > archie$(VMS_VERSION).com + echo '$$ if f$$search("archie.dir") .eqs. "" then create/dir [.ARCHIE]' >> archie$(VMS_VERSION).com + echo '$$ if f$$search("[.ARCHIE]vms.dir") .eqs. "" then create/dir [.ARCHIE.VMS]' >> archie$(VMS_VERSION).com + echo '$$ if f$$search("[.ARCHIE]msdos.dir") .eqs. "" then create/dir [.ARCHIE.MSDOS]' >> archie$(VMS_VERSION).com + echo '$$ set noverify' >> archie$(VMS_VERSION).com + dclshar `echo "$(FILES)" | tr ' ' '\012' | \ + sed -e "s/^/archie\//g"` >> archie$(VMS_VERSION).com + echo '$$ write sys$$output "Ok, now enter the ARCHIE directory, look at MAKE.COM, then type @MAKE ."' >> archie$(VMS_VERSION).com + +tar: archie.doc + if [ ! -d archie-$(VERSION)/ ]; then ln -s . archie-$(VERSION); fi + tar cvf archie-$(VERSION).tar `echo $(FILES) |\ + tr ' ' '\012' | sed -e "s/^/archie-$(VERSION)\//g"` + compress -f archie-$(VERSION).tar +$EOD +$! +$CREATE [.archie]Prospero +$DECK +Prospero also allows users to access Archie as if it were part of a +file system. Here is an example of how Prospero can be used to access +Archie in this manner. + + Script started on Mon Jul 1 22:36:42 1991 + % source /home/ftp/archie/pfs/bin/vfsetup.source + % vfsetup guest + % venable + % cd /archive-sites/archie/regex + % cd prospero (This command specifies the query) + % ls -l + total 0 + -r--r--r-- 0 - 0 - info-prospero.arc + dr-xr-xr-x 0 - 0 - prospero + dr-xr-xr-x 0 - 0 - prospero-papers + -r--r--r-- 0 - 0 - prospero.arc + -r--r--r-- 0 - 0 - prospero.tar.Z + (Note that the "vls" command could have been used) + (to show where the files were actually stored ) + % ls prospero (list a result if it is a directory) + prog.tar.Z prospero.tar.Z + % cat info-prospero.arc (The file is automatically retrieved and displayed) + >From bcn@n1dmm Tue Dec 4 02:33:36 1990 + Received: from n1dmm.cs.washington.edu by june.cs.washington.edu (5.64/7.0jh) + id AA24763; Tue, 4 Dec 90 02:33:36 -0800 + Received: by n1dmm.cs.washington.edu (5.64/7.0h) + id AA08497; Tue, 4 Dec 90 02:33:31 -0800 + Date: Tue, 4 Dec 90 02:33:31 -0800 + From: bcn@cs.washington.edu (Clifford Neuman) + ... + % vdisable + % exit + script done on Mon Jul 1 22:39:33 1991 +$EOD +$! +$CREATE [.archie]README +$DECK +[Last changed 04/14/92 v1.3.2] + + Enclosed you'll find a Prospero client for the archie service. It'll +let you query the archie databases without actually using an +interactive process on the remote server's machine (e.g., archie.ans.net), +resulting in a MUCH better response time. It also helps lessen the +load on the archie server itself. + + What's Archie? It's a system that will let you check a database containing +thousands of entries for the files that're available at FTP sites around +the world. + + This is a third child of Clifford Neuman's Prospero project. It's really +the Archie client that's included in the prospero stuff, but I've taken out +everything that's unnecessary for this client to work. (Aka, you don't +have to build all of Prospero to get the Archie client.) Khun Yee Fung +wrote an archie client in Perl, George Ferguson has written a client +for use with XWindows, based in part upon this code. Also, Scott +Stark wrote a NeXT-Step client for the NeXT. + + Using the Archie Prospero interface in its true form will probably be of +interest---check out the file `Prospero' for an example of its interface. +If you find it intriguing, you should probably get the full prospero kit +from the University of Washington on cs.washington.edu in pub/prospero.tar.Z. + + Suffice to say, there are now a number of ways to query Archie without +bogging a server down with your logins. + + Check out the man page (or archie.doc, if you're using VMS or DOS) +for instructions on how to use this archie client. VMS users please +note that you have to put quotes around args that are capital letters; +for example, $ ARCHIE "-L" to list the available servers. + + Please check to make sure you don't have "archie" aliased or modified +in some way to do a telnet or rlogin (which you may've done before +this command-line ability came into being). + + If Archie consistently hangs (at different times of day with +different queries), it's possible that your site has UDP traffic on +ports > 1000 blocked, for security reasons. Type `make udptest' to +check---if it prints out the date, the Archie server is probably down; +if it doesn't print out the date, either Widener's computer is down +(God forbid ;-) ) or you do indeed have UDP blocked. See your system +administrator in this case. If the problem persists and haven't the +vaguest, then write me describing the situation and what machine/OS +you're using. + + Write to archie-group@cs.mcgill.ca with questions about Archie itself. + Write to info-prospero@isi.edu about the Prospero protocol. + Write to brendan@cs.widener.edu with questions about this specific package. +$EOD +$! +$CREATE [.archie]README.dos +$DECK +11/22/91 Readme.dos -- Readme file for CUTCP DOS version of Archie. + +-- +This version requires the use of a `standard' NCSA or CUTCP compatible +CONFIG.TEL file. If you are running NCSA telnet or CUTCP/CUTE telnet, +you should be able to run this program without modification. + +As with all CUTCP programs, you may set a DOS environment variable to +point to the location of your config.tel file. + + set CONFIGTEL=C:\net\config.tel + +You may also set the $CUTCPnn dos environment variables to include other +'local' information (such as client IP address on a Novell lan). + +This version has been compiled with the US (archie.sura.net) Prospero/Archie +server as the default. This may not be appropriate for your location. Here's +how to change it. + + + 1. Run the archie program with the -L argument to list known + archie/prospero servers. + + 2. Select the server name that is closest to your site. For this example + we'll pick archie.funet.fi + + 3. Edit your config.tel file and add the following lines at the end + of the file. + + name=archie + host=archie.funet.fi # actually substitute your select + # server name here + + 4. If you happen to know the IP address of the server, you may also + add the appropriate + + hostip= + + 5. If you don't enter an IP address, archie will perform a DNS lookup + use the domain nameserver information that is in your config.tel + file. + + +An additional command line option (-H) has been added (vs -h) to allow the +user to specify the config.tel file location on the command line. + + archie -H c:\net\config.tel emacs + +During a search, you may press the key to abort the query. + + + +If you have problems, try running archie with the -D9 option (debug). + +As usual, bugs/comments to: + + cutcp-bugs@omnigate.clarkson.edu + +Brad Clements, Sr. Network Engineer +Educational Resources Center +Clarkson University +Potsdam, NY 13699 + +bkc@draco.erc.clarkson.edu + +----------- +Sample Config.tel file +------------------------------ +# Example host file for ARCHIE/ CUTCP version +# 11/21/91 +# +# Bugs to cutcp-bugs@omnigate.clarkson.edu + +#---------------------------------------------------------------------------# +# # +#** ATTENTION ATTENTION ATTENTION ATTENTION ATTENTION ATTENTION ATTENTION **# +# # +# This sample config.tel file contains every single option that you could # +# possibly use. Its meant as an example only. Please Please PLEASE don't # +# use all these options in your working config.tel file, just the ones # +# that you actually need. Many options can be left out, the default action# +# (if defined) is shown in parens () next to the option. # +# # +# Thank you for your support # +#---------------------------------------------------------------------------# + +# +# This example file is for my=bootp, in which case the following items are +# determined from the bootp server: (and are thus commented out in this file) +# 1. This machine's IP Address +# 2. The network NETMASK +# 3. The default gateway (one or more) +# 4. Nameservers (one or more) +# 5. The domain search list (if this clients hostname is in the bootp packet) +# +# Your BOOTP server needs to be RFC 1048 compliant for this to work +# +# If you have nameservers, gateways or a domainslist already specified +# in this file, then the file's entry takes precedence. +# Extra gateways and nameservers will be added by BOOTP if found, however. +#---------------------------------------------------------------------------- +# You can set a DOS environment variable CONFIGTEL to point to this file +# then you don't need batch files or the -h option. +# +# C> set CONFIGTEL=C:\net\myconfig.tel +# +# You may also use environment variables to include config.tel options, +# such as: +# C> set $CUTCP1=myip~197.001.42.98;netmask~255.255.252.0 +# C> set $CUTCP2=name~x;hostip~128.163.298.2 +# +# and so on up to $CUTCP99. Note that you use a tilde (~) instead of (=) +# in the dos set command because two ='s are not allowed by Dos. +# +# Additionally, there is a new config.tel option called include= which +# allows the nesting (up to 3) configuration files deep. +# +# +# You can use these new options on networks to make your configuration job +# easier. CUTCP always opens config.tel files as read-only, so you can mark +# your files as sharable, read only. Also, you can use the include= command +# in a $CUTCP environment variable, and on the command line. + +# *Note* that you can not include a machine specific parameter before +# name=default... This used to work in old versions, but is strictly +# enforced in this version. +# -------------------------------------------------------------------------- +# This file is free form +# Separators are any char <33 and :;= +# +# The form is keyword=value for each parameter. +# The first set of parameters refer to the whole program's defaults. +# These parameter values can be in any order. +# Following this are the individual machine specs. +# + +myip=128.153.28.65 # (bootp) + # myip types are: + # bootp - sends out a BOOTP request for your IP + # rarp - Uses reverse ARp to get your IP + # xx.yy.zz.qq - your IP address + +vjc=no # (no) + # set vjc=yes if you're running slip and + # you want to use Van Jacobson TCP header + # compression + +splayc=no # (no) ack. splay compression w/ vjc.. don't + # use it, not standard, development option only + +myname=userid # put your userid here, used for Rlogin + # PC-NFS version ignores this value and uses the name + # that you specified to your pcnfsd. + +netmask=255.255.252.0 # needed if not using BOOTP. + # otherwise not needed because Bootp gets your netmask + # for you + +hardware=packet # (packet) + # harware choices + # 3com - 3com 3c501 + # 3c523 - 3com 3c523 + # wd800 - Western Digitial 800E + # nicpc - + # nicps - + # ni5210 - Micom Interlan NI5210 card + # packet - FTP packet Driver spec + # (currently only Ethernet and Slip class devices are supported) + +interrupt=2 # hardware IRQ interrupt +address=0 # (0) + # base memory address or packet driver class + # if using packet driver (0 == default == ethernet) + # or class=6 for slip + +ioaddr=0 # (0) + # I/O address or packet int vector if using packet driver + # If = 0 and packet driver, telbin looks for first + # packet driver found between 60H and 7FH + +noarpme=yes # Don't arp for myself before running? (no) + # if yes, inhibits the initial arp request + # for this IP address. However, if yes, won't + # warn you if another user is using this IP + # address. For some token ring systems, you'll + # need noarpme=yes. + +include="nul" # if you want to include another file as part + # of this one (you can nest up to three includes) + # otherwise, don't use this option + +domaintime=4 # domain name lookup timeout (first retry) +domainretry=4 # domain name max number of retries +domainslist="clarkson.edu,aux.clarkson.edu" # domain name search path + # domain name lookup will attach each of these + # comma seperated suffixes to + # the end of the name you are looking for to + # discover the full name and IP address. + # so, looking for x tries x.clarkson.edu and x.aux.clarkson.edu then just x + # unless you use x. which ONLY looks for x + + ## Also, the fewer suffixes in the domainslist + ## the less time you will have to wait if you mis-type an entry. + ## Finally, try not to use a suffix like . or .edu or .com this will + ## waste a lot of time looking for a bogus host name if you mis-type an entry. + +## ----------------------------------------------------------------- ## +## BEGIN MACHINE SPECIFIC PARAMETERS... ## +## ----------------------------------------------------------------- ## + +name=default # default entry sets defaults for all following + # machines. + +arptime=10 # arp timeout in seconds + # + +retrans=1 # starting retransmit time out in ticks + # 1/18ths of sec MAX 100, min 1 + +mtu=1024 # maximum transmit unit in bytes + # outgoing packet size, MAX=1500 + +maxseg=1024 # largest segment we can receive + # whatever the hardware can take, MAX=4096 +rwin=2048 # most bytes we can receive without ACK + # =TCP window size, MAX=4096 + +contime=20 # timeout in seconds to try connection + # before returning error to user + +# Following are individual machine specifications +# Gateways are used in order that they appear in the file +# Nameservers rotate, #1, #2, #3, #1, #2 when a request fails +# + +# ********************************************************************* ### +# Note: If you are using BOOTP above for myip=, then you do not need +# to enter a default gateway, nameserver, netmask etc (unless you want to) +# only IF your BOOTP server is rfc_1048 compliant. (Ask your Net Manager) +# You can use both bootp and entries here, in which case the entries in +# this file over-ride what BOOTP discovers. (however, bootp nameservers +# and gateways are ADDED to this file's list of entries +# ********************************************************************* #### + +# Below this line, most of the communication parameters are obtained +# from the "default" host entry. Those parameters listed for a host +# override the default host values. +# +# These are examples, replace them with the correct values for your site. +#name=mynameserver +#host=omnigate.clarkson.edu +#hostip=197.001.4.2 +#nameserver=1 + +#name=backupserver +#host=clutx.clarkson.edu +#hostip=197.001.4.3 +#nameserver=2 + +#name=lastserver +#host=n2ngw.nyser.net +#hostip=128.145.198.2 +#nameserver=3 + +#name=mygateway +#host=nysernet.clarkson.edu +#hostip=197.001.4.1 +#gateway=1 + + +name=archie +host=archie.funet.fi +$EOD +$! +$CREATE [.archie]archie.c +$DECK +/* + * Copyright (c) 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include + +/* + * Archie client using the Prospero protocol. + * + * Suggestions and improvements to Brendan Kehoe (brendan@cs.widener.edu). + */ + +#include +#if defined(OS2) +# include +#endif +#ifdef MSDOS +# include +# include +# ifdef CUTCP +# include +# include +/* The default stack size for a BC program is 4k; jack it up to 16 and add the + Check for Stack Overflow option to the compiler. */ +extern unsigned _stklen = 16 * 1024; +# endif +#endif + +#include +#include +#include +#include + +int listflag = 0; +int sortflag = 0; /* 1 = by date */ +char *progname; +#ifdef DEBUG +extern int pfs_debug; +#endif +extern int rdgram_priority; + +/* To keep the code clean.. */ +#ifdef VMS +# define NFLAG "\"N\"" +# define LFLAG "\"L\"" +# define A_EXIT SS$_NORMAL +#else +# define NFLAG "N" +# define LFLAG "L" +# define A_EXIT 1 +#endif +#ifdef CUTCP +# define HFLAG "[H config.tel]]" +#else +# define HFLAG "]" +#endif + +main(argc,argv) + int argc; + char *argv[]; + { + char *cur_arg; + char qtype = '='; /* Default to exact string match */ + char etype = '='; /* Type if only -e is specified */ + int eflag = 0; /* Exact flag specified */ + int max_hits = MAX_HITS; + int offset = 0; + int exitflag = 0; /* Display release identifier */ + int tmp; + char *host = ARCHIE_HOST; + char *p; + static char *archies[] = { ARCHIES }; +#ifdef CUTCP + int hostset = 0; +#endif + char *getenv(); + + progname = *argv; + argc--; argv++; + +#ifdef CUTCP + if(getenv("CONFIGTEL")) + if(Shostfile(getenv("CONFIGTEL")) < 0) { + fprintf(stderr,"Error, couldn't open configtel file %s\n", + getenv("CONFIGTEL")); + exit(1); + } +#endif + + if ((p = getenv("ARCHIE_HOST")) != (char *)NULL) + host = p; + + while (argc > 0 && **argv == '-') { + cur_arg = argv[0]+1; + + /* If a - by itself, or --, then no more arguments */ + if(!*cur_arg || ((*cur_arg == '-') && (!*(cur_arg+1)))) { + argc--, argv++; + goto scandone; + } + + while (*cur_arg) { + switch (*cur_arg++) { +#ifdef DEBUG + case 'D': /* Debug level */ + pfs_debug = 1; /* Default debug level */ + if(*cur_arg && index("0123456789",*cur_arg)) { + sscanf(cur_arg,"%d",&pfs_debug); + cur_arg += strspn(cur_arg,"0123456789"); + } + else if(argc > 2) { + tmp = sscanf(argv[1],"%d",&pfs_debug); + if (tmp == 1) {argc--;argv++;} + } + break; +#endif +#ifdef CUTCP + case 'H' : + if(Shostfile(argv[1]) < 0) { + fprintf(stderr,"Error, couldn't open configtel file %s\n",argv[1]); + exit(1); + } + argc--;argv++; + break; +#endif +#ifndef XARCHIE + case 'L': + printf("Known archie servers:\n"); + for (tmp = 0; tmp < NARCHIES; tmp++) + printf("\t%s\n", archies[tmp]); + printf(" * %s is the default Archie server.\n", ARCHIE_HOST); + printf(" * For the most up-to-date list, write to an Archie server and give it\n the command `servers'.\n"); + exitflag = 1; + break; +#endif + + case 'N': /* Priority (nice) */ + rdgram_priority = RDGRAM_MAX_PRI; /* Use this if no # */ + if(*cur_arg && index("-0123456789",*cur_arg)) { + sscanf(cur_arg,"%d",&rdgram_priority); + cur_arg += strspn(cur_arg,"-0123456789"); + } + else if(argc > 2) { + tmp = sscanf(argv[1],"%d",&rdgram_priority); + if (tmp == 1) {argc--;argv++;} + } + if(rdgram_priority > RDGRAM_MAX_SPRI) + rdgram_priority = RDGRAM_MAX_PRI; + if(rdgram_priority < RDGRAM_MIN_PRI) + rdgram_priority = RDGRAM_MIN_PRI; + break; + + case 'c': /* substring (case sensitive) */ + qtype = 'C'; + etype = 'c'; + break; + + case 'e': /* Exact match */ + /* If -e specified by itself, then we use the */ + /* default value of etype which must be '=' */ + eflag++; + break; + + case 'h': /* Host */ + host = argv[1]; +#ifdef CUTCP + hostset++; +#endif + argc--; argv++; + break; + + case 'l': /* List one match per line */ + listflag++; + break; + + case '0': case '1': case '2': case '3': case '4': + case '5': case '6': case '7': case '8': case '9': + cur_arg--; + case 'm': /* Max hits */ + max_hits = -1; + if(*cur_arg && index("0123456789",*cur_arg)) { + sscanf(cur_arg,"%d",&max_hits); + cur_arg += strspn(cur_arg,"0123456789"); + } + else if(argc > 1) { + tmp = sscanf(argv[1],"%d",&max_hits); + if (tmp == 1) {argc--;argv++;} + } + if (max_hits < 1) { + fprintf(stderr, "%s: -m option requires a value for max hits (>= 1)\n", + progname); + exit(A_EXIT); + } + break; + + case 'o': /* Offset */ + if(argc > 1) { + tmp = sscanf(argv[1],"%d",&offset); + if (tmp != 1) + argc = -1; + else { + argc--; argv++; + } + } + break; + + case 'r': /* Regular expression search */ + qtype = 'R'; + etype = 'r'; + break; + + case 's': /* substring (case insensitive) */ + qtype = 'S'; + etype = 's'; + break; + + case 't': /* Sort inverted by date */ + sortflag = 1; + break; + + case 'v': /* Display version */ + fprintf(stderr, + "Client version %s based upon Prospero version %s\n", + CLIENT_VERSION, PFS_RELEASE); + exitflag++; + break; + + default: + fprintf(stderr,"Usage: %s [-[cers][l][t][m#][h host][%s][%s#]%s string\n", progname, LFLAG, NFLAG, HFLAG); + exit(A_EXIT); + } + } + argc--; argv++; + } + + scandone: + + if (eflag) qtype = etype; + + if ((argc != 1) && exitflag) exit(0); + + if (argc != 1) { + fprintf(stderr, "Usage: %s [-[cers][l][t][m#][h host][%s][%s#]%s string\n", progname, LFLAG, NFLAG, HFLAG); + fprintf(stderr," -c : case sensitive substring search\n"); + fprintf(stderr," -e : exact string match (default)\n"); + fprintf(stderr," -r : regular expression search\n"); + fprintf(stderr," -s : case insensitive substring search\n"); + fprintf(stderr," -l : list one match per line\n"); + fprintf(stderr," -t : sort inverted by date\n"); + fprintf(stderr," -m# : specifies maximum number of hits to return (default %d)\n", max_hits); + fprintf(stderr," -h host : specifies server host\n"); + fprintf(stderr," -%s : list known servers and current default\n", LFLAG); + fprintf(stderr," -%s# : specifies query niceness level (0-35765)\n", NFLAG); +#ifdef CUTCP + fprintf(stderr,"-H config.tel: specify location of config.tel file\n"); +#endif + exit(A_EXIT); + } + +#ifdef CUTCP + if(argc = Snetinit()) { + fprintf(stderr,"Error %d from SNetinit (bad or missing config.tel ?)\n",argc); + if(argc == -2) + netshut(); /* rarp lookup failure */ + exit(1); + } + if(!hostset) { /* if no host on command line, look in config.tel file + for name=archie */ + struct machinfo *mp; + + mp = Shostlook("archie"); + if(mp) { + host = mp->hname ? mp->hname : mp->sname; + } + } +#endif + + procquery(host, argv[0], max_hits, offset, qtype, sortflag, listflag); + +#ifdef CUTCP + netshut(); +#endif + exit(0); + } +$EOD +$! +$CREATE [.archie]archie.h +$DECK +/* + * archie.h : Definitions for the programmatic Prospero interface to Archie + * + * Written by Brendan Kehoe (brendan@cs.widener.edu), + * George Ferguson (ferguson@cs.rochester.edu), and + * Clifford Neuman (bcn@isi.edu). + */ + +/* You can't touch this. */ +#ifndef XARCHIE +# define ARCHIES "archie.ans.net (USA [NY])","archie.rutgers.edu (USA [NJ])","archie.sura.net (USA [MD])","archie.unl.edu (USA [NE])","archie.mcgill.ca (Canada)","archie.funet.fi (Finland/Mainland Europe)","archie.au (Australia)","archie.doc.ic.ac.uk (Great Britain/Ireland)" +# define NARCHIES 8 +#endif + +/* + * Default value for max hits. Note that this is normally different + * for different client implementations. Doing so makes it easier to + * collect statistics on the use of the various clients. + */ +#ifdef VMS +# define MAX_HITS 98 /* VMS Client */ +#else +# ifdef XARCHIE +# define MAX_HITS 99 /* X Client */ +# else +# define MAX_HITS 95 /* Normal client */ +# endif +#endif + +/* + * CLIENT_VERSION may be used to identify the version of the client if + * distributed separately from the Prospero distribution. The version + * command should then identify both the client version and the Prospero + * version identifiers. + */ +#ifdef XARCHIE +# define CLIENT_VERSION "1.3-X" +#else +# define CLIENT_VERSION "1.3.2" +#endif + +/* Procedures from user/aquery.c */ + +/* archie_query(host,string,max_hits,offset,query_type,cmp_proc,flags) */ +extern VLINK archie_query(); + +/* defcmplink(p,q) and invdatecmplink(p,q) */ +extern int defcmplink(); /* Compare by host then by filename */ +extern int invdatecmplink(); /* Compare links inverted by date */ + +/* Definitions for the comparison procedures */ +#define AQ_DEFCMP defcmplink +#define AQ_INVDATECMP invdatecmplink + +/* Flags */ +#define AQ_NOSORT 0x01 /* Don't sort */ +#define AQ_NOTRANS 0x02 /* Don't translate Archie responses */ +$EOD +$! +$CREATE [.archie]archie.lnk +$DECK +aquery.lo archie.lo atalloc.lo dirsend.lo+ +Get_pauth.lo get_vdir.lo perrmesg.lo procquery.lo+ +ptalloc.lo regex.lo stcopy.lo support.lo+ +vlalloc.lo vl_comp.lo +archie.unp +archie/map/noi/co/li/stack:45000 +lsocket lnetlib lconfig lpc llibce +$EOD +$! +$CREATE [.archie]archie.doc +$DECK + + + +ARCHIE(1) USER COMMANDS ARCHIE(1) + + + +NAME + archie - query the Archie anonymous FTP databases using + Prospero + +SYNOPSIS + archie [ -cers ] [ -l ] [ -t ] [ -m# ] [ -N# ] [ -h hostname ] + [ -L ] string + +DESCRIPTION + archie queries an archie anonymous FTP database looking for + the specified string using the Prospero protocol. This + client is based on Prospero version Beta.4.2 and is provided + to encourage non-interactive use of the Archie servers (and + subsequently better performance on both sides). This man + page describes version 1.3 of the client. + + The general method of use is of the form + + % archie string + + This will go to the archie server and ask it to look for all + known systems that have a file named `string' in their FTP + area. archie will wait, and print out any matches. + + For example, + + % archie emacs + + will find all anonymous FTP sites in the archie database + that have files named emacs somewhere in their FTP area. + (This particular query would probably return a lot of direc- + tories.) If you want a list of every filename that contains + emacs anywhere in it, you'd use + + % archie -c emacs + + Regular expressions, such as + + % archie -r '[xX][lL]isp' + + may also be used for searches. (See the manual of a reason- + ably good editor, like GNU Emacs or vi, for more information + on using regular expressions.) + + +OPTIONS + The options currently available to this archie client are: + + -c Search substrings paying attention to upper & + lower case. + -e Exact string match. (This is the default.) + -r Search using a regular expression. + + + +Archie (Prospero) Last change: 9 January 1992 1 + + + + + + +ARCHIE(1) USER COMMANDS ARCHIE(1) + + + + -s Search substrings ignoring the case of the + letters. + -l Output results in a form suitable for parsing by + programs. + -t Sort the results inverted by date. + -m# Specifies the maximum number of hits (matches) + to return (default of 95). + -N# Sets the niceness of a query; by default, it's + set to 0. Without an argument, ``-N'' defaults + to 35765. If you use -N with an argument + between 0 and 35765, it'll adjust itself accord- + ingly. (Note: VMS users will have to put quotes + around this argument, and -L, like "-N45"; VMS + will otherwise convert it to lowercase.) + -h hostname Tells the client to query the Archie server + hostname. + -L Lists the Archie servers known to the program + when it was compiled, as well as the name of the + default Archie server. For an up-to-date list, + write to ``archie@archie.mcgill.ca'' (or any + Archie server) with the single command of + servers. + + The three search-modifying arguments (``-c'', ``-r'', and + ``-s'') are all mutually exclusive; only the last one + counts. If you specify -e with any of ``-c'', ``-r'', or + ``-s'', the server will first check for an exact match, then + fall back to the case-sensitive, case-insensitive, or regu- + lar expression search. This is so if there are matches that + are particularly obvious, it will take a minimal amount of + time to satisfy your request. + + If you list a single `-' by itself, any further arguments + will be taken as part of the search string. This is + intended to enable searching for strings that begin with a + `-'; for example: + + % archie -s - -old + + will search for all filenames that contain the string `-old' + in them. + +RESPONSE + Archie servers are set up to respond to a number of requests + in a queued fashion. That is, smaller requests get served + much more quickly than do large requests. As a result, the + more often you query the Archie server, or the larger your + requests, the longer the queue will become, resulting in a + longer waiting period for everyone's requests. Please be + frugal when possible, for your benefit as well as for the + other users. + + + + +Archie (Prospero) Last change: 9 January 1992 2 + + + + + + +ARCHIE(1) USER COMMANDS ARCHIE(1) + + + +QUERY PRIORITY + Please use the ``-N'' option whenever you don't demand + immediacy, or when you're requesting things that could gen- + erate large responses. Even when using the nice option, you + should still try to avoid big jobs during busy periods. + Here is a list of what we consider to be nice values that + accurately reflect the priority of a job to the server. + + Normal 0 + Nice 500 + Nicer 1000 + Very Nice 5000 + Extremely Nice 10000 + Nicest 32765 + + The last priority, Nicest, would be used when a job should + wait until the queue is essentially empty before running. + You should pick one of these values to use, possibly modify- + ing it slightly depending on where you think your priority + should land. For example, 32760 would mean wait until the + queue is empty, but jump ahead of other jobs that have + selected Nicest. + + There are certain types of things that we suggest using + Nicest for, irregardless. In particular, any searches for + which you would have a hard time justifying the use of any- + thing but extra resources. (We all know what those searches + would be for.) + +ENVIRONMENT + ARCHIE_HOST + This will change the host archie will consult when + making queries. (The default value is what's been + compiled in.) The ``-h'' option will override this. + If you're running VMS, create a symbol called + ARCHIE_HOST. + +SEE ALSO + For more information on regular expressions, see the manual + pages on: + + regex(3), ed(1) + + Also read the file archie/doc/whatis.archie on + archie.mcgill.ca for a detailed paper on Archie as a whole. + +AUTHORS + The archie service was conceived and implemented by Alan + Emtage (bajan@cs.mcgill.ca), Peter Deutsch + (peterd@cs.mcgill.ca), and Bill Heelan + (wheelan@cs.mcgill.ca). The entire Internet is in their + debt. + + + +Archie (Prospero) Last change: 9 January 1992 3 + + + + + + +ARCHIE(1) USER COMMANDS ARCHIE(1) + + + + The Prospero system was created by Clifford Neuman + (bcn@isi.edu); write to info-prospero@isi.edu for more + information on the protocol and its use. + + This stripped client was put together by Brendan Kehoe + (brendan@cs.widener.edu), with modifications by Clifford + Neuman and George Ferguson (ferguson@cs.rochester.edu). + +BUGS + There are none; only a few unexpected features. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Archie (Prospero) Last change: 9 January 1992 4 + + + +$EOD +$! +$CREATE [.archie]archie.man +$DECK +.\" Originally by Jeff Kellem (composer@chem.bu.edu). +.\" +.\" This is from rn (1): +.de Ip +.br +.ie \\n.$>=3 .ne \\$3 +.el .ne 3 +.IP "\\$1" \\$2 +.. +.\" +.TH ARCHIE 1 "9 January 1992" "Archie (Prospero)" +.SH NAME +archie \- query the Archie anonymous FTP databases using Prospero +.SH SYNOPSIS +.in +\w'\fBarchie \fR'u +.ti -\w'\fBarchie \fR'u +.B archie\ +\ [\ \fB\-cers\fR\ ]\ +\ [\ \fB\-l\fR\ ]\ [\ \fB\-t\fR\ ]\ +\ [\ \fB\-m#\fR\ ]\ [\ \fB\-N#\fR\ ]\ +\ [\ \fB\-h\fR\ \fIhostname\fR\ ] +[\ \fB\-L\fR\ ]\ \fIstring\fR +.SH DESCRIPTION +.B archie +queries an archie anonymous FTP database looking for the specified +.I string +using the +.B Prospero +protocol. This client is based on +.B Prospero +version Beta.4.2 and is provided to encourage non-interactive use of +the Archie servers (and subsequently better performance on both +sides). This man page describes version 1.3 of the client. + +The general method of use is of the form + +.RS +% +.B archie string +.RE +.PP + +This will go to the archie server and ask it to look for all known +systems that have a file named `string' in their FTP area. \fBarchie\fP +will wait, and print out any matches. + +For example, + +.RS +% +.B archie emacs +.RE +.PP + +will find all anonymous FTP sites in the archie database that have files +named +.B emacs +somewhere in their FTP area. (This particular query would probably +return a lot of directories.) If you want a list of every filename +that contains \fBemacs\fR \fIanywhere\fR in it, you'd use + +.RS +% +.B archie -c emacs +.RE +.PP + +Regular expressions, such as + +.RS +% +.B archie -r '[xX][lL]isp' +.RE +.PP + +may also be used for searches. (See the manual of a reasonably good +editor, like GNU Emacs or vi, for more information on using regular +expressions.) + +.SH OPTIONS +The options currently available to this +.B archie +client are: + +.PD 0 +.TP 12 +.BR \-c +Search substrings paying attention to upper & lower case. +.TP +.BR \-e +Exact string match. (This is the default.) +.TP +.BR \-r +Search using a regular expression. +.TP +.BR \-s +Search substrings ignoring the case of the letters. +.TP +.BR \-l +Output results in a form suitable for parsing by programs. +.TP +.BR \-t +Sort the results inverted by date. +.TP +.BI \-m# +Specifies the maximum number of hits (matches) to return (default of +\fB95\fR). +.TP +.BI \-N# +Sets the \fIniceness\fR of a query; by default, it's set to 0. +Without an argument, ``\-N'' defaults to \fB35765\fR. If you use +\fB\-N\fR with an argument between 0 and 35765, it'll adjust itself +accordingly. (\fBNote\fR: VMS users will have to put quotes around +this argument, and \fB\-L\fR, like "\fB\-N45\fR"; VMS will otherwise convert +it to lowercase.) +.TP +.BI \-h\ \fIhostname\fR +Tells the client to query the Archie server \fIhostname\fR. +.TP +.BI \-L +Lists the Archie servers known to the program when it was compiled, as +well as the name of the default Archie server. For an up-to-date +list, write to ``archie@archie.mcgill.ca'' (or any Archie server) with +the single command of \fIservers\fR. + +.PP +The three search-modifying arguments (``\-c'', ``\-r'', and ``\-s'') +are all mutually exclusive; only the last one counts. If you specify +\fB\-e\fR with any of ``\-c'', ``\-r'', or ``\-s'', +the server will first check for an exact match, then fall back to the +case-sensitive, case-insensitive, or regular expression search. This is +so if there are matches that are particularly obvious, it will take a +minimal amount of time to satisfy your request. + +If you list a single `\-' by itself, any further arguments will be +taken as part of the search string. This is intended to enable +searching for strings that begin with a `\-'; for example: + +.RS +% +.B archie \-s \- \-old +.RE + +will search for all filenames that contain the string `\-old' in them. + +.SH RESPONSE +Archie servers are set up to respond to a number of requests in a +queued fashion. That is, smaller requests get served much more +quickly than do large requests. As a result, the more often you query +the Archie server, or the larger your requests, the longer the queue +will become, resulting in a longer waiting period for everyone's +requests. Please be frugal when possible, for your benefit as well as +for the other users. + +.SH QUERY PRIORITY +Please use the ``-N'' option whenever you don't demand immediacy, or +when you're requesting things that could generate large responses. +Even when using the nice option, you should still try to avoid big +jobs during busy periods. Here is a list of what we consider to be +nice values that accurately reflect the priority of a job to the server. + +.RS +.TP 20 +.B Normal +0 +.TP +.B Nice +500 +.TP +.B Nicer +1000 +.TP +.B Very Nice +5000 +.TP +.B Extremely Nice +10000 +.TP +.B Nicest +32765 +.RE + +The last priority, \fBNicest\fR, would be used when a job should wait until +the queue is essentially empty before running. You should pick one of +these values to use, possibly modifying it slightly depending on where +you think your priority should land. For example, 32760 would mean +wait until the queue is empty, but jump ahead of other jobs that have +selected \fBNicest\fR. + +There are certain types of things that we suggest using \fBNicest\fR +for, irregardless. In particular, any searches for which you would +have a hard time justifying the use of anything but extra resources. +(We all know what those searches would be for.) + +.SH ENVIRONMENT +.Ip "ARCHIE_HOST" 8 +This will change the host +.IR archie +will consult when making queries. (The default value is what's been +compiled in.) The ``\-h'' option will override this. If you're +running VMS, create a symbol called ARCHIE_HOST. + +.SH SEE ALSO +For more information on regular expressions, see the manual pages on: + +.BR regex (3) , +.BR ed (1) + +Also read the file \fBarchie/doc/whatis.archie\fR on +\fBarchie.mcgill.ca\fR for a detailed paper on Archie as a whole. + +.SH AUTHORS +The +.B archie +service was conceived and implemented by Alan Emtage (\fBbajan@cs.mcgill.ca\fR), +Peter Deutsch (\fBpeterd@cs.mcgill.ca\fR), and Bill Heelan +(\fBwheelan@cs.mcgill.ca\fR). The entire Internet is in their debt. + +The \fBProspero\fR system was created by Clifford Neuman +(\fBbcn@isi.edu\fR); write to \fBinfo\-prospero@isi.edu\fR for more +information on the protocol and its use. + +This stripped client was put together by Brendan Kehoe +(\fBbrendan@cs.widener.edu\fR), with modifications by +Clifford Neuman and George Ferguson (\fBferguson@cs.rochester.edu\fR). + +.SH BUGS +There are none; only a few unexpected features. + +$EOD +$! +$CREATE [.archie]aquery.c +$DECK +/* + * aquery.c : Programmatic Prospero interface to Archie + * + * Copyright (c) 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + * + * Originally part of the Prospero Archie client by Clifford + * Neuman (bcn@isi.edu). Modifications, addition of programmatic interface, + * and new sorting code by George Ferguson (ferguson@cs.rochester.edu) + * and Brendan Kehoe (brendan@cs.widener.edu). MSDOS and OS2 modifications + * to use with PC/TCP by Mark Towfiq (towfiq@FTP.COM). + */ + +#include + +#include + +#include +#include +#include + +#include +#ifdef NEED_STRING_H +# include /* for char *index() */ +#else +# include /* for char *index() */ +#endif + +static void translateArchieResponse(); + +extern int pwarn; +extern char p_warn_string[]; + +/* + * archie_query : Sends a request to _host_, telling it to search for + * _string_ using _query_type_ as the search method. + * No more than _max_hits_ matches are to be returned + * skipping over _offset_ matches. + * + * archie_query returns a linked list of virtual links. + * If _flags_ does not include AQ_NOTRANS, then the Archie + * responses will be translated. If _flags_ does not include + * AQ_NOSORT, then the list will be sorted using _cmp_proc_ to + * compare pairs of links. If _cmp_proc_ is NULL or AQ_DEFCMP, + * then the default comparison procedure, defcmplink(), is used + * sorting by host, then filename. If cmp_proc is AQ_INVDATECMP + * then invdatecmplink() is used, sorting inverted by date. + * otherwise a user-defined comparison procedure is called. + * + * archie_query returns NULL and sets perrno if the query + * failed. Note that it can return NULL with perrno == PSUCCESS + * if the query didn't fail but there were simply no matches. + * + * query_type: S Substring search ignoring case + * C Substring search with case significant + * R Regular expression search + * = Exact String Match + * s,c,e Tries exact match first and falls back to S, C, or R + * if not found. + * + * cmp_proc: AQ_DEFCMP Sort by host, then filename + * AQ_INVDATECMP Sort inverted by date + * + * flags: AQ_NOSORT Don't sort results + * AQ_NOTRANS Don't translate results + */ +VLINK +archie_query(host,string,max_hits,offset,query_type,cmp_proc,flags) + char *host,*string; + int max_hits,offset; + char query_type; + int (*cmp_proc)(); + int flags; + { + char qstring[MAX_VPATH]; /* For construting the query */ + VLINK links; /* Matches returned by server */ + VDIR_ST dir_st; /* Filled in by get_vdir */ + PVDIR dir= &dir_st; + + VLINK p,q,r,lowest,nextp,pnext,pprev; + int tmp; + + /* Set the cmp_proc if not given */ + if (cmp_proc == NULL) cmp_proc = defcmplink; + + /* Make the query string */ + sprintf(qstring,"ARCHIE/MATCH(%d,%d,%c)/%s", + max_hits,offset,query_type,string); + + /* Initialize Prospero structures */ + perrno = PSUCCESS; *p_err_string = '\0'; + pwarn = PNOWARN; *p_warn_string = '\0'; + vdir_init(dir); + + /* Retrieve the list of matches, return error if there was one */ +#if defined(MSDOS) + if(tmp = get_vdir(host, qstring, "", dir, (long)GVD_ATTRIB|GVD_NOSORT, + NULL, NULL)) { +#else + if(tmp = get_vdir(host,qstring,"",dir,GVD_ATTRIB|GVD_NOSORT,NULL,NULL)) { +# endif + perrno = tmp; + return(NULL); + } + + /* Save the links, and clear in dir in case it's used again */ + links = dir->links; dir->links = NULL; + + /* As returned, list is sorted by suffix, and conflicting */ + /* suffixes appear on a list of "replicas". We want to */ + /* create a one-dimensional list sorted by host then filename */ + /* and maybe by some other parameter */ + + /* First flatten the doubly-linked list */ + for (p = links; p != NULL; p = nextp) { + nextp = p->next; + if (p->replicas != NULL) { + p->next = p->replicas; + p->next->previous = p; + for (r = p->replicas; r->next != NULL; r = r->next) + /*EMPTY*/ ; + r->next = nextp; + nextp->previous = r; + p->replicas = NULL; + } + } + + /* Translate the filenames unless NOTRANS was given */ + if (!(flags & AQ_NOTRANS)) + for (p = links; p != NULL; p = p->next) + translateArchieResponse(p); + + /* If NOSORT given, then just hand it back */ + if (flags & AQ_NOSORT) { + perrno = PSUCCESS; + return(links); + } + + /* Otherwise sort it using a selection sort and the given cmp_proc */ + for (p = links; p != NULL; p = nextp) { + nextp = p->next; + lowest = p; + for (q = p->next; q != NULL; q = q->next) + if ((*cmp_proc)(q,lowest) < 0) + lowest = q; + if (p != lowest) { + /* swap the two links */ + pnext = p->next; + pprev = p->previous; + if (lowest->next != NULL) + lowest->next->previous = p; + p->next = lowest->next; + if (nextp == lowest) { + p->previous = lowest; + } else { + lowest->previous->next = p; + p->previous = lowest->previous; + } + if (nextp == lowest) { + lowest->next = p; + } else { + pnext->previous = lowest; + lowest->next = pnext; + } + if (pprev != NULL) + pprev->next = lowest; + lowest->previous = pprev; + /* keep the head of the list in the right place */ + if (links == p) + links = lowest; + } + } + + /* Return the links */ + perrno = PSUCCESS; + return(links); + } + +/* + * translateArchieResponse: + * + * If the given link is for an archie-pseudo directory, fix it. + * This is called unless AQ_NOTRANS was given to archie_query(). + */ +static void +translateArchieResponse(l) + VLINK l; + { + char *slash; + + if (strcmp(l->type,"DIRECTORY") == 0) { + if (strncmp(l->filename,"ARCHIE/HOST",11) == 0) { + l->type = stcopyr("EXTERNAL(AFTP,DIRECTORY)",l->type); + l->host = stcopyr(l->filename+12,l->host); + slash = (char *)index(l->host,'/'); + if (slash) { + l->filename = stcopyr(slash,l->filename); + *slash++ = '\0'; + } else + l->filename = stcopyr("",l->filename); + } + } + } + +/* + * defcmplink: The default link comparison function for sorting. Compares + * links p and q first by host then by filename. Returns < 0 if p + * belongs before q, > 0 if p belongs after q, and == 0 if their + * host and filename fields are identical. + */ +int +defcmplink(p,q) + VLINK p,q; + { + int result; + + if ((result=strcmp(p->host,q->host)) != 0) + return(result); + else + return(strcmp(p->filename,q->filename)); + } + +/* + * invdatecmplink: An alternative comparison function for sorting that + * compares links p and q first by LAST-MODIFIED date, + * if they both have that attribute. If both links + * don't have that attribute or the dates are the + * same, it then calls defcmplink() and returns its + * value. + */ +int +invdatecmplink(p,q) + VLINK p,q; + { + PATTRIB pat,qat; + char *pdate,*qdate; + int result; + + pdate = qdate = NULL; + for (pat = p->lattrib; pat; pat = pat->next) + if(strcmp(pat->aname,"LAST-MODIFIED") == 0) + pdate = pat->value.ascii; + for (qat = q->lattrib; qat; qat = qat->next) + if(strcmp(qat->aname,"LAST-MODIFIED") == 0) + qdate = qat->value.ascii; + if(!pdate && !qdate) return(defcmplink(p,q)); + if(!pdate) return(1); + if(!qdate) return(-1); + if((result=strcmp(qdate,pdate)) == 0) return(defcmplink(p,q)); + else return(result); + } +$EOD +$! +$CREATE [.archie]atalloc.c +$DECK +/* + * Copyright (c) 1989, 1990 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include +#include + +#include +#include /* for correct definition of ZERO */ + +static PATTRIB lfree = NULL; +int pattrib_count = 0; +int pattrib_max = 0; + +/* + * atalloc - allocate and initialize vlink structure + * + * ATALLOC returns a pointer to an initialized structure of type + * PATTRIB. If it is unable to allocate such a structure, it + * returns NULL. + */ +PATTRIB +atalloc() + { + PATTRIB at; + if(lfree) { + at = lfree; + lfree = lfree->next; + } + else { + at = (PATTRIB) malloc(sizeof(PATTRIB_ST)); + if (!at) return(NULL); + pattrib_max++; + } + + pattrib_count++; + + ZERO(at); + /* Initialize and fill in default values; all items are + 0 [or NULL] save precedence */ + at->precedence = ATR_PREC_OBJECT; + + return(at); + } + +/* + * atfree - free a PATTRIB structure + * + * ATFREE takes a pointer to a PATTRRIB structure and adds it to + * the free list for later reuse. + */ +void +atfree(at) + PATTRIB at; + { + if(at->aname) stfree(at->aname); + + if((strcmp(at->avtype,"ASCII") == 0) && at->value.ascii) + stfree(at->value.ascii); + if((strcmp(at->avtype,"LINK") == 0) && at->value.link) + vlfree(at->value.link); + + if(at->avtype) stfree(at->avtype); + + at->next = lfree; + at->previous = NULL; + lfree = at; + pattrib_count--; + } + +/* + * atlfree - free a PATTRIB structure + * + * ATLFREE takes a pointer to a PATTRIB structure frees it and any linked + * PATTRIB structures. It is used to free an entrie list of PATTRIB + * structures. + */ +void +atlfree(at) + PATTRIB at; + { + PATTRIB nxt; + + while(at != NULL) { + nxt = at->next; + atfree(at); + at = nxt; + } + } + +$EOD +$! +$CREATE [.archie]dirsend.c +$DECK +/* + * Copyright (c) 1989, 1990, 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +/* If you're going to hack on this, I'd suggest using unifdef with -UCUTCP + and possibly -UVMS, for your working copy. When you've got your changes + done, come back and add them into this main file. It's getting pretty + nasty down there. */ + +#include +#include +#include + +#ifdef VMS +# ifdef WOLLONGONG +# include "twg$tcp:[netdist.include]netdb.h" +# else /* not Wollongong */ +# ifdef UCX +# include netdb +# else /* Multinet */ +# include "multinet_root:[multinet.include]netdb.h" +# endif +# endif +# include +#else /* not VMS */ +# include /* this may/will define FD_SET etc */ +# ifdef u3b2 +# include /* THIS does FD_SET etc on AT&T 3b2s. */ +# endif /* u3b2 */ +# include +# if defined(NEED_TIME_H) && !defined(AUX) +# include +# else +# include +# endif +# ifdef WANT_BOTH_TIME +# include +# endif +# ifdef NEED_STRING_H +# include +# else +# include +# endif +# ifdef CUTCP +# include +# include +# include +# else /* not CUTCP */ +# include +# include +# endif +# ifdef NEED_SELECT_H +# include +# endif /* NEED_SELECT_H */ +# ifndef IN_H +# include +# define IN_H +# endif +# ifndef hpux +# include +# endif +#endif /* !VMS */ + +/* Interactive UNIX keeps some of the socket definitions in funny places. */ +#ifdef ISC +# include +#endif /* ISC */ + +#include +#include +#include +#include + +/* Gnu C currently fails to pass structures on Sparcs properly. This directly + effects the calling of inet_ntoa(). To get around it, we use this hack; + take the address of what's being called to inet_ntoa, so it gets it + properly. This won't be necessary with gcc 2.0. */ +#if defined(sun) && defined(__GNUC__) && !defined(__GNU_LIBRARY__) +# define SUN_GNU_FIX & +#else +# define SUN_GNU_FIX +#endif + +static int notprived = 0; +#ifndef MSDOS +extern int errno; +#endif +extern int perrno; +extern int rdgram_priority; +#ifdef DEBUG +extern int pfs_debug; +#endif +extern int pfs_disable_flag; + +char *nlsindex(); + +#define max(X, Y) ((X) > (Y) ? (X) : (Y)) + +static int dir_udp_port = 0; /* Remote UDP port number */ + +#ifdef CUTCP +# define NS_TIMEOUT 15 +#endif + +static unsigned short next_conn_id = 0; + +static int client_dirsrv_timeout = CLIENT_DIRSRV_TIMEOUT; +static int client_dirsrv_retry = CLIENT_DIRSRV_RETRY; + +/* These were parameters to dirsend() */ +static PTEXT pkt; +static char *hostname; +static struct sockaddr_in *hostaddr; + +/* These were locals in dirsend(). Note that the initializations here + * are really meaningless since we have to redo them for each call to + * dirsend() since they were formerly automatically initialized. + */ +static PTEXT first = NULL; /* First returned packet */ +static PTEXT next; /* The one we are waiting for */ +static PTEXT vtmp; /* For reorganizing linked list */ +static PTEXT comp_thru; /* We have all packets though */ +static int lp = -1; /* Opened UDP port */ +static int hdr_len; /* Header Length */ +static int nd_pkts; /* Number of packets we want */ +static int no_pkts; /* Number of packets we have */ +static int pkt_cid; /* Packet connection identifier */ +static unsigned short this_conn_id; /* Connection ID we are using */ +static unsigned short recvd_thru; /* Received through */ +static short priority; /* Priority for request */ +static short one = 0; /* Pointer to value 1 */ +static short zero = 0; /* Pointer to value 0 */ +static char *seqtxt; /* Pointer to text w/ sequence # */ +static struct sockaddr_in us; /* Our address */ +static struct sockaddr_in to; /* Address to send query */ +static struct sockaddr_in from; /* Reply received from */ +static int from_sz; /* Size of from structure */ +static struct hostent *host; /* Host info from gethostbyname */ +static long newhostaddr; /* New host address from *host */ +static int req_udp_port=0; /* Requested port (optional) */ +static char *openparen; /* Delimits port in name */ +static char hostnoport[500];/* Host name without port */ +static int ns; /* Number of bytes actually sent */ +static int nr; /* Number of bytes received */ +static SELECTARG readfds; /* Used for select */ +static int tmp; +static char *ctlptr; /* Pointer to control field */ +static short stmp; /* Temp short for conversions */ +static int backoff; /* Server requested backoff */ +static unsigned char rdflag11; /* First byte of flags (bit vect)*/ +static unsigned char rdflag12; /* Second byte of flags (int) */ +static int scpflag = 0; /* Set if any sequencd cont pkts */ +static int ackpend = 0; /* Acknowledgement pending */ +static int gaps = 0; /* Gaps present in recvd pkts */ +static struct timeval timeout; /* Time to wait for response */ +static struct timeval ackwait; /* Time to wait before acking */ +static struct timeval gapwait; /* Time to wait b4 filling gaps */ +static struct timeval *selwait; /* Time to wait for select */ +static int retries; /* was = client_dirsrv_retry */ +char to_hostname[512]; /* lmjm: saves inet_ntoa() str */ + +/* These are added so dirsend() "blocks" properly */ +static PTEXT dirsendReturn; +static int dirsendDone; + +/* And here are the values for dirsendDone */ +#define DSRET_DONE 1 +#define DSRET_SEND_ERROR -1 +#define DSRET_RECV_ERROR -2 +#define DSRET_SELECT_ERROR -3 +#define DSRET_TIMEOUT -4 +#define DSRET_ABORTED -5 + +/* New procedures to break up dirsend() */ +static int initDirsend(); +static void retryDirsend(), keepWaitingDirsend(); +static void timeoutProc(); +static void readProc(); + +/* Wrappers around X calls to allow non-X usage */ +static void processEvent(); + +/* Extra stuff for the asynchronous X version of dirsend() */ +typedef char *XtPointer; +typedef char *XtInputId; +typedef char *XtIntervalId; + +static XtInputId inputId; +static XtIntervalId timerId = (XtIntervalId)0; + +/* + * dirsend - send packet and receive response + * + * DIRSEND takes a pointer to a structure of type PTEXT, a hostname, + * and a pointer to a host address. It then sends the supplied + * packet off to the directory server on the specified host. If + * hostaddr points to a valid address, that address is used. Otherwise, + * the hostname is looked up to obtain the address. If hostaddr is a + * non-null pointer to a 0 address, then the address will be replaced + * with that found in the hostname lookup. + * + * DIRSEND will wait for a response and retry an appropriate + * number of times as defined by timeout and retries (both static + * variables). It will collect however many packets form the reply, and + * return them in a structure (or structures) of type PTEXT. + * + * DIRSEND will free the packet that it is presented as an argument. + * The packet is freed even if dirsend fails. + */ +PTEXT +dirsend(pkt_p,hostname_p,hostaddr_p) + PTEXT pkt_p; + char *hostname_p; + struct sockaddr_in *hostaddr_p; +{ + /* copy parameters to globals since other routines use them */ + pkt = pkt_p; + hostname = hostname_p; + hostaddr = hostaddr_p; + /* Do the initializations of formerly auto variables */ + first = NULL; + lp = -1; + one = 0; + zero = 0; + req_udp_port=0; + scpflag = 0; + ackpend = 0; + gaps = 0; + retries = client_dirsrv_retry; + + if (initDirsend() < 0) + return(NULL); + + /* set the first timeout */ + retryDirsend(); + + dirsendReturn = NULL; + dirsendDone = 0; + /* Until one of the callbacks says to return, keep processing events */ + while (!dirsendDone) + processEvent(); + + /* Return whatever we're supposed to */ + return(dirsendReturn); +} + + +/* - - - - - - - - */ +/* This function does all the initialization that used to be done at the + * start of dirsend(), including opening the socket descriptor "lp". It + * returns the descriptor if successful, otherwise -1 to indicate that + * dirsend() should return NULL immediately. + */ +static int +initDirsend() +{ + if(one == 0) one = htons((short) 1); + + priority = htons(rdgram_priority); + + timeout.tv_sec = client_dirsrv_timeout; + timeout.tv_usec = 0; + + ackwait.tv_sec = 0; + ackwait.tv_usec = 500000; + + gapwait.tv_sec = (client_dirsrv_timeout < 5 ? client_dirsrv_timeout : 5); + gapwait.tv_usec = 0; + + comp_thru = NULL; + perrno = 0; + nd_pkts = 0; + no_pkts = 0; + pkt_cid = 0; + + /* Find first connection ID */ + if(next_conn_id == 0) { + srand(getpid()+time(0)); /* XXX: arg ok, but not right type. */ + next_conn_id = rand(); + } + + + /* If necessary, find out what udp port to send to */ + if (dir_udp_port == 0) { + register struct servent *sp; + tmp = pfs_enable; pfs_enable = PMAP_DISABLE; +#ifdef USE_ASSIGNED_PORT + /* UCX needs 0 & -1 */ + if ((sp = getservbyname("prospero","udp")) <= 0) { +#ifdef DEBUG + if (pfs_debug) + fprintf(stderr, "dirsrv: udp/prospero unknown service - using %d\n", + PROSPERO_PORT); +#endif + dir_udp_port = htons((u_short) PROSPERO_PORT); + } +#else + /* UCX needs 0 & -1 */ + sp = getservbyname("dirsrv","udp"); + if (sp == (struct servent *)0 || sp == (struct servent *)-1) { +#ifdef DEBUG + if (pfs_debug) + fprintf(stderr, "dirsrv: udp/dirsrv unknown service - using %d\n", + DIRSRV_PORT); +#endif + dir_udp_port = htons((u_short) DIRSRV_PORT); + } +#endif + else dir_udp_port = sp->s_port; + pfs_enable = tmp; +#ifdef DEBUG + if (pfs_debug > 3) + fprintf(stderr,"dir_udp_port is %d\n", ntohs(dir_udp_port)); +#endif + } + + /* If we were given the host address, then use it. Otherwise */ + /* lookup the hostname. If we were passed a host address of */ + /* 0, we must lookup the host name, then replace the old value */ + if(!hostaddr || (hostaddr->sin_addr.s_addr == 0)) { + /* I we have a null host name, return an error */ + if((hostname == NULL) || (*hostname == '\0')) { +#ifdef DEBUG + if (pfs_debug) + fprintf(stderr, "dirsrv: Null hostname specified\n"); +#endif + perrno = DIRSEND_BAD_HOSTNAME; + ptlfree(pkt); + /* return(NULL); */ + return(-1); + } + /* If a port is included, save it away */ + if(openparen = index(hostname,'(')) { + sscanf(openparen+1,"%d",&req_udp_port); + strncpy(hostnoport,hostname,400); + if((openparen - hostname) < 400) { + *(hostnoport + (openparen - hostname)) = '\0'; + hostname = hostnoport; + } + } + tmp = pfs_enable; pfs_enable = PMAP_DISABLE; + if((host = gethostbyname(hostname)) == NULL) { + pfs_enable = tmp; + /* Check if a numeric address */ + newhostaddr = inet_addr(hostname); + if(newhostaddr == -1) { +#ifdef DEBUG + if (pfs_debug) + fprintf(stderr, "dirsrv: Can't resolve host %s\n",hostname); +#endif + perrno = DIRSEND_BAD_HOSTNAME; + ptlfree(pkt); + /* return(NULL); */ + return(-1); + } + bzero((char *)&to, S_AD_SZ); + to.sin_family = AF_INET; + bcopy((char *) &newhostaddr, (char *)&to.sin_addr, 4); + if(hostaddr) bcopy(&to,hostaddr, S_AD_SZ); + } + else { + pfs_enable = tmp; + bzero((char *)&to, S_AD_SZ); + to.sin_family = host->h_addrtype; +#ifdef CUTCP + bcopy((char *) &host->h_addr, (char *)&to.sin_addr, host->h_length); +#else + bcopy(host->h_addr, (char *)&to.sin_addr, host->h_length); +#endif + if(hostaddr) bcopy(&to,hostaddr, S_AD_SZ); + } + } + else bcopy(hostaddr,&to, S_AD_SZ); + /* lmjm: Save away the hostname */ + strncpy(to_hostname, + inet_ntoa(SUN_GNU_FIX *(struct in_addr *)&to.sin_addr), + sizeof(to_hostname)-1); + + if(req_udp_port) to.sin_port = htons(req_udp_port); + else to.sin_port = dir_udp_port; + + /* If a port was specified in hostaddr, use it, otherwise fill it in */ + if(hostaddr) { + if(hostaddr->sin_port) to.sin_port = hostaddr->sin_port; + else hostaddr->sin_port = to.sin_port; + } + +#ifndef CUTCP + /* Must open a new port each time. we do not want to see old */ + /* responses to messages we are done with */ + if ((lp = socket(AF_INET, SOCK_DGRAM, 0)) < 0) { +#ifdef DEBUG + if (pfs_debug) + fprintf(stderr,"dirsrv: Can't open socket\n"); +#endif + perrno = DIRSEND_UDP_CANT; + ptlfree(pkt); + /* return(NULL); */ + return(-1); + } +#endif /* not CUTCP */ + + /* Try to bind it to a privileged port - loop through candidate */ + /* ports trying to bind. If failed, that's OK, we will let the */ + /* system assign a non-privileged port later */ +#ifndef CUTCP + if(!notprived) { + for(tmp = PROS_FIRST_PRIVP; tmp < PROS_FIRST_PRIVP+PROS_NUM_PRIVP; + tmp++) { +#endif + bzero((char *)&us, sizeof(us)); + us.sin_family = AF_INET; +#ifndef CUTCP + us.sin_port = htons((u_short) tmp); + if (bind(lp, (struct sockaddr *)&us, sizeof(us))) { + if(errno != EADDRINUSE) { + notprived++; + break; + } + } + else break; + } + } +#else + us.sin_port = htons(PROS_FIRST_PRIVP); + netulisten(PROS_FIRST_PRIVP); +#endif + +#ifndef USE_V3_PROT + /* Add header */ + if(rdgram_priority) { + pkt->start -= 15; + pkt->length += 15; + *(pkt->start) = (char) 15; + bzero(pkt->start+9,4); + *(pkt->start+11) = 0x02; + bcopy(&priority,pkt->start+13,2); + } + else { + pkt->start -= 9; + pkt->length += 9; + *(pkt->start) = (char) 9; + } + this_conn_id = htons(next_conn_id++); + if(next_conn_id == 0) next_conn_id++; + bcopy(&this_conn_id,pkt->start+1,2); + bcopy(&one,pkt->start+3,2); + bcopy(&one,pkt->start+5,2); + bzero(pkt->start+7,2); +#endif + +#ifdef DEBUG + if (pfs_debug > 2) { +#ifndef USE_V3_PROT + if (to.sin_family == AF_INET) { + if(req_udp_port) + fprintf(stderr,"Sending message to %s+%d(%d)...", + to_hostname, req_udp_port, ntohs(this_conn_id)); + else fprintf(stderr,"Sending message to %s(%d)...", + to_hostname, ntohs(this_conn_id)); + } +#else + if (to.sin_family == AF_INET) + fprintf(stderr,"Sending message to %s...", to_hostname); +#endif /* USE_V3_PROT */ + else + fprintf(stderr,"Sending message..."); + (void) fflush(stderr); + } +#endif /* DEBUG */ + + first = ptalloc(); + next = first; + +#ifndef CUTCP + return(lp); +#else + return(1); +#endif /* CUTCP */ +} + +/* - - - - - - - - */ +/* + * This used to be a label to goto to retry the last packet. Now we resend + * the packet and call keepWaitingDirsend() to wait for a reply. (We + * call keepWaitingDirsend() because formerly the code dropped through + * the keep_waiting label.) + */ +static void +retryDirsend() +{ +#ifdef CUTCP + int lretry = 3; +#endif + gaps = ackpend = 0; + +#ifndef CUTCP + ns = sendto(lp,(char *)(pkt->start), pkt->length, 0, (struct sockaddr *)&to, S_AD_SZ); +#else + while(--lretry) { + ns = netusend(&to.sin_addr,ntohs(to.sin_port),ntohs(us.sin_port), + (char *) pkt->start, pkt->length); + if(!ns) + break; + Stask(); + Stask(); + Stask(); + } +#endif /* CUTCP */ + +#ifndef CUTCP + if(ns != pkt->length) { +#else + if(ns != 0) { +#endif +#ifdef DEBUG + if (pfs_debug) { + fprintf(stderr,"\nsent only %d/%d: ",ns, pkt->length); + perror(""); + } +#endif + close(lp); + perrno = DIRSEND_NOT_ALL_SENT; + ptlfree(first); + ptlfree(pkt); + /* return(NULL); */ + dirsendReturn = NULL; + dirsendDone = DSRET_SEND_ERROR; + } +#ifdef DEBUG + if (pfs_debug > 2) fprintf(stderr,"Sent.\n"); +#endif + keepWaitingDirsend(); +} + +/* - - - - - - - - */ +/* + * This used to be a label to goto to set the appropriate timeout value + * and blocked in select(). Now we set selwait and the SELECTARGs to the + * appropriate values, and in X register a new timeout, then return to + * allow event processing. + */ +static void +keepWaitingDirsend() +{ + /* We come back to this point (by a goto) if the packet */ + /* received is only part of the response, or if the */ + /* response came from the wrong host */ + +#ifdef DEBUG + if (pfs_debug > 2) fprintf(stderr,"Waiting for reply..."); +#endif + +#ifndef CUTCP + FD_ZERO(&readfds); + FD_SET(lp, &readfds); +#endif + + if(ackpend) selwait = &ackwait; + else if(gaps) selwait = &gapwait; + else selwait = &timeout; +} + +/* - - - - - - - - */ +/* + * This routine is called when a timeout occurs. It includes the code that + * was formerly used when select() returned 0 (indicating a timeout). + */ +/*ARGSUSED*/ +static void +timeoutProc(client_data,id) +XtPointer client_data; +XtIntervalId *id; +{ + if (gaps || ackpend) { /* Send acknowledgment */ + /* Acks are piggybacked on retries - If we have received */ + /* an ack from the server, then the packet sent is only */ + /* an ack and the rest of the message will be empty */ +#ifdef DEBUG + if (pfs_debug > 2) { + fprintf(stderr,"Acknowledging (%s).\n", + (ackpend ? "requested" : "gaps")); + } +#endif + retryDirsend(); + return; + } + + if (retries-- > 0) { + timeout.tv_sec = CLIENT_DIRSRV_BACKOFF(timeout.tv_sec); +#ifdef DEBUG + if (pfs_debug > 2) { + fprintf(stderr,"Timed out. Setting timeout to %d seconds.\n", + timeout.tv_sec); + } +#endif + retryDirsend(); + return; + } + +#ifdef DEBUG + if (pfs_debug) { + fprintf(stderr, "select failed(timeoutProc): readfds=%x ", + readfds); + perror(""); + } +#endif +#ifndef CUTCP + close(lp); +#endif + perrno = DIRSEND_SELECT_FAILED; + ptlfree(first); + ptlfree(pkt); + /* return(NULL); */ + dirsendReturn = NULL; + dirsendDone = DSRET_TIMEOUT; +} + +/* - - - - - - - - */ +/* + * This function is called whenever there's something to read on the + * connection. It includes the code that was run when select() returned + * greater than 0 (indicating read ready). + */ +/*ARGSUSED*/ +static void +readProc(client_data,source,id) +XtPointer client_data; +int *source; +XtInputId *id; +{ +#ifdef CUTCP + int lretry = 3; +#endif + + from_sz = sizeof(from); + next->start = next->dat; + +#ifndef CUTCP + if ((nr = recvfrom(lp, next->start, sizeof(next->dat), 0, (struct sockaddr *)&from, &from_sz)) < 0) { +#else + nr = neturead(next->start); + if (nr < 1) { +#endif +#ifdef DEBUG + if (pfs_debug) perror("recvfrom"); +#endif +#ifndef CUTCP + close(lp); +#endif + perrno = DIRSEND_BAD_RECV; + ptlfree(first); + ptlfree(pkt); + /* return(NULL) */ + dirsendReturn = NULL; + dirsendDone = DSRET_RECV_ERROR; + return; + } + + next->length = nr; + next->start[next->length] = 0; + +#ifdef DEBUG + if (pfs_debug > 2) + fprintf(stderr,"Received packet from %s\n", + inet_ntoa(SUN_GNU_FIX *(struct in_addr *)&from.sin_addr)); +#endif + + + /* For the current format, if the first byte is less than */ + /* 20, then the first two bits are a version number and the next six */ + /* are the header length (including the first byte). */ + if((hdr_len = (unsigned char) *(next->start)) < 20) { + ctlptr = next->start + 1; + next->seq = 0; + if(hdr_len >= 3) { /* Connection ID */ + bcopy(ctlptr,&stmp,2); + if(stmp) pkt_cid = ntohs(stmp); + ctlptr += 2; + } + if(pkt_cid && this_conn_id && (pkt_cid != ntohs(this_conn_id))) { + /* The packet is not for us */ + /* goto keep_waiting; */ + keepWaitingDirsend(); + return; + } + if(hdr_len >= 5) { /* Packet number */ + bcopy(ctlptr,&stmp,2); + next->seq = ntohs(stmp); + ctlptr += 2; + } + else { /* No packet number specified, so this is the only one */ + next->seq = 1; + nd_pkts = 1; + } + if(hdr_len >= 7) { /* Total number of packets */ + bcopy(ctlptr,&stmp,2); /* 0 means don't know */ + if(stmp) nd_pkts = ntohs(stmp); + ctlptr += 2; + } + if(hdr_len >= 9) { /* Receievd through */ + bcopy(ctlptr,&stmp,2); /* 1 means received request */ +#ifndef USE_V3_PROT + if((stmp) && (ntohs(stmp) == 1)) { + /* Future retries will be acks only */ + pkt->length = 9; + bcopy(&zero,pkt->start+3,2); +#ifdef DEBUG + if(pfs_debug > 2) + fprintf(stderr,"Server acked request - retries will be acks only\n"); +#endif + } +#endif + ctlptr += 2; + } + if(hdr_len >= 11) { /* Backoff */ + bcopy(ctlptr,&stmp,2); + if(stmp) { + backoff = ntohs(stmp); +#ifdef DEBUG + if(pfs_debug > 2) + fprintf(stderr,"Backing off to %d seconds\n", backoff); +#endif + timeout.tv_sec = backoff; + if ((backoff > 60) && (first == next) && (no_pkts == 0)) { + /* Probably a long queue on the server - don't give up */ + retries = client_dirsrv_retry; + } + } + ctlptr += 2; + } + if(hdr_len >= 12) { /* Flags (1st byte) */ + bcopy(ctlptr,&rdflag11,1); + if(rdflag11 & 0x80) { +#ifdef DEBUG + if(pfs_debug > 2) + fprintf(stderr,"Ack requested\n"); +#endif + ackpend++; + } + if(rdflag11 & 0x40) { +#ifdef DEBUG + if(pfs_debug > 2) + fprintf(stderr,"Sequenced control packet\n"); +#endif + next->length = -1; + scpflag++; + } + ctlptr += 1; + } + if(hdr_len >= 13) { /* Flags (2nd byte) */ + /* Reserved for future use */ + bcopy(ctlptr,&rdflag12,1); + ctlptr += 1; + } + if(next->seq == 0) { + /* goto keep_waiting; */ + keepWaitingDirsend(); + return; + } + if(next->length >= 0) next->length -= hdr_len; + next->start += hdr_len; + goto done_old; + } + + pkt_cid = 0; + + /* if intermediate format (between old and new), then process */ + /* and go to done_old */ + ctlptr = next->start + max(0,next->length-20); + while(*ctlptr) ctlptr++; + /* Control fields start after the terminating null */ + ctlptr++; + /* Until old version are gone, must be 4 extra bytes minimum */ + /* When no version 3 servers, can remove the -4 */ + if(ctlptr < (next->start + next->length - 4)) { + /* Connection ID */ + bcopy(ctlptr,&stmp,2); + if(stmp) pkt_cid = ntohs(stmp); + ctlptr += 2; + if(pkt_cid && this_conn_id && (pkt_cid != ntohs(this_conn_id))) { + /* The packet is not for us */ + /* goto keep_waiting; */ + keepWaitingDirsend(); + return; + } + /* Packet number */ + if(ctlptr < (next->start + next->length)) { + bcopy(ctlptr,&stmp,2); + next->seq = ntohs(stmp); + ctlptr += 2; + } + /* Total number of packets */ + if(ctlptr < (next->start + next->length)) { + bcopy(ctlptr,&stmp,2); + if(stmp) nd_pkts = ntohs(stmp); + ctlptr += 2; + } + /* Receievd through */ + if(ctlptr < (next->start + next->length)) { + /* Not supported by clients */ + ctlptr += 2; + } + /* Backoff */ + if(ctlptr < (next->start + next->length)) { + bcopy(ctlptr,&stmp,2); + backoff = ntohs(stmp); +#ifdef DEBUG + if(pfs_debug > 2) + fprintf(stderr,"Backing off to %d seconds\n", backoff); +#endif + if(backoff) timeout.tv_sec = backoff; + ctlptr += 2; + } + if(next->seq == 0) { + /* goto keep_waiting; */ + keepWaitingDirsend(); + return; + } + goto done_old; + + } + + /* Notes that we have to start searching 11 bytes before the */ + /* expected start of the MULTI-PACKET line because the message */ + /* might include up to 10 bytes of data after the trailing null */ + /* The order of those bytes is two bytes each for Connection ID */ + /* Packet-no, of, Received-through, Backoff */ + seqtxt = nlsindex(next->start + max(0,next->length - 40),"MULTI-PACKET"); + if(seqtxt) seqtxt+= 13; + + if((nd_pkts == 0) && (no_pkts == 0) && (seqtxt == NULL)) goto all_done; + + tmp = sscanf(seqtxt,"%d OF %d", &(next->seq), &nd_pkts); +#ifdef DEBUG + if (pfs_debug && (tmp == 0)) + fprintf(stderr,"Cant read packet sequence number: %s", seqtxt); +#endif + done_old: +#ifdef DEBUG + if(pfs_debug > 2) fprintf(stderr,"Packet %d of %d\n",next->seq,nd_pkts); +#endif + if ((first == next) && (no_pkts == 0)) { + if(first->seq == 1) { + comp_thru = first; + /* If only one packet, then return it */ + if(nd_pkts == 1) goto all_done; + } + else gaps++; + no_pkts = 1; + next = ptalloc(); + /* goto keep_waiting; */ + keepWaitingDirsend(); + return; + } + + if(comp_thru && (next->seq <= comp_thru->seq)) + ptfree(next); + else if (next->seq < first->seq) { + vtmp = first; + first = next; + first->next = vtmp; + first->previous = NULL; + vtmp->previous = first; + if(first->seq == 1) comp_thru = first; + no_pkts++; + } + else { + vtmp = (comp_thru ? comp_thru : first); + while (vtmp->seq < next->seq) { + if(vtmp->next == NULL) { + vtmp->next = next; + next->previous = vtmp; + next->next = NULL; + no_pkts++; + goto ins_done; + } + vtmp = vtmp->next; + } + if(vtmp->seq == next->seq) + ptfree(next); + else { + vtmp->previous->next = next; + next->previous = vtmp->previous; + next->next = vtmp; + vtmp->previous = next; + no_pkts++; + } + } + +ins_done: + + while(comp_thru && comp_thru->next && + (comp_thru->next->seq == (comp_thru->seq + 1))) { + comp_thru = comp_thru->next; +#ifndef USE_V3_PROT + recvd_thru = htons(comp_thru->seq); + bcopy(&recvd_thru,pkt->start+7,2); /* Let server know we got it */ +#endif + /* We've made progress, so reset retry count */ + retries = client_dirsrv_retry; + /* Also, next retry will be only an acknowledgement */ + /* but for now, we can't fill in the ack field */ +#ifdef DEBUG + if(pfs_debug > 2) + fprintf(stderr,"Packets now received through %d\n",comp_thru->seq); +#endif + } + + /* See if there are any gaps */ + if(!comp_thru || comp_thru->next) gaps++; + else gaps = 0; + + if ((nd_pkts == 0) || (no_pkts < nd_pkts)) { + next = ptalloc(); + /* goto keep_waiting; */ + keepWaitingDirsend(); + return; + } + + all_done: + if(ackpend) { /* Send acknowledgement if requested */ +#ifdef DEBUG + if (pfs_debug > 2) { + if (to.sin_family == AF_INET) + fprintf(stderr,"Acknowledging final packet to %s(%d)\n", + to_hostname, ntohs(this_conn_id)); + else + fprintf(stderr,"Acknowledging final packet\n"); + (void) fflush(stderr); + } +#endif +#ifndef CUTCP + ns = sendto(lp,(char *)(pkt->start), pkt->length, 0, (struct sockaddr *)&to, S_AD_SZ); +#else + while(--lretry) { + ns = netusend(&to.sin_addr, ntohs(to.sin_port), ntohs(us.sin_port),(char *) pkt->start, pkt->length); + if(!ns) + break; + Stask(); + Stask(); + } +#endif + +#ifndef CUTCP + if(ns != pkt->length) { +#else + if(ns != 0) { +#endif + +#ifdef DEBUG + if (pfs_debug) { + fprintf(stderr,"\nsent only %d/%d: ",ns, pkt->length); + perror(""); + } +#endif + } + + } +#ifndef CUTCP + close(lp); +#endif + ptlfree(pkt); + + /* Get rid of any sequenced control packets */ + if(scpflag) { + while(first && (first->length < 0)) { + vtmp = first; + first = first->next; + if(first) first->previous = NULL; + ptfree(vtmp); + } + vtmp = first; + while(vtmp && vtmp->next) { + if(vtmp->next->length < 0) { + if(vtmp->next->next) { + vtmp->next = vtmp->next->next; + ptfree(vtmp->next->previous); + vtmp->next->previous = vtmp; + } + else { + ptfree(vtmp->next); + vtmp->next = NULL; + } + } + vtmp = vtmp->next; + } + } + + /* return(first); */ + dirsendReturn = first; + dirsendDone = DSRET_DONE; + +} + +static void +processEvent() +{ +#ifdef CUTCP + unsigned long now; +#endif + /* select - either recv is ready, or timeout */ + /* see if timeout or error or wrong descriptor */ +#ifndef CUTCP + tmp = select(lp + 1, &readfds, (SELECTARG *)0, (SELECTARG *)0, selwait); + if (tmp == 0) { + timeoutProc(NULL,&timerId); + } else if ((tmp < 0) || !FD_ISSET(lp,&readfds)) { +#ifdef DEBUG + if (pfs_debug) { + fprintf(stderr, "select failed(processEvent): readfds=%x ", + readfds); + perror(""); + } +#endif + close(lp); +#else /* CUTCP's flood. */ + /* while not timeout in selwait loop, stask looking for uevents */ + now = time(NULL) + selwait->tv_sec; +#ifdef DEBUG + if(pfs_debug) { + fprintf(stderr,"Waiting %d seconds\n",selwait->tv_sec); + } + +#endif + while(now > time(NULL)) { + int i, cl, dat; + + Stask(); + if (0 < (i = Sgetevent(USERCLASS, &cl, &dat))) { + /* got a user class event */ + if(cl == USERCLASS && + i == UDPDATA) { + readProc(NULL,&lp,&inputId); + return; + } + } + if(kbhit()) { + int c = getch(); + if(c == 27 || c == 3) + break; + fprintf(stderr,"Press to abort\n"); + } + } + if(now <= time(NULL)) { /* timeout */ + timeoutProc(NULL,&timerId); + return; + } + +#endif /* CUTCP */ + perrno = DIRSEND_SELECT_FAILED; + ptlfree(first); + ptlfree(pkt); + /* return(NULL); */ + dirsendReturn = NULL; + dirsendDone = DSRET_SELECT_ERROR; +#ifndef CUTCP + } else { + readProc(NULL,&lp,&inputId); + } +#endif /* CUTCP */ +} + +void +abortDirsend() +{ + if (!dirsendDone) { +#ifndef CUTCP + close(lp); +#endif + ptlfree(first); + ptlfree(pkt); + dirsendReturn = NULL; + dirsendDone = DSRET_ABORTED; + } + return; +} +$EOD +$! +$CREATE [.archie]get_pauth.c +$DECK +/* + * Copyright (c) 1989, 1990 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include +#include +#ifndef VMS +# include /* this may/will define FD_SET etc */ +# include +#endif + +#ifdef NEED_STRING_H +# include +#else +# include +#endif + +#ifndef VMS +# if defined(MSDOS) && !defined(OS2) +# ifndef CUTCP +# include +# endif +# else +# include +# endif +#else +# include +# include +#endif + +#include +#include + +PAUTH +get_pauth(type) + int type; + { + static PAUTH_ST no_auth_st; + static PAUTH no_auth = NULL; +#if !defined(VMS) && !defined(MSDOS) || defined(OS2) + struct passwd *whoiampw; +#else + char username[13]; + unsigned short usernamelen; + struct { + unsigned short buflen; + unsigned short itmcod; + char *bufadr; + unsigned short *retlenadr; + unsigned long null; + } jpi_itemlist; +#endif + + if(no_auth == NULL) { + no_auth = &no_auth_st; + strcpy(no_auth->auth_type,"UNAUTHENTICATED"); + + /* find out who we are */ +#ifndef VMS +#if defined(MSDOS) && !defined(OS2) +#ifndef CUTCP + if (!getconf("general", "user", no_auth->authenticator, 250) + || (strlen (no_auth->authenticator) == 0)) +#endif + strcpy(no_auth->authenticator,"nobody"); +#else /* not MSDOS */ + DISABLE_PFS(whoiampw = getpwuid(getuid())); + if (whoiampw == 0) strcpy(no_auth->authenticator,"nobody"); + else strcpy(no_auth->authenticator, whoiampw->pw_name); +#endif /* not MSDOS */ +#else + jpi_itemlist.buflen = sizeof(username); + jpi_itemlist.itmcod = JPI$_USERNAME; + jpi_itemlist.bufadr = &username; + jpi_itemlist.retlenadr = &usernamelen; + jpi_itemlist.null = 0; + if (SYS$GETJPI(0, 0, 0, &jpi_itemlist, 0, 0, 0) & 0x1) + { + username[usernamelen] = 0; + strcpy(no_auth->authenticator, username); + } else + strcpy(no_auth->authenticator, "nobody"); +#endif + } + return(no_auth); + } +$EOD +$! +$CREATE [.archie]get_vdir.c +$DECK +/* + * Copyright (c) 1989, 1990, 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include +#include + +#include +#include +#include +#include +#include +#include + +#ifdef NEED_STRING_H +# include +#else +# include +#endif + +#ifdef DEBUG +extern int pfs_debug; +#endif + +extern int pwarn; +extern char p_warn_string[]; +extern int perrno; +extern char p_err_string[]; + +/* + * get_vdir - Get contents of a directory given its location + * + * GET_VDIR takes a directory location, a list of desired + * components, a pointer to a directory structure to be + * filled in, and flags. It then queries the appropriate + * directory server and retrieves the desired information. + * + * ARGS: dhost - Host on which directory resides + * dfile - Directory on that host + * components - The names from the directory we want + * dir - Structure to be filled in + * flags - Options. See FLAGS + * filters - filters to be applied to result + * acomp - Pointer to remaining components + * + * FLAGS: GVD_UNION - Do not expand union links + * GVD_EXPAND - Expand union links locally + * GVD_REMEXP - Request remote expansion (& local if refused) + * GVD_LREMEXP - Request remote expansion of local union links + * GVD_VERIFY - Only verify that args are for a directory + * GVD_ATTRIB - Request attributes from directory server + * GVD_NOSORT - Do not sort links when adding to directory + * + * RETURNS: PSUCCESS (0) or error code + * On some codes addition information in p_err_string + * + * NOTES: If acomp is non-null the string it points to might be modified + * + * If the directory passed as an argument already has + * links or union links, then those lists will be freed + * before the new contents are filled in. + * + * If a filter is passed to the procedure, and application of + * the filter results in additional union link, then those links + * will (or will not) be expanded as specified in the FLAGS field. + * + * If the list of components in NULL, or the null string, then + * get_vdir will return all links in the requested directory. + * + * BUGS: Doesn't process union links yet + * Doesn't process errors returned from server + * Doesn't expand union links if requested to + */ +int +get_vdir(dhost,dfile,components,dir,flags,filters,acomp) + char *dhost; /* Host on which directory resides */ + char *dfile; /* Name of file on that host */ + char *components; /* Component name (wildcards allowed) */ + PVDIR dir; /* Structure to be filled in */ + long flags; /* Flags */ + VLINK filters; /* Filters to be applied to result */ + char *acomp; /* Components left to be resolved */ + { + PTEXT request; /* Text of request to dir server */ + PTEXT resp; /* Response from dir server */ + + char ulcomp[MAX_VPATH];/* Work space for new current component */ + char *comp = components; + + VLINK cur_link = NULL;/* Current link being filled in */ + VLINK exp = NULL; /* The current ulink being expanded */ + VLINK pul = NULL; /* Prev union link (insert new one after it) */ + VLINK l; /* Temp link pointer */ + int mcomp; /* Flag - check multiple components */ + int unresp; /* Flag - received unresolved response */ + int getattrib = 0; /* Get attributes from server */ + int vl_insert_flag; /* Flags to vl_insert */ + + int fwdcnt = MAX_FWD_DEPTH; + + int no_links = 0; /* Count of number of links found */ + + char options[40]; /* LIST option */ + char *opt; /* After leading + */ + + PAUTH authinfo; + + /* Treat null string like NULL (return entire directory) */ + if(!components || !*components) comp = NULL; + + if(acomp && !filters) mcomp = 1; + else mcomp = 0; + + if(flags&GVD_ATTRIB) { + getattrib++; + flags &= (~GVD_ATTRIB); + } + + if(flags&GVD_NOSORT) vl_insert_flag = VLI_NOSORT; + else vl_insert_flag = VLI_ALLOW_CONF; + flags &= (~GVD_NOSORT); + + if(filters) comp = NULL; + + perrno = 0; + + authinfo = get_pauth(PFSA_UNAUTHENTICATED); + + *options = '\0'; + + if(getattrib) { + strcat(options,"+ATTRIBUTES"); + flags &= (~GVD_ATTRIB); + } + + if(!filters) { /* Can't do remote expansion if filters to be applied */ + if(flags == GVD_REMEXP) strcat(options,"+EXPAND"); + if(flags == GVD_LREMEXP) strcat(options,"+LEXPAND"); + } + + /* If all we are doing is verifying that dfile is a directory */ + /* then we do not want a big response from the directory */ + /* server. A NOT-FOUND is sufficient. */ + if(flags == GVD_VERIFY) +#ifdef NEWVERIFYOPT + strcat(options,"+VERIFY"); +#else + comp = "%#$PRobably_nOn_existaNT$#%"; +#endif + + if(*options) opt = options+1; + else opt = "''"; + + startover: + request = ptalloc(); + + sprintf(request->start, + "VERSION %d %s\nAUTHENTICATOR %s %s\nDIRECTORY ASCII %s\nLIST %s COMPONENTS %s%s%s\n", + VFPROT_VNO, PFS_SW_ID, authinfo->auth_type, + authinfo->authenticator, dfile, opt, + (comp ? comp : ""), (mcomp ? "/" : ""), + (mcomp ? acomp : "")); + + request->length = strlen(request->start); + +#ifdef DEBUG + if(pfs_debug > 2) + fprintf(stderr,"Sending message to dirsrv:\n%s",request->start); +#endif + +#if defined(MSDOS) + resp = dirsend(request,dhost,0L); +#else + resp = dirsend(request,dhost,0); +#endif + +#ifdef DEBUG + if(pfs_debug && (resp == NULL)) { + fprintf(stderr,"Dirsend failed: %d\n",perrno); + } +#endif + + /* If we don't get a response, then if the requested */ + /* directory, return error, if a ulink, mark it unexpanded */ + if(resp == NULL) { + if(exp) exp->expanded = FAILED; + else return(perrno); + } + + unresp = 0; + + /* Here we must parse reponse and put in directory */ + /* While looking at each packet */ + while(resp) { + PTEXT vtmp; + char *line; + + vtmp = resp; +#ifdef DEBUG + if(pfs_debug > 3) fprintf(stderr,"%s\n",resp->start); +#endif + /* Look at each line in packet */ + for(line = resp->start;line != NULL;line = nxtline(line)) { + switch (*line) { + + /* Temporary variables to hold link info */ + char l_linktype; + char l_name[MAX_DIR_LINESIZE]; + char l_type[MAX_DIR_LINESIZE]; + char l_htype[MAX_DIR_LINESIZE]; + char l_host[MAX_DIR_LINESIZE]; + char l_ntype[MAX_DIR_LINESIZE]; + char l_fname[MAX_DIR_LINESIZE]; + int l_version; + char t_unresolved[MAX_DIR_LINESIZE]; + int l_magic; + int tmp; + + case 'L': /* LINK or LINK-INFO */ + if(strncmp(line,"LINK-INFO",9) == 0) { + PATTRIB at; + PATTRIB last_at; + at = parse_attribute(line); + if(!at) break; + + /* Cant have link info without a link */ + if(!cur_link) { + perrno = DIRSRV_BAD_FORMAT; + atfree(at); + break; + } + + if(cur_link->lattrib) { + last_at = cur_link->lattrib; + while(last_at->next) last_at = last_at->next; + at->previous = last_at; + last_at->next = at; + } + else { + cur_link->lattrib = at; + at->previous = NULL; + } + break; + } + + /* Not LINK-INFO, must be LINK - if not check for error */ + if(strncmp(line,"LINK",4) != 0) goto scanerr; + + /* If only verifying, don't want to change dir */ + if(flags == GVD_VERIFY) { + break; + } + /* If first link and some links in dir, free them */ + if(!no_links++) { + if(dir->links) vllfree(dir->links); dir->links=NULL; + if(dir->ulinks) vllfree(dir->ulinks); dir->ulinks=NULL; + } + + cur_link = vlalloc(); + + /* parse and insert file info */ + tmp = sscanf(line,"LINK %c %s %s %s %s %s %s %d %d", &l_linktype, + l_type, l_name, l_htype, l_host, + l_ntype, l_fname, &(cur_link->version), + &(cur_link->f_magic_no)); + + if(tmp != 9) { + perrno = DIRSRV_BAD_FORMAT; + vlfree(cur_link); + break; + } + + cur_link->linktype = l_linktype; + cur_link->type = stcopyr(l_type,cur_link->type); + cur_link->name = stcopyr(unquote(l_name),cur_link->name); + cur_link->hosttype = stcopyr(l_htype,cur_link->hosttype); + cur_link->host = stcopyr(l_host,cur_link->host); + cur_link->nametype = stcopyr(l_ntype,cur_link->nametype); + cur_link->filename = stcopyr(l_fname,cur_link->filename); + + /* Double check to make sure we don't get */ + /* back unwanted components */ + /* OK to keep if special (URP) links */ + /* or if mcomp specified */ + if(!mcomp && (cur_link->linktype == 'L') && + (!wcmatch(cur_link->name,comp))) { + vlfree(cur_link); + break; + } + + /* If other optional info was sent back, it must */ + /* also be parsed before inserting link *** */ + + + if(cur_link->linktype == 'L') + vl_insert(cur_link,dir,vl_insert_flag); + else { + tmp = ul_insert(cur_link,dir,pul); + + /* If inserted after pul, next one after cur_link */ + if(pul && (!tmp || (tmp == UL_INSERT_SUPERSEDING))) + pul = cur_link; + } + + break; + + case 'F': /* FILTER, FAILURE or FORWARDED */ + /* FORWARDED */ + if(strncmp(line,"FORWARDED",9) == 0) { + if(fwdcnt-- <= 0) { + ptlfree(resp); + perrno = PFS_MAX_FWD_DEPTH; + return(perrno); + } + /* parse and start over */ + + tmp = sscanf(line,"FORWARDED %s %s %s %s %d %d", + l_htype,l_host,l_ntype,l_fname, + &l_version, &l_magic); + + dhost = stcopy(l_host); + dfile = stcopy(l_fname); + + if(tmp < 4) { + perrno = DIRSRV_BAD_FORMAT; + break; + } + + ptlfree(resp); + goto startover; + } + if(strncmp(line,"FILTER",6) != 0) goto scanerr; + break; + + + case 'M': /* MULTI-PACKET (processed by dirsend) */ + case 'P': /* PACKET (processed by dirsend) */ + break; + + case 'N': /* NOT-A-DIRECTORY or NONE-FOUND */ + /* NONE-FOUND, we just have no links to insert */ + /* It is not an error, but we must clear any */ + /* old links in the directory arg */ + if(strncmp(line,"NONE-FOUND",10) == 0) { + /* If only verifying, don't want to change dir */ + if(flags == GVD_VERIFY) { + break; + } + + /* If first link and some links in dir, free them */ + if(!no_links++) { + if(dir->links) vllfree(dir->links); + if(dir->ulinks) vllfree(dir->ulinks); + dir->links = NULL; + dir->ulinks = NULL; + } + break; + } + /* If NOT-A-DIRECTORY or anything else, scan error */ + goto scanerr; + + case 'U': /* UNRESOLVED */ + if(strncmp(line,"UNRESOLVED",10) != 0) { + goto scanerr; + } + tmp = sscanf(line,"UNRESOLVED %s", t_unresolved); + if(tmp < 1) { + perrno = DIRSRV_BAD_FORMAT; + break; + } + /* If multiple components were resolved */ + if(strlen(t_unresolved) < strlen(acomp)) { + strcpy(ulcomp,acomp); + /* ulcomp is the components that were resolved */ + *(ulcomp+strlen(acomp)-strlen(t_unresolved)-1) = '\0'; + /* Comp gets the last component resolved */ + comp = (char *) rindex(ulcomp,'/'); + if(comp) comp++; + else comp = ulcomp; + /* Let rd_vdir know what remains */ + strcpy(acomp,t_unresolved); + } + unresp = 1; + break; + + case 'V': /* VERSION-NOT-SUPPORTED */ + if(strncmp(line,"VERSION-NOT-SUPPORTED",21) == 0) { + perrno = DIRSRV_BAD_VERS; + return(perrno); + } + goto scanerr; + + scanerr: + default: + if(*line && (tmp = scan_error(line))) { + ptlfree(resp); + return(tmp); + } + break; + } + } + + resp = resp->next; + + ptfree(vtmp); + } + + /* We sent multiple components and weren't told any */ + /* were unresolved */ + if(mcomp && !unresp) { + /* ulcomp is the components that were resolved */ + strcpy(ulcomp,acomp); + /* Comp gets the last component resolved */ + comp = (char *) rindex(ulcomp,'/'); + if(comp) comp++; + else comp = ulcomp; + /* If we have union links to resolve, only one component remains */ + mcomp = 0; + /* Let rd_vdir know what remains */ + *acomp = '\0'; + } + + /* If only verifying, we already know it is a directory */ + if(flags == GVD_VERIFY) return(PSUCCESS); + + /* Don't return if matching was delayed by the need to filter */ + /* if FIND specified, and dir->links is non null, then we have */ + /* found a match, and should return. */ + if((flags & GVD_FIND) && dir->links && (!filters)) + return(PSUCCESS); + + /* If expand specified, and ulinks must be expanded, making sure */ + /* that the order of the links is maintained properly */ + +expand_ulinks: + + if((flags != GVD_UNION) && (flags != GVD_VERIFY)) { + + l = dir->ulinks; + + /* Find first unexpanded ulink */ + while(l && l->expanded && (l->linktype == 'U')) l = l->next; + + /* Only expand if a FILE or DIRECTORY - Mark as */ + /* failed otherwise */ + /* We must still add support for symbolic ulinks */ + if(l) { + if ((strcmp(l->type,"DIRECTORY") == 0) || + (strcmp(l->type,"FILE") == 0)) { + l->expanded = TRUE; + exp = l; + pul = l; + dhost = l->host; + dfile = l->filename; + goto startover; /* was get_contents; */ + } + else l->expanded = FAILED; + } + } + + /* Double check to make sure we don't get */ + /* back unwanted components */ + /* OK to keep if special (URP) links */ + if(components && *components) { + l = dir->links; + while(l) { + VLINK ol; + if((l->linktype == 'L') && (!wcmatch(l->name,components))) { + if(l == dir->links) + dir->links = l->next; + else l->previous->next = l->next; + if(l->next) l->next->previous = l->previous; + ol = l; + l = l->next; + vlfree(ol); + } + else l = l->next; + } + } + + return(PSUCCESS); + } +$EOD +$! +$CREATE [.archie]make.com +$DECK +$! --- MAKE.COM --- !x='f$verify(0)' +$! Description: +$! build the Archie client for VAX/VMS +$! +$! Written by Luke Brennan +$! +$! Modifications: +$! Date Programmer Reason for modification. +$! 20-Jan-92 ldcb Initial coding. +$! +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$ Archie_EXECUTABLE := "archie.exe" +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! add a new call here with the appropriate new Archie server host(s) +$! +$ arg == 1 +$ Call AddHost "archie.ans.net" "(USA [NY])" +$ Call AddHost "archie.rutgers.edu" "(USA [NJ])" +$ Call AddHost "archie.sura.net" "(USA [MD])" +$ Call AddHost "archie.unl.edu" "(USA [NE])" +$ Call AddHost "archie.mcgill.ca" "(Canada)" +$ Call AddHost "archie.funet.fi" "(Finland/Mainland Europe)" +$ Call AddHost "archie.au" "(Australia)" +$ Call AddHost "archie.doc.ic.ac.uk" "(Great Britain/Ireland)" +$ MAXHOSTS = arg - 1 +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! add a new call here with any new source file(s) +$! (P2 should be "SUPPORT" if intended for supporting an unknown TCPIP) +$! +$ arg == 1 +$ Call AddSource "AQUERY" +$ Call AddSource "ARCHIE" +$ Call AddSource "ATALLOC" +$ Call AddSource "DIRSEND" +$ Call AddSource "GET_PAUTH" +$ Call AddSource "GET_VDIR" +$ Call AddSource "PERRMESG" +$ Call AddSource "PROCQUERY" +$ Call AddSource "PTALLOC" +$ Call AddSource "REGEX" +$ Call AddSource "STCOPY" +$ Call AddSource "SUPPORT" +$ Call AddSource "VLALLOC" +$ Call AddSource "VL_COMP" +$ Call AddSource "VMS_SUPPORT" "SUPPORT" +$ MAXSOURCEFILES = arg - 1 +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! add a call here with any supported TCP/IP implementations +$! P1 = name of TCP/IP product, P2 = cc/define to set, +$! P3 = logical to look for, P4 = location of link/OPT, +$! P5 = MINIMUM VERSION of TCP/IP to support +$! +$! Multinet should be last, as it can 'fake' a UCX if you want it to, so +$! UCX would come up as the 'real' net even though Multinet is used. +$! +$ arg == 1 +$ Call AddTCPIP "UCX" "UCX" "UCX$DEVICE" "[.vms]ucx.opt" +$ Call AddTCPIP "WOLLONGONG" "WOLLONGONG" "TWG$TCP" "[.vms]woll.opt" +$ Call AddTCPIP "MULTINET" "MULTINET_30" "MULTINET" "[.vms]multi.opt" "V3.0" +$ MAXTCPIPTYPES = arg - 1 +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! +$ YES = (1.eq.1) +$ NO = (1.eq.0) +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! +$ GoSub get_command_line_args +$ GoSub check_for_GNU_cc +$ GoSub check_which_TCPIP +$ GoSub ask_nearest_ARCHIE_HOST +$ GoSub check_for_strings_H +$ GoSub set_cc_defines +$ GoSub do_compiles +$ If (LINKAGE_REQUIRED) +$ Then GoSub do_link +$ Else Write Sys$OutPut "ARCHIE is up to date." +$ EndIF +$ Exit +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! +$get_command_line_args: +$ cmdline = P1 + P2 + P3 + P4 + P5 + P6 + P7 + P8 +$ If ((f$locate("DEBUG",cmdline) .ne. f$length(cmdline)) - + .or. (f$locate("DBG",cmdline) .ne. f$length(cmdline))) +$ Then debug := "/DeBug" +$ Else debug := "/NOdebug" +$ EndIF +$ If (f$locate("FORCE",cmdline) .ne. f$length(cmdline)) +$ Then FORCEBUILD = YES +$ Else FORCEBUILD = NO +$ EndIF +$ If (f$locate("LINK",cmdline) .ne. f$length(cmdline)) +$ Then FORCELINK = YES +$ Else FORCELINK = NO +$ EndIF +$ If ((f$locate("?",cmdline) .ne. f$length(cmdline)) - + .or. (f$locate("H",cmdline) .ne. f$length(cmdline))) +$ Then +$ Write Sys$Output "Usage:" +$ Write Sys$OutPut " @MAKE [|||] +$ EXIT +$ EndIF +$ RETURN +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! +$CHECK_FOR_GNU_CC: +$ If (f$trnlnm("GNU_CC") .nes. "") +$ Then +$ cc := "GCC/Optimize/Include=([])" +$ gnu_cc = YES +$ Else +$ cc := "CC/Optimize=NOinline/Include=([])" +$ gnu_cc = NO +$ EndIF +$! +$ RETURN +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! for product P1, cc/define=P2 if logical P3 present on system. +$! Libs/option = P4 if present. ALL get disregarded if less than version P5 +$! +$CHECK_WHICH_TCPIP: +$ tcpip_flag := +$ tcpip_libs := +$ NO_TCPIP_SUPPORT = YES +$ i = 1 +$tcp_loop: +$ If (i .gt. MAXTCPIPTYPES) Then GoTo tcp_check_done +$ If (f$type(tcpip_P2_'i') .eqs. "") Then GoTo tcp_check_done +$ If (f$type(tcpip_P3_'i') .nes. "") +$ Then +$ tcpip_logical = tcpip_P3_'i' +$ If (tcpip_logical .nes. "") +$ Then ! logical to look for +$ If (f$logical(tcpip_logical) .nes. "") +$ Then +$ tcpip_flag = tcpip_P2_'i' +$ tcpip_flag = f$fao(",!AS=1",tcpip_flag) +$ NO_TCPIP_SUPPORT = NO +$ If (f$type(tcpip_P4_'i') .nes. "") +$ Then ! link/OPT file location +$ tcpip_linkOPTs = tcpip_P4_'i' +$ If (tcpip_linkOPTs .nes. "") +$ Then +$ If (f$search(tcpip_linkOPTs) .nes. "") +$ Then +$ tcpip_libs = tcpip_P4_'i' +$ tcpip_libs = f$fao("!AS/Option",tcpip_libs) +$ EndIF +$ EndIF +$ EndIF +$ If (f$type(tcpip_P5_'i') .nes. "") +$ Then ! minimum version specified +$ If (tcpip_P5_'i' .nes. "") +$ Then +$ GoSub CheckIfVersionOK +$ If VERSION_TOO_EARLY +$ Then ! too early.. use SUPPORT files +$ tcpip_flag := +$ tcpip_libs := +$ NO_TCPIP_SUPPORT = YES +$ tcp_ver = tcpip_P5_'i' +$ tcp_name = tcpip_P1_'i' +$ Write Sys$OutPut f$fao( - + "Your version of !AS is earlier than !AS.",tcp_name,tcp_ver) + Write Sys$OutPut "MAKE will use STD support files instead." +$ EndIF +$ EndIF +$ EndIF +$ EndIF +$ EndIF +$ EndIF +$ i = i + 1 +$ Goto tcp_loop +$tcp_check_done: +$ RETURN +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! +$ASK_NEAREST_ARCHIE_HOST: +$GoSub CLRSCN +$ Write Sys$OutPut f$fao("!AS!/!/", - + " Enter the number of the ARCHIE HOST nearest you.") +$! +$ i = 1 +$_display_loop: +$ If (i .gt. MAXHOSTS) Then GoTo _display_done +$ Write Sys$OutPut f$fao("!2SL) !25AS !AS",i,host_P1_'i',host_P2_'i') +$ i = i + 1 +$ GoTo _display_loop +$_display_done: +$! +$ Assign/User_Mode/NOlog Sys$Command Sys$InPut +$_select_loop: ! get their selection +$ Read Sys$Command selection - + /End=_selection_made - + /Prompt="Enter number of your selection: " +$ If (selection .gt. MAXHOSTS) +$ Then +$ Write Sys$OutPut f$fao("!AS !2SL", "error: Options only go to", MAXHOSTS) +$ GoTo _select_loop +$ EndIF +$ ascii_string = f$edit(selection,"COLLAPSE,UPCASE") +$ ascii_char = f$extract(0,1,ascii_string) +$ If (.NOT. ("0" .les. ascii_char) .and. (ascii_char .les. "9")) +$ Then +$ Write Sys$OutPut - + f$fao("error: Enter option NUMBER (up to !2SL)", MAXHOSTS) +$ Goto _select_loop +$ EndIF +$! +$ local_archie = host_P1_'selection' +$! +$ RETURN +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! If we're using VAXC then we need to grab STRINGS.H from SYS$LIBRARY. +$CHECK_FOR_STRINGS_H: +$ delete := delete +$ copy := copy +$ If (f$search("strings.h") .nes. "") Then delete/nolog/noconfirm []strings.h;* +$ If .NOT. (GNU_CC) Then copy/noconfirm sys$library:string.h []strings.h +$! +$ RETURN +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! **NOTE** use of global symbol!!! +$! **NOTE** this is the only way I could pass it to the compile subroutine +$! **NOTE** without DCL and/or CC stripping off too many layers of quotes.. +$! **NOTE** yeah.. I know.. It's ugly... you work it out!! :-) +$SET_CC_DEFINES: +$ archie_host = " """"""ARCHIE_HOST=""""""""''local_archie'"""""""" """""" " +$ cflags :== /define=(debug=1,funcs=1,noregex=1'tcpip_flag','archie_host') +$! +$RETURN +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! +$DO_COMPILES: +$ GoSub CLRSCN +$ LINKAGE_REQUIRED == NO +$ If ("''f$type(Archie_EXECUTABLE)'" .nes. "") +$ Then +$ If (Archie_EXECUTABLE .nes. "") +$ Then If (f$search(Archie_EXECUTABLE) .eqs. "") Then LINKAGE_REQUIRED == YES +$ Else If (f$search("Archie.exe") .eqs. "") Then LINKAGE_REQUIRED == YES +$ EndIF +$ Else +$ If (f$search("Archie.exe") .nes. "") Then LINKAGE_REQUIRED == YES +$ EndIF +$ i = 1 +$cc_loop: +$ If (i .gt. MAXSOURCEFILES) Then GoTo cc_done +$ source_file = source_P1_'i' +$ If ((f$type(source_P2_'i') .eqs. "") .or. (source_P2_'i' .eqs. "")) +$ Then Call Compile "''cc'" "''source_file'" "''debug'" 'FORCEBUILD' +$ Else +$ If ((NO_TCPIP_SUPPORT) .and. (source_P2_'i' .eqs. "SUPPORT")) +$ Then Call Compile "''cc'" "''source_file'" "''debug'" 'FORCEBUILD' +$ EndIF +$ EndIF +$ i = i + 1 +$ GoTo cc_loop +$cc_done: +$ If (FORCELINK) Then LINKAGE_REQUIRED == YES +$! +$ RETURN +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! +$DO_LINK: +$ If (f$type(Archie_EXECUTABLE) .nes. "") +$ Then +$ If (Archie_EXECUTABLE .nes. "") +$ Then executable := /Exec='Archie_EXECUTABLE' +$ Else executable := /Exec=Archie.exe +$ EndIF +$ Else +$ executable := /Exec=Archie.exe +$ EndIF +$ i = 1 +$ object_files := +$object_files_loop: +$ If (i .gt. MAXSOURCEFILES) Then GoTo object_files_done +$ object_file = source_P1_'i' +$ If ((f$type(source_P2_'i') .eqs. "") .or. (source_P2_'i' .eqs. "")) +$ Then object_files := 'object_files'+'object_file' +$ Else +$ If ((NO_TCPIP_SUPPORT) .and. (source_P2_'i' .eqs. "SUPPORT")) +$ Then object_files := 'object_files'+'object_file' +$ EndIF +$ EndIF +$ i = i + 1 +$ GoTo object_files_loop +$object_files_done: +$ If (f$extract(0,1,object_files) .eqs. "+") +$ Then object_files = f$extract(1,f$length(object_files),object_files) +$ EndIF +$ If (tcpip_libs .nes. "") +$ Then object_files = object_files + "," +$ EndIF +$! +$ Set Verify +$ Link'debug''executable' 'object_files''tcpip_libs' +$ x='f$verify(0)' +$! +$ Write Sys$OutPut " " +$ Write Sys$OutPut " " +$ Write Sys$OutPut "Done! Define the symbol ARCHIE & fire away." +$! +$ RETURN +$! +$! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! +$CLRSCN: +$If (f$GetDVI("TT:","TT_ANSICRT")) ! ANSI compatible? +$Then +$ CSI = "x[" +$ CSI[0,8] = 27 +$ CLS = CSI + "H" + CSI +"2J" +$ Write Sys$OutPut CLS +$Else +$ Write Sys$Output "''f$fao("!/!/!/!/!/!/!/!/!/!/!/") +$ Write Sys$Output "''f$fao("!/!/!/!/!/!/!/!/!/!/!/!/") +$EndIF +$Return +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! +$AddHOST: SUBROUTINE +$ host_P1_'arg' :== "''P1'" +$ host_P2_'arg' :== "''P2'" +$ arg == arg + 1 ! *NOTE* global symbols used... +$ENDSUBROUTINE +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! +$AddSOURCE: SUBROUTINE +$ source_P1_'arg' :== "''P1'" +$ source_P2_'arg' :== "''P2'" +$ arg == arg + 1 ! *NOTE* global symbols used... +$ENDSUBROUTINE +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! +$AddTCPIP: SUBROUTINE +$ tcpip_P1_'arg' :== "''P1'" +$ tcpip_P2_'arg' :== "''P2'" +$ tcpip_P3_'arg' :== "''P3'" +$ tcpip_P4_'arg' :== "''P4'" +$ tcpip_P5_'arg' :== "''P5'" +$ arg == arg + 1 ! *NOTE* global symbols used... +$ENDSUBROUTINE +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! **NOTE** cflags is a GLOBAL symbol due to problems with quoted /Defines +$! **NOTE** not passing down correctly.. (I gave up!) +$Compile: SUBROUTINE +$ YES = (1.eq.1) +$! --- do a Make of only that source which has been modified since its +$! object code was generated or that is missing its object code. +$ cc = "''P1'" +$ source = "''P2'" +$ dbg = "''P3'" +$ FORCED = P4 +$! +$source = source - ".C" + ".C" +$ t1 = f$search("''source'") ! source exists? +$ If (t1 .eqs. "") Then GoTo _error_source_missing ! YIPE! +$ source = source - ".C" +$ if (FORCED) Then GoTo _compile_the_source ! forced to compile +$ t1 = f$search("''source'.OBJ") ! object exist? +$ If (t1 .eqs. "") Then GoTo _compile_the_source ! object missing +$ t1 = f$file_attributes("''source'.OBJ","RDT") ! when was the OBJECT +$ t1 = f$cvtime(t1) ! produced? (rev date) +$ t2 = f$file_attributes("''source'.C","RDT") ! when was source last +$ t2 = f$cvtime(t2) ! modified? +$ If (t1 .ges. t2) Then GoTo _bypass_compile ! object still current +$_compile_the_source: +$ set verify +$ 'cc - + 'cflags - + 'dbg 'source +$ x='f$verify(0)' +$ LINKAGE_REQUIRED == YES +$ GoTo _cc_done +$_bypass_compile: ! didn't need to +$ GoTo _cc_done ! generate new OBJ file +$_error_source_missing: +$ Write Sys$OutPut "ERROR: unable to locate source file ''source'.C" +$_cc_done: +$ENDSUBROUTINE +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +$! +$CHECKIFVERSIONOK: +$ required_version = tcpip_P5_'i' +$ tcpip_type = tcpip_P1_'i' +$ If ("MULTINET" .eqs. tcpip_type) +$ Then ! I know how to check MULTINET +$ If (f$search("MULTINET:MULTINET_VERSION.;") .nes. "") +$ Then +$ Open/share=READ fd MULTINET:MULTINET_VERSION.; +$ Read fd buffer +$ Close fd +$ v = buffer - "VERSION" +$ v = f$edit(V,"TRIM,COMPRESS") +$ If (v .ges. required_version) +$ Then VERSION_TOO_EARLY = NO +$ Else VERSION_TOO_EARLY = YES +$ EndIF +$ Else +$ VERSION_TOO_EARLY = YES +$ EndIF +$ Else ! don't know, so assume current +$ VERSION_TOO_EARLY = NO +$ EndIF +$! +$ RETURN +$! +$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + + +$EOD +$! +$CREATE [.archie]makefile.cut +$DECK +# +# CUTCP/CUTE BC++ version 11/22/91 bkc@omnigate.clarkson.edu +# Last changed: 12/03/91 1.2.1 +# +# Makefile for the minimal build for an archie Prospero client. +#.INCLUDE ../../../builtins + +OBJS = aquery.obj archie.obj atalloc.obj \ + get_pauth.obj get_vdir.obj perrmesg.obj procquery.obj \ + ptalloc.obj regex.obj stcopy.obj support.obj\ + vlalloc.obj vl_comp.obj dirsend.obj misc.obj + +# dirsend.obj + +HDRS = archie.h pmachine.h pcompat.h + +DEFINES = -DDEBUG -DCUTCP + +CFLAGS= -k -N -ml -r -v $(DEFINES) -I. +LFLAGS= /P/m/s +CC = bccx + +EXE = archie.exe + +all: $(EXE) + +$(OBJS): $(HDRS) + +.c.obj: + $(CC) $(CFLAGS) -c $< + +$(EXE): $(OBJS) Makefile + tlink $(LFLAGS) @&&! +c0l $(OBJS) +!,archie,archie,@&&! +lib\tcp lib\sess lib\enet lib\vjc lib\over cl +! + +clean: + +-del *.obj +$EOD +$! +$CREATE [.archie]makefile.dos +$DECK +# +# Last changed: 11/20/91, v1.2 +# +# Makefile for the minimal build for an archie Prospero client. +#.INCLUDE ../../../builtins + +OBJS = aquery.lo archie.lo atalloc.lo dirsend.lo \ + get_pauth.lo get_vdir.lo perrmesg.lo procquery.lo \ + ptalloc.lo regex.lo stcopy.lo support.lo \ + vlalloc.lo vl_comp.lo +HDRS = archie.h pmachine.h pcompat.h + +DEFINES = -DDEBUG -DNOREGEX -DUSG + +CFLAGS = -Oeclgsz -Gs -Zi -W4 -I. $(DEFINES) + +EXE = archie.exe + +all: $(EXE) + +$(OBJS): $(HDRS) + +$(EXE): $(OBJS) Makefile archie.lnk + link @archie.lnk + exepack archie.unp archie.exe + +clean: + +-del *.lo + +-del *.exe + +$EOD +$! +$CREATE [.archie]makefile.os2 +$DECK +# +# Last changed: 11/20/91, v1.2 +# +# Makefile for the minimal build for an archie Prospero client. +.INCLUDE ../../../builtins + +OBJS = aquery.obj archie.obj atalloc.obj dirsend.obj \ + get_pauth.obj get_vdir.obj perrmesg.obj procquery.obj \ + ptalloc.obj regex.obj stcopy.obj support.obj \ + vlalloc.obj vl_comp.obj +HDRS = archie.h pmachine.h pcompat.h + +DEFINES = -DDEBUG -DNOREGEX + +IFLAGS = -I. -I../../../include $(DEFINES) + +LFLAGS = /stack:30000/nod/noe/noi/map/CO +LIBS = pctcp bsd ftpcrt socket os2 +EXE = archie.exe + +all: $(EXE) + +install: $(EXE) + cp $[m,*.exe,$**] ..\..\..\bin + @touch install + +$(OBJS): $(HDRS) + +$(EXE): $(OBJS) Makefile + $(LD) $(LFLAGS) $(L_DEBUG) <@< +$[s,"+ \n",$[m,*.obj,$**]] +$* +$* +$(LIBS) + +< + +markexe lfns $@ + +markexe windowcompat $@ + +clean: + +-del *.obj + +-del *.exe + +$EOD +$! +$CREATE [.archie.msdos]cutcp.h +$DECK +/* cutcp.h -- defs for cutcp code */ + + +int netlisten(unsigned int port); +struct machinfo *Shostlook(char *name); +int Sdomain(char *name); +struct machinfo *Sgethost(char *name); +struct machinfo *Slookip(unsigned long *address); +void netgetftp(unsigned int array[], unsigned int port); +int netopen(unsigned long *address, unsigned int port); +int Snetopen(struct machinfo *m, unsigned int port); +int netqlen(int handle); +int netroom(int handle); +int netread(int pnum, unsigned char *buffer, unsigned int n); +int netwrite(int pnum, unsigned char *buffer, unsigned int n); +int netest(int pnum); +int netpush(int pnum); +void netulisten(unsigned int portnum); +int netusend(unsigned long *address, unsigned destport, + unsigned sourceport, unsigned char *buffer, int count); +int neturead(unsigned char *buffer); +struct machinfo *Slooknum(int pnum); +int Snetinit(); +int Shostfile(char *name); +int netshut(); +int Sgetevent(int classes, int *clss, int *data); +int netclose(int pnum); +unsigned int intswap(unsigned int val); +unsigned long n_clicks(void *p); +void Stask(); + +#define ntohs(a) (intswap(a)) +#define htons(a) (intswap(a)) +$EOD +$! +$CREATE [.archie.msdos]hostform.h +$DECK +/* hfile.inc - placed into all .h files to set up for PVCS + $Header: /work/archie/Src-Depot-Clone/archie-dist/contrib/c-archie-1.3.2-vms.com,v 1.1.1.1 1994/04/28 00:56:12 bajan Exp $ + Revision History ---------------------------------------------------- + $Log: c-archie-1.3.2-vms.com,v $ +# Revision 1.1.1.1 1994/04/28 00:56:12 bajan +# Initial import +# + * + * Rev 1.0 15 Jan 1990 19:30:22 bkc +*/ + + +/* +* Host and local machine configuration information. +* +**************************************************************************** +* * +* NCSA Telnet for the PC * +* by Tim Krauskopf, VT100 by Gaige Paulsen, Tek by Aaron Contorer * +* * +* National Center for Supercomputing Applications * +* 152 Computing Applications Building * +* 605 E. Springfield Ave. * +* Champaign, IL 61820 * +* * +* This program is in the public domain. * +* * +**************************************************************************** +*/ + +/* +* Linked list of structures which describe other machines. +* Arranged one per session with unique session names. +*/ + +struct machinfo { + unsigned char + *sname, /* pointer to name of session */ + *hname, /* pointer to name of that machine */ + *font, /* font name, if we can do it */ + *keymap, /* pointer to keymap file name */ + hostip[4], /* IP number of this machine */ + gateway, /* gateway preference, start with 1 */ + nameserv, /* nameserver preference, start with 1 */ + bksp, /* backspace value */ + halfdup, /* half duplex required */ + crmap, /* Strange Berkeley 4.3 CR mode needed */ + vtwrap, /* flag on when need wrap mode */ + vtmargin; /* col to ring bell at */ + int + clearsave, /* whether to save cleared lines */ + fsize, /* font size in points */ + nfcolor[3], /* normal foreground */ + nbcolor[3], /* normal background */ + bfcolor[3], /* blink */ + bbcolor[3], + ufcolor[3], /* underline */ + ubcolor[3], + mno, /* machine number for reference */ + mstat, /* status of this machine entry */ + bkscroll, /* how many lines to save */ + retrans, /* initial retrans timeout */ + conto, /* time out in seconds to wait for connect */ + window, /* window, will be checked against buffers */ + maxseg, /* maximum receivable segment size */ + mtu, /* maximum transfer unit MTU (out) */ + domainsremaining, /* how many domain search list entries remain */ + destport, /* yepper, you can telnet to a different port than 23 */ + flags; /* general flags holder */ +#define MFLAGS_SCRIPT 0x80 + struct machinfo *next; /* surprise, its a linked list! */ +}; + +struct machinfo *Sgethost(),*Shostlook(),*Slooknum(),*Slookip(),*Smadd(); + +/* +* status fields for mstat, what do we know about that machine? +*/ +#define NOIP 1 /* we don't have IP number */ +#define UDPDOM 3 /* there is a UDP request pending on it */ +/* The next 20 numbers are reserved for UDPDOM */ +#define HAVEIP 50 /* at least we have the # */ +#define HFILE 70 /* we have IP number from host file */ +#define DOM 71 /* we have an IP number from DOMAIN */ +#define FROMKIP 72 /* have IP# from KIP server */ + + + +/* +* Configuration information which +* the calling program may want to obtain from the hosts file. +* The calling program should include hostform.h and call +* Sgetconfig(cp) +* struct config *cp; +* which will copy the information to the user's data structure. +*/ +struct config { + unsigned char + netmask[4], /* subnetting mask being used */ + havemask, /* do we have a netmask? */ + irqnum, /* which hardware interrupt */ + myipnum[4], /* what is my IP #? */ + me[32], /* my name description (first 30 chars) */ + color[3], /* default colors to use */ + hw[10], /* hardware type for network */ + video[10], /* video graphics hardware available */ + bios, /* flag, do we want to use BIOS for screen access */ + tek, /* flag, enable tektronix graphics */ + ftp, /* flag, enable ftp server */ + rcp, /* flag, enable rcp server */ + comkeys, /* flag, commandkeys=yes */ + *termtype, /* terminal type specification */ + *zone, /* AppleTalk zone for KIP NBP */ + *defdom, /* default domain */ + *capture, /* pointer to where the capture file name is */ + *pass, /* pointer to where the password file name is */ + *hpfile, /* HP file name */ + *psfile, /* PS file name */ + *tekfile; /* tek file name */ +int + nstype, /* nameserver = 1-domain 2-IEN116 */ + domto, /* time out for UDP domain request */ + ndom, /* number of retries for domain requests */ + timesl, /* time slice */ + address, /* segment address */ + ioaddr; /* I/O address */ +char *domainpath; /* domain name search path */ +char *map3270; /* path to 3270 map */ +char tnmode; /* how we decide to connect to 3270 streams */ +long sys_flags; +#define SYS_FLAGS_VISUAL_BELL 0x1 /* use visual bell */ + +}; + + +#define TNMODE_FLAGGED 0 +#define TNMODE_AUTO 1 +#define TNMODE_NOTFLAGGED 2 +#define TNMODE_OFF 3 +$EOD +$! +$CREATE [.archie.msdos]netevent.h +$DECK +/* hfile.inc - placed into all .h files to set up for PVCS + $Header: /work/archie/Src-Depot-Clone/archie-dist/contrib/c-archie-1.3.2-vms.com,v 1.1.1.1 1994/04/28 00:56:12 bajan Exp $ + Revision History ---------------------------------------------------- + $Log: c-archie-1.3.2-vms.com,v $ +# Revision 1.1.1.1 1994/04/28 00:56:12 bajan +# Initial import +# + * + * Rev 1.0 15 Jan 1990 19:29:26 bkc +*/ + + +/* +* Events for event processing in NCSA Telnet. +* Used for netgetevent(). +*/ + + +#define USERCLASS 1 /* the user program will accept these events */ +#define ICMPCLASS 2 /* ICMP in netsleep will look for these */ +#define ERRCLASS 4 /* the user may or may not read these error messages */ +#define SCLASS 8 /* the background server will take these */ +#define CONCLASS 0x10 /* the application manages connections with these */ + +#define ERR1 1 /* an error message is waiting, ERRCLASS */ + +#define IREDIR 1 /* ICMP redirect, ICMPCLASS */ + +#define CONOPEN 1 /* connection has opened, CONCLASS */ +#define CONDATA 2 /* there is data available on this connection */ +#define CONCLOSE 3 /* the other side has closed its side of the connection */ +#define CONFAIL 4 /* connection open attempt has failed */ + +#define UDPDATA 1 /* UDP data has arrived on listening port, USERCLASS */ +#define DOMOK 2 /* domain name ready */ +#define DOMFAIL 3 /* domain name lookup failed */ +#define FTPCOPEN 20 /* FTP command connection has opened */ +#define FTPCLOSE 21 /* FTP command connection has closed */ +#define FTPBEGIN 22 /* FTP transfer beginning, dat =1 for get, 0 for put */ +#define FTPEND 23 /* FTP transfer ending */ +#define FTPLIST 24 /* FTP file listing taking place */ +#define FTPUSER 25 /* FTP user name has been entered */ +#define FTPPWOK 26 /* FTP password verified */ +#define FTPPWNO 27 /* FTP password failed */ +#define RCPBEGIN 30 /* RCP beginning */ +#define RCPEND 31 /* RCP ending */ + +#define UDPTO 1 /* UDP request from DOMAIN timed out, SCLASS */ +#define FTPACT 2 /* FTP transfer is active, keep sending */ +#define TCPTO 3 /* TCP for DOMAIN timed out */ +#define RCPACT 4 /* rcp is active, needs CPU time */ +#define RETRYCON 5 /* retry connection packet, might be lost */ +#define DOMNEXT 6 /* search next domain list entry */ +#define E_CLOCK 7 +#ifdef SCRIPT +#define SCRIPT_EVENT 1 /* script next step */ +#define SCRIPT_DATA 2 /* received some data */ +#define SCRIPT_PROC 3 /* just process stuff */ +#define SCRIPT_CLOSE 4 /* connection was closed */ +#define SCRIPT_FORCE 5 /* user forced connection closed */ +#define SCRIPT_DOMAIN 6 /* domain name lookup ok */ +#define SCRIPT_FUNC 8 +/* int Script_Event(int type, void *twin, unsigned int data); */ +#endif +$EOD +$! +$CREATE [.archie]perrmesg.c +$DECK +/* + * Copyright (c) 1989, 1990, 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include +#include +#include + +/* This file and perrno.h should always be updated simultaneously */ + +int perrno = 0; +int pwarn = 0; +char p_err_string[P_ERR_STRING_SZ]; +char p_warn_string[P_ERR_STRING_SZ]; + +char *p_err_text[256] = { + /* 0 */ "Success (prospero)", + /* 1 */ "Port unknown (dirsend)", + /* 2 */ "Can't open local UDP port (dirsend)", + /* 3 */ "Can't resolve hostname (dirsend)", + /* 4 */ "Unable to send entire message (dirsend)", + /* 5 */ "Timed out (dirsend)", + /* 6 */ "Recvfrom failed (dirsend)", + /* 7 */ "", /* 8 */ "", /* 9 */ "", /* 10 */ "", + /* 11 */ "Sendto failed (reply)", + /* 12 */ "", /* 13 */ "", /* 14 */ "", /* 15 */ "", + /* 16 */ "", /* 17 */ "", /* 18 */ "", /* 19 */ "", + /* 20 */ "", + /* 21 */ "Link already exists (vl_insert)", + /* 22 */ "Link with same name already exists (vl_insert)", + /* 23 */ "", /* 24 */ "", + /* 25 */ "Link already exists (ul_insert)", + /* 26 */ "Replacing existing link (ul_insert)", + /* 27 */ "Previous entry not found in dir->ulinks (ul_insert)", + /* 28 */ "", /* 29 */ "", /* 30 */ "", /* 31 */ "", + /* 32 */ "", /* 33 */ "", /* 34 */ "", /* 35 */ "", + /* 36 */ "", /* 37 */ "", /* 38 */ "", /* 39 */ "", + /* 40 */ "", + /* 41 */ "Temporary not found (rd_vdir)", + /* 42 */ "Namespace not closed with object (rd_vdir)", + /* 43 */ "Alias for namespace not defined (rd_vdir)", + /* 44 */ "Specified namespace not found (rd_vdir)", + /* 45 */ "", /* 46 */ "", /* 47 */ "", /* 48 */ "", + /* 49 */ "", /* 50 */ "", + /* 51 */ "File access method not supported (pfs_access)", + /* 52 */ "", /* 53 */ "", /* 54 */ "", + /* 55 */ "Pointer to cached copy - delete on close (pmap_cache)", + /* 56 */ "Unable to retrieve file (pmap_cache)", + /* 57 */ "", /* 58 */ "", /* 59 */ "", /* 60 */ "", + /* 61 */ "Directory already exists (mk_vdir)", + /* 62 */ "Link with same name already exists (mk_vdir)", + /* 63 */ "", /* 64 */ "", + /* 65 */ "Not a virtual system (vfsetenv)", + /* 66 */ "Can't find directory (vfsetenv)", + /* 67 */ "", /* 68 */ "", /* 69 */ "", /* 70 */ "", + /* 71 */ "Link already exists (add_vlink)", + /* 72 */ "Link with same name already exists (add_vlink)", + /* 73 */ "", /* 74 */ "", /* 75 */ "", /* 76 */ "", + /* 77 */ "", /* 78 */ "", /* 79 */ "", /* 80 */ "", + /* 81 */ "", /* 82 */ "", /* 83 */ "", /* 84 */ "", + /* 85 */ "", /* 86 */ "", /* 87 */ "", /* 88 */ "", + /* 89 */ "", /* 90 */ "", /* 91 */ "", /* 92 */ "", + /* 93 */ "", /* 94 */ "", /* 95 */ "", /* 96 */ "", + /* 97 */ "", /* 98 */ "", /* 99 */ "", /* 100 */ "", + /* 101 */ "", /* 102 */ "", /* 103 */ "", /* 104 */ "", + /* 105 */ "", /* 106 */ "", /* 107 */ "", /* 108 */ "", + /* 109 */ "", /* 110 */ "", /* 111 */ "", /* 112 */ "", + /* 113 */ "", /* 114 */ "", /* 115 */ "", /* 116 */ "", + /* 117 */ "", /* 118 */ "", /* 119 */ "", /* 120 */ "", + /* 121 */ "", /* 122 */ "", /* 123 */ "", /* 124 */ "", + /* 125 */ "", /* 126 */ "", /* 127 */ "", /* 128 */ "", + /* 129 */ "", /* 130 */ "", /* 131 */ "", /* 132 */ "", + /* 133 */ "", /* 134 */ "", /* 135 */ "", /* 136 */ "", + /* 137 */ "", /* 138 */ "", /* 139 */ "", /* 140 */ "", + /* 141 */ "", /* 142 */ "", /* 143 */ "", /* 144 */ "", + /* 145 */ "", /* 146 */ "", /* 147 */ "", /* 148 */ "", + /* 149 */ "", /* 150 */ "", /* 151 */ "", /* 152 */ "", + /* 153 */ "", /* 154 */ "", /* 155 */ "", /* 156 */ "", + /* 157 */ "", /* 158 */ "", /* 159 */ "", /* 160 */ "", + /* 161 */ "", /* 162 */ "", /* 163 */ "", /* 164 */ "", + /* 165 */ "", /* 166 */ "", /* 167 */ "", /* 168 */ "", + /* 169 */ "", /* 170 */ "", /* 171 */ "", /* 172 */ "", + /* 173 */ "", /* 174 */ "", /* 175 */ "", /* 176 */ "", + /* 177 */ "", /* 178 */ "", /* 179 */ "", /* 180 */ "", + /* 181 */ "", /* 182 */ "", /* 183 */ "", /* 184 */ "", + /* 185 */ "", /* 186 */ "", /* 187 */ "", /* 188 */ "", + /* 189 */ "", /* 190 */ "", /* 191 */ "", /* 192 */ "", + /* 193 */ "", /* 194 */ "", /* 195 */ "", /* 196 */ "", + /* 197 */ "", /* 198 */ "", /* 199 */ "", /* 200 */ "", + /* 201 */ "", /* 202 */ "", /* 203 */ "", /* 204 */ "", + /* 205 */ "", /* 206 */ "", /* 207 */ "", /* 208 */ "", + /* 209 */ "", /* 210 */ "", /* 211 */ "", /* 212 */ "", + /* 213 */ "", /* 214 */ "", /* 215 */ "", /* 216 */ "", + /* 217 */ "", /* 218 */ "", /* 219 */ "", /* 220 */ "", + /* 221 */ "", /* 222 */ "", /* 223 */ "", /* 224 */ "", + /* 225 */ "", /* 226 */ "", /* 227 */ "", /* 228 */ "", + /* 229 */ "", + /* 230 */ "File not found (prospero)", + /* 231 */ "Directory not found (prospero)", + /* 232 */ "Symbolic links nested too deep (prospero)", + /* 233 */ "Environment not initialized - source vfsetup.source then run vfsetup", + /* 234 */ "Can't traverse an external file (prospero)", + /* 235 */ "Forwarding chain is too long (prospero)", + /* 236 */ "", /* 237 */ "", /* 238 */ "", /* 239 */ "", + /* 240 */ "", /* 241 */ "", + /* 242 */ "Authentication required (prospero server)", + /* 243 */ "Not authorized (prospero server)", + /* 244 */ "Not found (prospero server)", + /* 245 */ "Bad version number (prospero server)", + /* 246 */ "Not a directory (prospero server)", + /* 247 */ "Already exists (prospero server)", + /* 248 */ "Link with same name already exists (prospero server)", + /* 249 */ "", /* 250 */ "", + /* 251 */ "Command not implemented on server (dirsrv)", + /* 252 */ "Bad format for response (dirsrv)", + /* 253 */ "Protocol error (prospero server)", + /* 254 */ "Unspecified server failure (prospero server)", + /* 255 */ "Generic Failure (prospero)"}; + +char *p_warn_text[256] = { + /* 0 */ "No warning", + /* 1 */ "You are using an old version of this program", + /* 2 */ "From server", + /* 3 */ "Unrecognized line in response from server", + /* 4-254 */ "", "", "", "", "", "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", + "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", + /* 255 */ ""}; + +#ifndef ARCHIE +perrmesg(prefix,no,text) + char *prefix; + int no; + char *text; + { + fprintf(stderr,"%s%s%s%s\n", (prefix ? prefix : ""), + (no ? p_err_text[no] : p_err_text[perrno]), + ((text ? (*text ? " - " : "") : + (!no && *p_err_string ? " - " : ""))), + (text ? text : (no ? "" : p_err_string))); + } + +sperrmesg(buf,prefix,no,text) + char *buf; + char *prefix; + int no; + char *text; + { + sprintf(buf,"%s%s%s%s\n", (prefix ? prefix : ""), + (no ? p_err_text[no] : p_err_text[perrno]), + ((text ? (*text ? " - " : "") : + (!no && *p_err_string ? " - " : ""))), + (text ? text : (no ? "" : p_err_string))); + } + +pwarnmesg(prefix,no,text) + char *prefix; + int no; + char *text; + { + fprintf(stderr,"%s%s%s%s\n", (prefix ? prefix : ""), + (no ? p_warn_text[no] : p_warn_text[pwarn]), + ((text ? (*text ? " - " : "") : + (!no && *p_warn_string ? " - " : ""))), + (text ? text : (no ? "" : p_warn_string))); + } + +spwarnmesg(buf,prefix,no,text) + char *buf; + char *prefix; + int no; + char *text; + { + sprintf(buf,"%s%s%s%s\n", (prefix ? prefix : ""), + (no ? p_warn_text[no] : p_warn_text[pwarn]), + ((text ? (*text ? " - " : "") : + (!no && *p_warn_string ? " - " : ""))), + (text ? text : (no ? "" : p_warn_string))); + } +#endif +$EOD +$! +$CREATE [.archie]patchlevel.h +$DECK +/* + * Archie v1.3 + * + * History: + * + * 04/14/92 v1.3.2 - Release. + * 01/10/92 v1.3.1 - Release. + * 01/09/92 v1.3 - Release. + * 12/13/91 - added UCX support + * 12/03/91 - added CUTCP support + * 11/20/91 v1.2 - Release. + * 11/18/91 - ported to DOS & OS/2 + * 11/12/91 - finally got to test under Multinet 3.0 + * 10/03/91 - replaced regex.c for oz + * 09/25/91 - added Wollongong support + * 08/30/91 - ported to VMS + * 08/20/91 v1.1 - Major revisions + * 07/31/91 v1.0 - Original + */ +$EOD +$! +$CREATE [.archie]pauthent.h +$DECK +/* + * Copyright (c) 1989, 1990, 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include + +#define PFSA_UNAUTHENTICATED 1 + +struct pfs_auth_info { + char auth_type[100]; + char authenticator[250]; +}; + +typedef struct pfs_auth_info *PAUTH; +typedef struct pfs_auth_info PAUTH_ST; + +PAUTH get_pauth(); + +#ifndef VMS +# ifndef IN_H +# include +# define IN_H +# endif +#else +# ifndef _ARCHIE_VMS +# include +# endif +#endif + +struct client_info { + int ainfo_type; + char *auth_type; + char *authenticator; + char *userid; + short port; + struct in_addr haddr; + struct pfs_auth_info *previous; + struct pfs_auth_info *next; +}; + +typedef struct client_info *CINFO; +typedef struct client_info CINFO_ST; +$EOD +$! +$CREATE [.archie]pcompat.h +$DECK +/* + * Copyright (c) 1989, 1990 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include + +/* + * pcompat.h - Definitions for compatability library + * + * This file contains the defintions used by the compatability + * library. Among the definitions are the possible values for + * pfs_disable_flag. This file also contains the external + * declaration of that variable. Note, however that the + * the module pfs_disable_flag.o is included in libpfs.a + * because some of the routines in that library set it. + * The only place it is checked, however, is in pfs_access, + * found in libpcompat.a + * + */ + +extern int pfs_default; +extern int pfs_enable; + +/* Definitions for values of pfs_enable */ +#define PMAP_DISABLE 0 +#define PMAP_ENABLE 1 +#define PMAP_COLON 2 +#define PMAP_ATSIGN_NF 3 +#define PMAP_ATSIGN 4 + +#define DISABLE_PFS(stmt) do {int DpfStmp; DpfStmp = pfs_enable;\ + pfs_enable = PMAP_DISABLE; \ + stmt; \ + pfs_enable = DpfStmp;} while (0) + +/* Definitions for PFS_ACCESS */ +#define PFA_MAP 0 /* Map the file name only */ +#define PFA_CREATE 1 /* Create file if not found */ +#define PFA_CRMAP 2 /* Map file name. Map to new name if not found */ +#define PFA_RO 4 /* Access to file is read only */ + +#define check_pfs_default() \ + do { if (pfs_default == -1) get_pfs_default(); } while (0) +$EOD +$! +$CREATE [.archie]perrno.h +$DECK +/* + * Copyright (c) 1989, 1990 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include + +/* This file and perrmesg.c should be updated simultaneously. */ + +/* + * perrno.h - definitions for perrno + * + * This file contains the declarations and defintions of of the external + * error values in which errors are returned by the pfs and psrv + * libraries. + */ + +#define P_ERR_STRING_SZ 100 /* Size of error string */ + +extern int perrno; +extern char p_err_string[]; +extern char *p_err_text[]; + +extern int pwarn; +extern char p_warn_string[]; +extern char *p_warn_text[]; + +/* Error codes returned or found in verrno */ + +#ifndef PSUCCESS +#define PSUCCESS 0 +#endif + +/* dirsend (perrno) */ +#define DIRSEND_PORT_UNKN 1 /* DIRSRV UDP port unknown */ +#define DIRSEND_UDP_CANT 2 /* Can't open local UDP port */ +#define DIRSEND_BAD_HOSTNAME 3 /* Can't resolve hostname */ +#define DIRSEND_NOT_ALL_SENT 4 /* Didn't send entire message */ +#define DIRSEND_SELECT_FAILED 5 /* Select failed */ +#define DIRSEND_BAD_RECV 6 /* Recvfrom failed */ + +/* reply */ +#define REPLY_NOTSENT 11 /* Reply: sendto failed */ + +/* vl_insert */ +#define VL_INSERT_ALREADY_THERE 21 /* Link already exists */ +#define VL_INSERT_CONFLICT 22 /* Link exists with same name */ + +/* ul_insert */ +#define UL_INSERT_ALREADY_THERE 25 /* Link already exists */ +#define UL_INSERT_SUPERSEDING 26 /* Replacing existing link */ +#define UL_INSERT_POS_NOTFOUND 27 /* Prv entry not in dir->ulinks */ + +/* rd_vdir */ +#define RVD_DIR_NOT_THERE 41 /* Temporary NOT_FOUND */ +#define RVD_NO_CLOSED_NS 42 /* Namespace not closed w/ object:: */ +#define RVD_NO_NS_ALIAS 43 /* No alias for namespace NS#: */ +#define RVD_NS_NOT_FOUND 44 /* Specified namespace not found */ + +/* pfs_access */ +#define PFSA_AM_NOT_SUPPORTED 51 /* Access method not supported */ + +/* pmap_cache */ +#define PMC_DELETE_ON_CLOSE 55 /* Delete cached copy on close */ +#define PMC_RETRIEVE_FAILED 56 /* Unable to retrieve file */ + +/* mk_vdir */ +/* #define MKVD_ALREADY_EXISTS 61 /* Directory already exists */ +/* #define MKVD_NAME_CONFLICT 62 /* Link with name already exists */ + +/* vfsetenv */ +#define VFSN_NOT_A_VS 65 /* Not a virtual system */ +#define VFSN_CANT_FIND_DIR 66 /* Not a virtual system */ + +/* add_vlink */ +/* #define ADDVL_ALREADY_EXISTS 71 /* Directory already exists */ +/* #define ADDVL_NAME_CONFLICT 72 /* Link with name already exists */ + +/* Local error codes on server */ + +/* dsrdir */ +#define DSRDIR_NOT_A_DIRECTORY 111 /* Not a directory name */ +/* dsrfinfo */ +#define DSRFINFO_NOT_A_FILE 121 /* Object not found */ +#define DSRFINFO_FORWARDED 122 /* Object has moved */ + +/* Error codes that may be returned by various procedures */ +#define PFS_FILE_NOT_FOUND 230 /* File not found */ +#define PFS_DIR_NOT_FOUND 231 /* Directory in path not found */ +#define PFS_SYMLINK_DEPTH 232 /* Max sym-link depth exceeded */ +#define PFS_ENV_NOT_INITIALIZED 233 /* Can't read environment */ +#define PFS_EXT_USED_AS_DIR 234 /* Can't use externals as dirs */ +#define PFS_MAX_FWD_DEPTH 235 /* Exceeded max forward depth */ + +/* Error codes returned by directory server */ +/* some of these duplicate errors from individual routines */ +/* some of those error codes should be eliminated */ +#define DIRSRV_AUTHENT_REQ 242 /* Authentication required */ +#define DIRSRV_NOT_AUTHORIZED 243 /* Not authorized */ +#define DIRSRV_NOT_FOUND 244 /* Not found */ +#define DIRSRV_BAD_VERS 245 +#define DIRSRV_NOT_DIRECTORY 246 +#define DIRSRV_ALREADY_EXISTS 247 /* Identical link already exists */ +#define DIRSRV_NAME_CONFLICT 248 /* Link with name already exists */ + +#define DIRSRV_UNIMPLEMENTED 251 /* Unimplemented command */ +#define DIRSRV_BAD_FORMAT 252 +#define DIRSRV_ERROR 253 +#define DIRSRV_SERVER_FAILED 254 /* Unspecified server failure */ + +#ifndef PFAILURE +#define PFAILURE 255 +#endif + +/* Warning codes */ + +#define PNOWARN 0 /* No warning indicated */ +#define PWARN_OUT_OF_DATE 1 /* Software is out of date */ +#define PWARN_MSG_FROM_SERVER 2 /* Warning in p_warn_string */ +#define PWARN_UNRECOGNIZED_RESP 3 /* Unrecognized line in response */ +#define PWARNING 255 /* Warning in p_warn_string */ +$EOD +$! +$CREATE [.archie]pfs.h +$DECK +/* + * Copyright (c) 1989, 1990, 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include + +#ifdef VMS +# include +#else /* not VMS */ +# ifndef _TYPES_ +# include +# endif /* _TYPES_ */ +# ifndef IN_H +# include +# define IN_H +# endif +#endif /* VMS */ + +#ifndef NULL +# ifdef MSDOS +# include +# else +# define NULL 0 +# endif /* MSDOS */ +#endif /* NULL */ + +#define PFS_RELEASE "Beta.4.2E" +#define PFS_SW_ID "B42E" + +/* moved up for vdir_init */ +#define ZERO(p) bzero((char *)(p), sizeof(*(p))) + +/* General Definitions */ + +#define MAX_PTXT_LEN 1250 /* Max length of PTEXT structure */ +#define MAX_PTXT_HDR 32 /* Max offset for start */ +#define P_ERR_STRING_SZ 100 /* Size of error string */ +#define MAX_VPATH 1024 /* Max length of virtual pathname */ + +/* Definition of text structure used to pass text around */ + +struct ptext { + int length; /* Length of text (from start) */ + char *start; /* Start of text */ + char dat[MAX_PTXT_LEN+2*MAX_PTXT_HDR];/* The data itself */ + unsigned long mbz; /* ZERO to catch runaway strings */ + struct ptext *previous; /* Previous element in list */ + struct ptext *next; /* Next element in linked list */ + int seq; /* Sequence Number */ +}; + +typedef struct ptext *PTEXT; +typedef struct ptext PTEXT_ST; + +/* Request structure: maintains information about server requests */ +struct preq { + int cid; /* Connection ID */ + short priority; /* Connection priority */ + int pf_priority; /* Priority assigned by pri_func */ + int recv_tot; /* Total # of packets received */ + int trns_tot; /* Total # of packets to transmit */ + struct ptext *cpkt; /* Current packet being filled in */ + struct ptext *recv; /* Received packets */ + struct ptext *trns; /* Transmitted packets */ + int rcvd_thru; /* Received all packets through # */ + struct preq *previous; /* Previous element in list */ + struct preq *next; /* Next element in linked list */ + struct sockaddr_in fromto; /* Sender/Destination */ +}; + +typedef struct preq *PREQ; +typedef struct preq PREQ_ST; + + +/* Definition of structure containing information on virtual link */ + +struct vlink { + int dontfree; /* Flag: don't free this link */ + char *name; /* Component of path name */ + char linktype; /* L = Link, U = Union, N= Native */ + int expanded; /* Has a union link been expanded */ + char *type; /* Type of object pointed to */ + struct vlink *filters; /* Filters associated with link */ + struct vlink *replicas; /* Replicas (* see comment below) */ + char *hosttype; /* Type of hostname */ + char *host; /* Files physical location */ + char *nametype; /* Type of filename */ + char *filename; /* System level filename */ + long version; /* Version number of destination */ + long f_magic_no; /* File's magic number */ + struct acl *acl; /* ACL for link */ + long dest_exp; /* Expiration for dest of link */ + long link_exp; /* Expiration of link itself */ + char *args; /* Arguments if this is a filter */ + struct pattrib *lattrib; /* Attributes associated w/ link */ + struct pfile *f_info; /* Info to be assoicated w/ file */ + struct vlink *previous; /* Previous elt in linked list */ + struct vlink *next; /* Next element in linked list */ +}; + +typedef struct vlink *VLINK; +typedef struct vlink VLINK_ST; + +/* * Note that vlink->replicas is not really a list of replicas of the */ +/* object. Instead, it is a list of the objects returned during name */ +/* resolution that share the same name as the current object. Such */ +/* an object should only be considered a replica if it also shares */ +/* the same non-zero magic number. */ + +/* Definition of structure continiaing virtual directory information */ + +struct vdir { + int version; /* Version of local directory fmt */ + int inc_native; /* Include the native directory */ + long magic_no; /* Magic number of current file */ + struct acl *dacl; /* Default acl for links in dir */ + struct pfile *f_info; /* Directory file info */ + struct vlink *links; /* The directory entries */ + struct vlink *lastlink; /* Last directory entry */ + struct vlink *ulinks; /* The entries for union links */ + struct vdir *previous; /* Previous element in linked list */ + struct vdir *next; /* Next element in linked list */ +}; + +typedef struct vdir *PVDIR; +typedef struct vdir VDIR_ST; + +/* Initialize directory */ +#define vdir_init(dir) ZERO(dir) +/* XXX: was + + dir->version = 0; dir->inc_native = 0; \ + dir->magic_no = 0; dir->f_info = NULL; \ + dir->links = NULL; dir->lastlink = NULL; \ + dir->ulinks = NULL; dir->dacl = NULL; \ + dir->previous = NULL; dir->next = NULL; +*/ + +#define vdir_copy(d1,d2) d2->version = d1->version; \ + d2->inc_native = d1->inc_native; \ + d2->magic_no = d1->magic_no; \ + d2->f_info = d1->f_info; \ + d2->links = d1->links; \ + d2->lastlink = d1->lastlink; \ + d2->ulinks = d1->ulinks; \ + d2->dacl = d1->dacl; \ + d2->previous = d1->previous; \ + d2->next = d1->next; + +/* Values of ->inc_native in vdir structure */ +#define VDIN_REALONLY -1 /* Include native files, but not . and .. */ +#define VDIN_NONATIVE 0 /* Do not include files from native directory */ +#define VDIN_INCLNATIVE 1 /* Include files from native directory */ +#define VDIN_NATIVEONLY 2 /* All entries in directory are from native dir */ +#define VDIN_PSEUDO 3 /* Directory is not real */ + + +/* Definition of structure containing information on a specific file */ + +union avalue { + char *ascii; /* Character string */ + struct vlink *link; /* A link */ +}; + + +struct pattrib { + char precedence; /* Precedence for link attribute */ + char *aname; /* Name of the attribute */ + char *avtype; /* Type of the attribute value */ + union avalue value; /* Attribute Value */ + struct pattrib *previous; /* Previous element in linked list */ + struct pattrib *next; /* Next element in linked list */ +}; + +typedef struct pattrib *PATTRIB; +typedef struct pattrib PATTRIB_ST; + +#define ATR_PREC_OBJECT 'O' /* Authoritative answer for object */ +#define ATR_PREC_LINK 'L' /* Authoritative answer for link */ +#define ATR_PREC_CACHED 'C' /* Object info cached w/ link */ +#define ATR_PREC_REPLACE 'R' /* From link (replaces O) */ +#define ATR_PREC_ADD 'A' /* From link (additional value) */ + +/* **** Incomplete **** */ +struct pfile { + int version; /* Version of local finfo format */ + long f_magic_no; /* Magic number of current file */ + long exp; /* Expiration date of timeout */ + long ttl; /* Time to live after reference */ + long last_ref; /* Time of last reference */ + struct vlink *forward; /* List of forwarding pointers */ + struct vlink *backlinks; /* Partial list of back links */ + struct pattrib *attributes; /* List of file attributes */ + struct pfile *previous; /* Previous element in linked list */ + struct pfile *next; /* Next element in linked list */ +}; + +typedef struct pfile *PFILE; +typedef struct pfile PFILE_ST; + +/* Definition of structure contining an access control list entry */ + +struct acl { + int acetype; /* Access Contol Entry type */ + char *atype; /* Authentication type */ + char *rights; /* Rights */ + char *principals; /* Authorized principals */ + struct restrict *restrictions; /* Restrictions on use */ + struct acl *previous; /* Previous elt in linked list */ + struct acl *next; /* Next element in linked list */ +}; +typedef struct acl *ACL; +typedef struct acl ACL_ST; + +#define ACL_NONE 0 /* Nobody authorized by ths entry */ +#define ACL_DEFAULT 1 /* System default */ +#define ACL_SYSTEM 2 /* System administrator */ +#define ACL_OWNER 3 /* Directory owner */ +#define ACL_DIRECTORY 4 /* Same as directory */ +#define ACL_ANY 5 /* Any user */ +#define ACL_AUTHENT 6 /* Authenticated principal */ +#define ACL_LGROUP 7 /* Local group */ +#define ACL_GROUP 8 /* External group */ +#define ACL_ASRTHOST 10 /* Check host and asserted userid */ +#define ACL_TRSTHOST 11 /* ASRTHOST from privileged port */ + + +/* Definition of structure contining access restrictions */ +/* for future extensions */ +struct restrict { + struct acl *previous; /* Previous elt in linked list */ + struct acl *next; /* Next element in linked list */ +}; + +/* Definitions for send_to_dirsrv */ +#define CLIENT_DIRSRV_TIMEOUT 4 /* time between retries */ +#define CLIENT_DIRSRV_BACKOFF(x) (2 * x) /* Backoff algorithm */ +#define CLIENT_DIRSRV_RETRY 3 /* retry this many times */ + +/* Definitions for rd_vlink and rd_vdir */ +#define SYMLINK_NESTING 10 /* Max nesting depth for sym links */ + +/* Definition fo check_acl */ +#define ACL_NESTING 10 /* Max depth for ACL group nesting */ + +/* Flags for mk_vdir */ +#define MKVD_LPRIV 1 /* Minimize privs for creator in new ACL */ + +/* Flags for get_vdir */ +#define GVD_UNION 0 /* Do not expand union links */ +#define GVD_EXPAND 1 /* Expand union links locally */ +#define GVD_LREMEXP 3 /* Request remote expansion of local links */ +#define GVD_REMEXP 7 /* Request remote expansion of all links */ +#define GVD_VERIFY 8 /* Only verify args are for a directory */ +#define GVD_FIND 16 /* Stop expanding when match is found */ +#define GVD_ATTRIB 32 /* Request attributes from remote server */ +#define GVD_NOSORT 64 /* Do not sort links when adding to dir */ + +/* Flags for rd_vdir */ +#define RVD_UNION GVD_UNION +#define RVD_EXPAND GVD_EXPAND +#define RVD_LREMEXP GVD_LREMEXP +#define RVD_REMEXP GVD_REMEXP +#define RVD_DFILE_ONLY GVD_VERIFY /* Only return ptr to dir file */ +#define RVD_FIND GVD_FIND +#define RVD_ATTRIB GVD_ATTRIB +#define RVD_NOSORT GVD_NOSORT +#define RVD_NOCACHE 128 + +/* Flags for add_vlink */ +#define AVL_UNION 1 /* Link is a union link */ + +/* Flags for vl_insert */ +#define VLI_NOCONFLICT 0 /* Do not insert links w/ conflicting names */ +#define VLI_ALLOW_CONF 1 /* Allow links with conflicting names */ +#define VLI_NOSORT 2 /* Allow conflicts and don't sort */ + +/* Flags for mapname */ +#define MAP_READWRITE 0 /* Named file to be read and written */ +#define MAP_READONLY 1 /* Named file to be read only */ + +/* Flags for modify_acl */ +#define MACL_NOSYSTEM 0x01 +#define MACL_NOSELF 0x02 +#define MACL_DEFAULT 0x08 +#define MACL_SET 0x0C +#define MACL_INSERT 0x14 +#define MACL_DELETE 0x10 +#define MACL_ADD 0x1C +#define MACL_SUBTRACT 0x18 +#define MACL_LINK 0x00 +#define MACL_DIRECTORY 0x20 +#define MACL_OBJECT 0x60 +#define MACL_INCLUDE 0x40 + +#define MACL_OP (MACL_DEFAULT|MACL_SET|MACL_INSERT|\ + MACL_DELETE|MACL_ADD|MACL_SUBTRACT) + +#define MACL_OTYPE (MACL_LINK|MACL_DIRECTORY|MACL_OBJECT|MACL_INCLUDE) + +/* Flags for dsrdir */ +#define DSRD_ATTRIBUTES 0x1 /* Fill in attributes for links */ + +/* Access methods returned by Pget_am */ +#define P_AM_ERROR 0 +#define P_AM_FTP 1 +#define P_AM_AFTP 2 /* Anonymous FTP */ +#define P_AM_NFS 4 +#define P_AM_KNFS 8 /* Kerberized NFS */ +#define P_AM_AFS 16 + +/* Return codes */ + +#define PSUCCESS 0 +#define PFAILURE 255 + +/* Hush up warnings. */ +void vllfree(); + +/* Procedures in libpfs.a */ + +char *pget_wdhost(), *pget_wdfile(), *pget_wd(), *pget_hdhost(); +char *pget_hdfile(), *pget_hd(), *pget_rdhost(), *pget_rdfile(); +char *pget_dhost(), *pget_dfile(), *pget_vsname(), *nlsindex(); +char *sindex(), *strtok(), *nxtline(), *unquote(), *stcopy(); +char *stcopyr(), *readheader(), *month_sname(); + +long asntotime(); +void procquery(); + +PTEXT ptalloc(); +PTEXT dirsend(); +void ptfree(); +void ptlfree(); + +PREQ pralloc(); +PREQ get_next_request(); + +VLINK rd_slink(); +VLINK rd_vlink(); +VLINK vl_delete(); +VLINK vlalloc(); +VLINK vlcopy(); +void vlfree(); + +PFILE pfalloc(); + +PATTRIB parse_attribute(); +PATTRIB atalloc(); +PATTRIB pget_at(); +void atfree(); +void atlfree(); + +ACL acalloc(); +ACL get_acl(); + +void stfree(); + +/* Miscellaneous useful definitions */ +#ifndef TRUE +#define TRUE 1 +#define FALSE 0 +#endif + +#define AUTHORIZED 1 +#define NOT_AUTHORIZED 0 +#define NEG_AUTHORIZED -1 + +#ifndef NULL +#define NULL 0 +#endif + +#define FAILED -1 +$EOD +$! +$CREATE [.archie]pmachine.h +$DECK +/* + * Miscellaneous system dependencies. + * + * I kept the name pmachine.h because it was already in all of the files...this + * barely resembles the pmachine.h that comes with the real Prospero, tho. + */ + +#ifdef u3b2 +# define USG +# define NOREGEX +# define MAXPATHLEN 1024 /* There's no maxpathlen in any 3b2 .h file. */ +#endif + +#ifdef hpux +# ifndef bcopy +# define FUNCS /* HP/UX 8.0 has the fns. */ +# endif +# define NOREGEX +# define NEED_STRING_H +#endif + +#if defined(USG) || defined(SYSV) +# define FUNCS +#endif + +#ifdef ISC +# define FUNCS +# define STRSPN +# define NOREGEX +#endif + +#ifdef CUTCP +# define FUNCS +# define NOREGEX +# define NEED_STRING_H +# define SELECTARG int +# define MSDOS +#endif + +#ifdef _AUX_SOURCE +# define AUX +# define NOREGEX +# define NBBY 8 /* Number of bits in a byte. */ +# define long Fd_mask; +# define NFDBITS (sizeof(Fd_mask) * NBBY) /* bits per mask */ +#endif + +#ifdef OS2 +# define NOREGEX +# include +#endif +#ifdef MSDOS +# define USG +# define NOREGEX +# include +# include +#endif + +#ifdef _AIX +# ifdef u370 +# define FUNCS +# endif /* AIX/370 */ +# define _NONSTD_TYPES +# define _BSD_INCLUDES +# define NEED_STRING_H +# define NEED_SELECT_H +# define NEED_TIME_H +#endif + +/* ==== */ +#ifdef FUNCS +# define index strchr +/* According to mycroft. */ +# ifdef _IBMR2 +char *strchr(); +# endif +# define rindex strrchr +# ifndef _AUX_SOURCE +# define bcopy(a,b,n) memcpy(b,a,n) +# define bzero(a,n) memset(a,0,n) +# ifdef _IBMR2 +char *memset(); +# endif +# endif +#endif + +#if defined(_IBMR2) || defined(_BULL_SOURCE) +# define NEED_SELECT_H +#endif +#if defined(USG) || defined(UTS) +# define NEED_STRING_H +#endif +#if defined(USG) || defined(UTS) || defined(_AUX_SOURCE) +# define NEED_TIME_H +# ifdef UTS +# define WANT_BOTH_TIME +# endif +#endif + +#ifdef VMS +/* Get the system status stuff. */ +# include +#endif /* VMS */ + +/* + * FD_SET: lib/pfs/dirsend.c, user/vget/ftp.c + */ +#ifndef CUTCP + +#define SELECTARG fd_set +#if !defined(FD_SET) && !defined(VMS) && !defined(NEED_SELECT_H) +#define FD_SETSIZE 32 +#define FD_SET(n, p) ((p)->fds_bits[(n)/NFDBITS] |= (1 << ((n) % NFDBITS))) +#define FD_CLR(n, p) ((p)->fds_bits[(n)/NFDBITS] &= ~(1 << ((n) % NFDBITS))) +#define FD_ISSET(n, p) ((p)->fds_bits[(n)/NFDBITS] & (1 << ((n) % NFDBITS))) +#define FD_ZERO(p) bzero((char *)(p), sizeof(*(p))) +#endif + +#endif /* not CUTCP */ +$EOD +$! +$CREATE [.archie]pprot.h +$DECK +/* + * Copyright (c) 1989, 1990, 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include + +#ifndef MAXPATHLEN +# ifdef VMS +# define MAXPATHLEN 32 +# else /* not VMS */ +# if defined(MSDOS) && !defined(OS2) +# define MAXPATHLEN 255 +# else /* not MSDOS */ +# ifdef ISC +# define MAXPATHLEN 512 +# else /* not Interactive..normal! (gasp) */ +# include +# endif /* ISC */ +# endif /* MSDOS && !OS2 */ +# endif /* VMS */ +#endif + +/* Protocol Definitions */ + +#define VFPROT_VNO 1 /* Protocol Version Number */ + +#define DIRSRV_PORT 1525 /* Server port used if not in srvtab */ +#define PROSPERO_PORT 191 /* Officially assigned prived port */ +#define PROS_FIRST_PRIVP 901 /* First privileged port to try */ +#define PROS_NUM_PRIVP 20 /* Number of privileged ports to try */ + +#define MAXPKT 1024 /* Max size of response from server */ +#define SEQ_SIZE 32 /* Max size of sequence text in resp */ +#define MAX_DIR_LINESIZE 160+MAXPATHLEN /* Max linesize in directory */ + +#define MAX_FWD_DEPTH 20 /* Max fwd pointers to follow */ + +#define S_AD_SZ sizeof(struct sockaddr_in) + +/* Replacement for strtok that doesn't keep state. Both the variable */ +/* S and the variable S_next must be defined. To initialize, assign */ +/* the string to be stepped through to S_next, then call get_token on */ +/* S. The first token will be in S, and S_next will point to the next */ +/* token. Like strtok, this macro does modify the string passed to it */ +#ifdef __GNUC__ +#define get_token(S,C) \ + do { \ + S = S##_next; \ + if(S) { \ + while(*S == C) S++; \ + S##_next = index(S,C); \ + if(S##_next) *(S##_next++) = '\0'; \ + if(!*S) S = NULL; \ + } \ + } while (0) +#else +#define get_token(S,C) \ + S = S/**/_next; \ + do { \ + if(S) { \ + while(*S == C) S++; \ + S/**/_next = index(S,C); \ + if(S/**/_next) *(S/**/_next++) = '\0'; \ + if(!*S) S = NULL; \ + } \ + } while (0) +#endif /* __GNUC__ */ +$EOD +$! +$CREATE [.archie]procquery.c +$DECK +/* + * procquery.c : Routines for processing results from Archie + * + * Originally part of the Prospero Archie client by Cliff Neuman (bcn@isi.edu). + * Modified by Brendan Kehoe (brendan@cs.widener.edu). + * Re-modified by George Ferguson (ferguson@cs.rochester.edu). + * + * Copyright (c) 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + * + */ + +#include +#include +#include +#include +#include +#include + +#ifdef NEED_TIME_H +# include +#else +# ifndef VMS +# include +# endif +#endif + +extern int client_dirsrv_timeout,client_dirsrv_retry; /* dirsend.c */ +extern char *progname; + + +/* + * Functions defined here + */ +void display_link(), procquery(); + +/* + * Data defined here + */ +extern int pwarn, perrno; +#ifdef DEBUG +int pfs_debug; +#endif +static struct tm *presenttime; +static char lastpath[MAX_VPATH] = "\001"; +static char lasthost[MAX_VPATH] = "\001"; + +/* - - - - - - - - */ +/* + * display_link : Prints the contents of the given virtual link. If + * listflag is 0, then this uses last{host,path} to save state + * between calls for a less verbose output. If listflag is non-zero + * then all information is printed every time. + */ +void +display_link(l,listflag) +VLINK l; +int listflag; +{ + PATTRIB ap; + char linkpath[MAX_VPATH]; + int dirflag = 0; +#ifdef MSDOS + unsigned long size = 0L; +#else + int size = 0; +#endif + char *modes = ""; + char archie_date[20]; + char *gt_date = ""; + int gt_year = 0; + int gt_mon = 0; + int gt_day = 0; + int gt_hour = 0; + int gt_min = 0; + + /* Initialize local buffers */ + *archie_date = '\0'; + + /* Remember if we're looking at a directory */ + if (sindex(l->type,"DIRECTORY")) + dirflag = 1; + else + dirflag = 0; + + /* Extract the linkpath from the filename */ + strcpy(linkpath,l->filename); + *(linkpath + (strlen(linkpath) - strlen(l->name) - 1)) = '\0'; + + /* Is this a new host? */ + if (strcmp(l->host,lasthost) != 0) { + if (!listflag) + printf("\nHost %s\n\n",l->host); + strcpy(lasthost,l->host); + *lastpath = '\001'; + } + + /* Is this a new linkpath (location)? */ + if(strcmp(linkpath,lastpath) != 0) { + if (!listflag) + printf(" Location: %s\n",(*linkpath ? linkpath : "/")); + strcpy(lastpath,linkpath); + } + + /* Parse the attibutes of this link */ + for (ap = l->lattrib; ap; ap = ap->next) { + if (strcmp(ap->aname,"SIZE") == 0) { +#ifdef MSDOS + sscanf(ap->value.ascii,"%lu",&size); +#else + sscanf(ap->value.ascii,"%d",&size); +#endif + } else if(strcmp(ap->aname,"UNIX-MODES") == 0) { + modes = ap->value.ascii; + } else if(strcmp(ap->aname,"LAST-MODIFIED") == 0) { + gt_date = ap->value.ascii; + sscanf(gt_date,"%4d%2d%2d%2d%2d",>_year, + >_mon, >_day, >_hour, >_min); + if ((12 * (presenttime->tm_year + 1900 - gt_year) + + presenttime->tm_mon - gt_mon) > 6) + sprintf(archie_date,"%s %2d %4d",month_sname(gt_mon), + gt_day, gt_year); + else + sprintf(archie_date,"%s %2d %02d:%02d",month_sname(gt_mon), + gt_day, gt_hour, gt_min); + } + } + + /* Print this link's information */ + if (listflag) +#if defined(MSDOS) + printf("%s %6lu %s %s%s\n",gt_date,size,l->host,l->filename, + (dirflag ? "/" : "")); +#else + printf("%s %6d %s %s%s\n",gt_date,size,l->host,l->filename, + (dirflag ? "/" : "")); +#endif + else +#ifdef MSDOS + printf(" %9s %s %10lu %s %s\n",(dirflag ? "DIRECTORY" : "FILE"), + modes,size,archie_date,l->name); +#else + printf(" %9s %s %10d %s %s\n",(dirflag ? "DIRECTORY" : "FILE"), + modes,size,archie_date,l->name); +#endif /* MSDOS */ + + + /* Free the attibutes */ + atlfree(l->lattrib); + l->lattrib = NULL; +} + +/* - - - - - - - - */ +/* + * procquery : Process the given query and display the results. If + * sortflag is non-zero, then the results are sorted by increasing + * date, else by host/filename. If listflag is non-zero then each + * entry is printed on a separate, complete line. Note that listflag + * is ignored by xarchie. + */ +void +procquery(host,str,max_hits,offset,query_type,sortflag,listflag) +char *host,*str; +int max_hits,offset; +char query_type; +int sortflag,listflag; +{ + VLINK l; + long now; + extern int rdgram_priority; + + /* initialize data structures for this query */ + (void)time(&now); + presenttime = localtime(&now); + + /* Do the query */ + if (sortflag == 1) + l = archie_query(host,str,max_hits,offset,query_type,AQ_INVDATECMP,0); + else + l = archie_query(host,str,max_hits,offset,query_type,NULL,0); + + /* Error? */ + if (perrno != PSUCCESS) { + if (p_err_text[perrno]) { + if (*p_err_string) + fprintf(stderr, "%s: failed: %s - %s\n", progname, + p_err_text[perrno], p_err_string); + else + fprintf(stderr, "%s failed: %s\n", progname, p_err_text[perrno]); + } else + fprintf(stderr, "%s failed: Undefined error %d (prospero)", perrno); + } + + /* Warning? */ + if (pwarn != PNOWARN) { + if (*p_warn_string) + fprintf(stderr, "%s: Warning! %s - %s\n", progname, + p_warn_text[pwarn], p_warn_string); + else + fprintf(stderr, "%s: Warning! %s\n", progname, p_warn_text[pwarn]); + } + + + /* Display the results */ + + if (l == (VLINK)NULL && pwarn == PNOWARN && perrno == PSUCCESS) { + if (! listflag) puts ("No matches."); +#ifdef CUTCP + netshut(); +#endif + exit (1); + } + + *lasthost = '\001'; + *lastpath = '\001'; + while (l != NULL) { + display_link(l,listflag); + l = l->next; + } +} +$EOD +$! +$CREATE [.archie]ptalloc.c +$DECK +/* + * Copyright (c) 1989, 1990, 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include +#include + +#include +#include /* for correct definition of ZERO */ +#ifdef MSDOS +# define free _pfree /* otherwise we get conflicts with free() */ +#endif + +static PTEXT free = NULL; +int ptext_count = 0; +int ptext_max = 0; + +/* + * ptalloc - allocate and initialize ptext structure + * + * PTALLOC returns a pointer to an initialized structure of type + * PTEXT. If it is unable to allocate such a structure, it + * returns NULL. + */ +PTEXT +ptalloc() + { + PTEXT vt; + if(free) { + vt = free; + free = free->next; + } + else { + vt = (PTEXT) malloc(sizeof(PTEXT_ST)); + if (!vt) return(NULL); + ptext_max++; + } + ptext_count++; + + /* nearly all parts are 0 [or NULL] */ + ZERO(vt); + /* The offset is to leave room for additional headers */ + vt->start = vt->dat + MAX_PTXT_HDR; + + return(vt); + } + +/* + * ptfree - free a VTEXT structure + * + * VTFREE takes a pointer to a VTEXT structure and adds it to + * the free list for later reuse. + */ +void +ptfree(vt) + PTEXT vt; + { + vt->next = free; + vt->previous = NULL; + free = vt; + ptext_count--; + } + +/* + * ptlfree - free a VTEXT structure + * + * VTLFREE takes a pointer to a VTEXT structure frees it and any linked + * VTEXT structures. It is used to free an entrie list of VTEXT + * structures. + */ +void +ptlfree(vt) + PTEXT vt; + { + PTEXT nxt; + + while(vt != NULL) { + nxt = vt->next; + ptfree(vt); + vt = nxt; + } + } + +$EOD +$! +$CREATE [.archie]rdgram.h +$DECK +/* + * Copyright (c) 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include + +/* Queuing priorities for datagrams */ +#define RDGRAM_MAX_PRI 32765 /* Maximum user proiority */ +#define RDGRAM_MAX_SPRI 32767 /* Maximum priority for system use */ +#define RDGRAM_MIN_PRI -32765 /* Maximum user proiority */ +#define RDGRAM_MIN_SPRI -32768 /* Maximum priority for system use */ + +int rdgram_priority = 0; +$EOD +$! +$CREATE [.archie]regex.c +$DECK +#include + +#ifdef NOREGEX +/* + * These routines are BSD regex(3)/ed(1) compatible regular-expression + * routines written by Ozan S. Yigit, Computer Science, York University. + * Parts of the code that are not needed by Prospero have been removed, + * but most of the accompanying information has been left intact. + * This file is to be included on those operating systems that do not + * support re_comp and re_exec. + */ + +/* + * regex - Regular expression pattern matching + * and replacement + * + * by: Ozan S. Yigit (oz@nexus.yorku.ca) + * Dept. of Computing Services + * York University + * + * These routines are the PUBLIC DOMAIN equivalents + * of regex routines as found in 4.nBSD UN*X, with minor + * extensions. + * + * Modification history: + * + * $Log: c-archie-1.3.2-vms.com,v $ +# Revision 1.1.1.1 1994/04/28 00:56:12 bajan +# Initial import +# + * Revision 1.3 89/04/01 14:18:09 oz + * Change all references to a dfa: this is actually an nfa. + * + * Revision 1.2 88/08/28 15:36:04 oz + * Use a complement bitmap to represent NCL. + * This removes the need to have seperate + * code in the pmatch case block - it is + * just CCL code now. + * + * Use the actual CCL code in the CLO + * section of pmatch. No need for a recursive + * pmatch call. + * + * Use a bitmap table to set char bits in an + * 8-bit chunk. + * + * Routines: + * re_comp: compile a regular expression into + * a NFA. + * + * char *re_comp(s) + * char *s; + * + * re_exec: execute the NFA to match a pattern. + * + * int re_exec(s) + * char *s; + * + * Regular Expressions: + * + * [1] char matches itself, unless it is a special + * character (metachar): . \ [ ] * + ^ $ + * + * [2] . matches any character. + * + * [3] \ matches the character following it, except + * when followed by a left or right round bracket, + * a digit 1 to 9 or a left or right angle bracket. + * (see [7], [8] and [9]) + * It is used as an escape character for all + * other meta-characters, and itself. When used + * in a set ([4]), it is treated as an ordinary + * character. + * + * [4] [set] matches one of the characters in the set. + * If the first character in the set is "^", + * it matches a character NOT in the set, i.e. + * complements the set. A shorthand S-E is + * used to specify a set of characters S upto + * E, inclusive. The special characters "]" and + * "-" have no special meaning if they appear + * as the first chars in the set. + * examples: match: + * + * [a-z] any lowercase alpha + * + * [^]-] any char except ] and - + * + * [^A-Z] any char except uppercase + * alpha + * + * [a-zA-Z] any alpha + * + * [5] * any regular expression form [1] to [4], followed by + * closure char (*) matches zero or more matches of + * that form. + * + * [6] + same as [5], except it matches one or more. + * + * [7] a regular expression in the form [1] to [10], enclosed + * as \(form\) matches what form matches. The enclosure + * creates a set of tags, used for [8] and for + * pattern substution. The tagged forms are numbered + * starting from 1. + * + * [8] a \ followed by a digit 1 to 9 matches whatever a + * previously tagged regular expression ([7]) matched. + * + * [9] \< a regular expression starting with a \< construct + * \> and/or ending with a \> construct, restricts the + * pattern matching to the beginning of a word, and/or + * the end of a word. A word is defined to be a character + * string beginning and/or ending with the characters + * A-Z a-z 0-9 and _. It must also be preceded and/or + * followed by any character outside those mentioned. + * + * [10] a composite regular expression xy where x and y + * are in the form [1] to [10] matches the longest + * match of x followed by a match for y. + * + * [11] ^ a regular expression starting with a ^ character + * $ and/or ending with a $ character, restricts the + * pattern matching to the beginning of the line, + * or the end of line. [anchors] Elsewhere in the + * pattern, ^ and $ are treated as ordinary characters. + * + * + * Acknowledgements: + * + * HCR's Hugh Redelmeier has been most helpful in various + * stages of development. He convinced me to include BOW + * and EOW constructs, originally invented by Rob Pike at + * the University of Toronto. + * + * References: + * Software tools Kernighan & Plauger + * Software tools in Pascal Kernighan & Plauger + * Grep [rsx-11 C dist] David Conroy + * ed - text editor Un*x Programmer's Manual + * Advanced editing on Un*x B. W. Kernighan + * regexp routines Henry Spencer + * + * Notes: + * + * This implementation uses a bit-set representation for character + * classes for speed and compactness. Each character is represented + * by one bit in a 128-bit block. Thus, CCL always takes a + * constant 16 bytes in the internal nfa, and re_exec does a single + * bit comparison to locate the character in the set. + * + * Examples: + * + * pattern: foo*.* + * compile: CHR f CHR o CLO CHR o END CLO ANY END END + * matches: fo foo fooo foobar fobar foxx ... + * + * pattern: fo[ob]a[rz] + * compile: CHR f CHR o CCL bitset CHR a CCL bitset END + * matches: fobar fooar fobaz fooaz + * + * pattern: foo\\+ + * compile: CHR f CHR o CHR o CHR \ CLO CHR \ END END + * matches: foo\ foo\\ foo\\\ ... + * + * pattern: \(foo\)[1-3]\1 (same as foo[1-3]foo) + * compile: BOT 1 CHR f CHR o CHR o EOT 1 CCL bitset REF 1 END + * matches: foo1foo foo2foo foo3foo + * + * pattern: \(fo.*\)-\1 + * compile: BOT 1 CHR f CHR o CLO ANY END EOT 1 CHR - REF 1 END + * matches: foo-foo fo-fo fob-fob foobar-foobar ... + * + */ + +#define MAXNFA 1024 +#define MAXTAG 10 + +#define OKP 1 +#define NOP 0 + +#define CHR 1 +#define ANY 2 +#define CCL 3 +#define BOL 4 +#define EOL 5 +#define BOT 6 +#define EOT 7 +#define BOW 8 +#define EOW 9 +#define REF 10 +#define CLO 11 + +#define END 0 + +/* + * The following defines are not meant + * to be changeable. They are for readability + * only. + * + */ +#define MAXCHR 128 +#define CHRBIT 8 +#define BITBLK MAXCHR/CHRBIT +#define BLKIND 0170 +#define BITIND 07 + +#define ASCIIB 0177 + +typedef /*unsigned*/ char CHAR; + +static int tagstk[MAXTAG]; /* subpat tag stack..*/ +static CHAR nfa[MAXNFA]; /* automaton.. */ +static int sta = NOP; /* status of lastpat */ + +static CHAR bittab[BITBLK]; /* bit table for CCL */ + /* pre-set bits... */ +static CHAR bitarr[] = {1,2,4,8,16,32,64,128}; + +static int internal_error; + +static void +chset(c) +register CHAR c; +{ + bittab[((c) & BLKIND) >> 3] |= bitarr[(c) & BITIND]; +} + +#define badpat(x) return (*nfa = END, x) +#define store(x) *mp++ = x + +char * +re_comp(pat) +char *pat; +{ + register char *p; /* pattern pointer */ + register CHAR *mp = nfa; /* nfa pointer */ + register CHAR *lp; /* saved pointer.. */ + register CHAR *sp = nfa; /* another one.. */ + + register int tagi = 0; /* tag stack index */ + register int tagc = 1; /* actual tag count */ + + register int n; + register CHAR mask; /* xor mask -CCL/NCL */ + int c1, c2; + + if (!pat || !*pat) + if (sta) + return 0; + else + badpat("No previous regular expression"); + sta = NOP; + + for (p = pat; *p; p++) { + lp = mp; + switch(*p) { + + case '.': /* match any char.. */ + store(ANY); + break; + + case '^': /* match beginning.. */ + if (p == pat) + store(BOL); + else { + store(CHR); + store(*p); + } + break; + + case '$': /* match endofline.. */ + if (!*(p+1)) + store(EOL); + else { + store(CHR); + store(*p); + } + break; + + case '[': /* match char class..*/ + store(CCL); + + if (*++p == '^') { + mask = 0377; + p++; + } + else + mask = 0; + + if (*p == '-') /* real dash */ + chset(*p++); + if (*p == ']') /* real brac */ + chset(*p++); + while (*p && *p != ']') { + if (*p == '-' && *(p+1) && *(p+1) != ']') { + p++; + c1 = *(p-2) + 1; + c2 = *p++; + while (c1 <= c2) + chset(c1++); + } +#ifdef EXTEND + else if (*p == '\\' && *(p+1)) { + p++; + chset(*p++); + } +#endif + else + chset(*p++); + } + if (!*p) + badpat("Missing ]"); + + for (n = 0; n < BITBLK; bittab[n++] = (char) 0) + store(mask ^ bittab[n]); + + break; + + case '*': /* match 0 or more.. */ + case '+': /* match 1 or more.. */ + if (p == pat) + badpat("Empty closure"); + lp = sp; /* previous opcode */ + if (*lp == CLO) /* equivalence.. */ + break; + switch(*lp) { + + case BOL: + case BOT: + case EOT: + case BOW: + case EOW: + case REF: + badpat("Illegal closure"); + default: + break; + } + + if (*p == '+') + for (sp = mp; lp < sp; lp++) + store(*lp); + + store(END); + store(END); + sp = mp; + while (--mp > lp) + *mp = mp[-1]; + store(CLO); + mp = sp; + break; + + case '\\': /* tags, backrefs .. */ + switch(*++p) { + + case '(': + if (tagc < MAXTAG) { + tagstk[++tagi] = tagc; + store(BOT); + store(tagc++); + } + else + badpat("Too many \\(\\) pairs"); + break; + case ')': + if (*sp == BOT) + badpat("Null pattern inside \\(\\)"); + if (tagi > 0) { + store(EOT); + store(tagstk[tagi--]); + } + else + badpat("Unmatched \\)"); + break; + case '<': + store(BOW); + break; + case '>': + if (*sp == BOW) + badpat("Null pattern inside \\<\\>"); + store(EOW); + break; + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + n = *p-'0'; + if (tagi > 0 && tagstk[tagi] == n) + badpat("Cyclical reference"); + if (tagc > n) { + store(REF); + store(n); + } + else + badpat("Undetermined reference"); + break; +#ifdef EXTEND + case 'b': + store(CHR); + store('\b'); + break; + case 'n': + store(CHR); + store('\n'); + break; + case 'f': + store(CHR); + store('\f'); + break; + case 'r': + store(CHR); + store('\r'); + break; + case 't': + store(CHR); + store('\t'); + break; +#endif + default: + store(CHR); + store(*p); + } + break; + + default : /* an ordinary char */ + store(CHR); + store(*p); + break; + } + sp = lp; + } + if (tagi > 0) + badpat("Unmatched \\("); + store(END); + sta = OKP; + return 0; +} + + +static char *bol; +static char *bopat[MAXTAG]; +static char *eopat[MAXTAG]; +char *pmatch(); + +/* + * re_exec: + * execute nfa to find a match. + * + * special cases: (nfa[0]) + * BOL + * Match only once, starting from the + * beginning. + * CHR + * First locate the character without + * calling pmatch, and if found, call + * pmatch for the remaining string. + * END + * re_comp failed, poor luser did not + * check for it. Fail fast. + * + * If a match is found, bopat[0] and eopat[0] are set + * to the beginning and the end of the matched fragment, + * respectively. + * + */ + +int +re_exec(lp) +register char *lp; +{ + register char c; + register char *ep = 0; + register CHAR *ap = nfa; + + bol = lp; + + bopat[0] = 0; + bopat[1] = 0; + bopat[2] = 0; + bopat[3] = 0; + bopat[4] = 0; + bopat[5] = 0; + bopat[6] = 0; + bopat[7] = 0; + bopat[8] = 0; + bopat[9] = 0; + + switch(*ap) { + + case BOL: /* anchored: match from BOL only */ + ep = pmatch(lp,ap); + break; + case CHR: /* ordinary char: locate it fast */ + c = *(ap+1); + while (*lp && *lp != c) + lp++; + if (!*lp) /* if EOS, fail, else fall thru. */ + return 0; + default: /* regular matching all the way. */ + while (*lp) { + if ((ep = pmatch(lp,ap))) + break; + lp++; + } + break; + case END: /* munged automaton. fail always */ + return 0; + } + if (!ep) + return 0; + + if (internal_error) + return -1; + + bopat[0] = lp; + eopat[0] = ep; + return 1; +} + +/* + * pmatch: + * internal routine for the hard part + * + * This code is mostly snarfed from an early + * grep written by David Conroy. The backref and + * tag stuff, and various other mods are by oZ. + * + * special cases: (nfa[n], nfa[n+1]) + * CLO ANY + * We KNOW ".*" will match ANYTHING + * upto the end of line. Thus, go to + * the end of line straight, without + * calling pmatch recursively. As in + * the other closure cases, the remaining + * pattern must be matched by moving + * backwards on the string recursively, + * to find a match for xy (x is ".*" and + * y is the remaining pattern) where + * the match satisfies the LONGEST match + * for x followed by a match for y. + * CLO CHR + * We can again scan the string forward + * for the single char without recursion, + * and at the point of failure, we execute + * the remaining nfa recursively, as + * described above. + * + * At the end of a successful match, bopat[n] and eopat[n] + * are set to the beginning and end of subpatterns matched + * by tagged expressions (n = 1 to 9). + * + */ + +/* + * character classification table for word boundary + * operators BOW and EOW. the reason for not using + * ctype macros is that we can let the user add into + * our own table. see re_modw. This table is not in + * the bitset form, since we may wish to extend it + * in the future for other character classifications. + * + * TRUE for 0-9 A-Z a-z _ + */ +static char chrtyp[MAXCHR] = { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, + 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 0, 0, 0, 0, 0 + }; + +#define inascii(x) (0177&(x)) +#define iswordc(x) chrtyp[inascii(x)] +#define isinset(x,y) ((x)[((y)&BLKIND)>>3] & bitarr[(y)&BITIND]) + +/* + * skip values for CLO XXX to skip past the closure + * + */ + +#define ANYSKIP 2 /* [CLO] ANY END ... */ +#define CHRSKIP 3 /* [CLO] CHR chr END ... */ +#define CCLSKIP 18 /* [CLO] CCL 16bytes END ... */ + +static char * +pmatch(lp, ap) +register char *lp; +register CHAR *ap; +{ + register int op, c, n; + register char *e; /* extra pointer for CLO */ + register char *bp; /* beginning of subpat.. */ + register char *ep; /* ending of subpat.. */ + char *are; /* to save the line ptr. */ + + while ((op = *ap++) != END) + switch(op) { + + case CHR: + if (*lp++ != *ap++) + return 0; + break; + case ANY: + if (!*lp++) + return 0; + break; + case CCL: + c = *lp++; + if (!isinset(ap,c)) + return 0; + ap += BITBLK; + break; + case BOL: + if (lp != bol) + return 0; + break; + case EOL: + if (*lp) + return 0; + break; + case BOT: + bopat[*ap++] = lp; + break; + case EOT: + eopat[*ap++] = lp; + break; + case BOW: + if (lp!=bol && iswordc(lp[-1]) || !iswordc(*lp)) + return 0; + break; + case EOW: + if (lp==bol || !iswordc(lp[-1]) || iswordc(*lp)) + return 0; + break; + case REF: + n = *ap++; + bp = bopat[n]; + ep = eopat[n]; + while (bp < ep) + if (*bp++ != *lp++) + return 0; + break; + case CLO: + are = lp; + switch(*ap) { + + case ANY: + while (*lp) + lp++; + n = ANYSKIP; + break; + case CHR: + c = *(ap+1); + while (*lp && c == *lp) + lp++; + n = CHRSKIP; + break; + case CCL: + while ((c = *lp) && isinset(ap+1,c)) + lp++; + n = CCLSKIP; + break; + default: + internal_error++; + return 0; + } + + ap += n; + + while (lp >= are) { + if (e = pmatch(lp, ap)) + return e; + --lp; + } + return 0; + default: + internal_error++; + return 0; + } + return lp; +} +#endif /* Need regex libraries? Compile to nothing if not. */ +$EOD +$! +$CREATE [.archie]regex.h +$DECK +/* + * regex.h : External defs for Ozan Yigit's regex functions, for systems + * that don't have them builtin. See regex.c for copyright and other + * details. + * + * Note that this file can be included even if we're linking against the + * system routines, since the interface is (deliberately) identical. + * + * George Ferguson, ferguson@cs.rochester.edu, 11 Sep 1991. + */ + +#if defined(_AUX_SOURCE) || defined(USG) +/* Let them use ours if they wish. */ +# ifndef NOREGEX +extern char *regcmp(); +extern char *regex(); +#define re_comp regcmp +#define re_exec regex +# endif +#else +extern char *re_comp(); +extern int re_exec(); +#endif +$EOD +$! +$CREATE [.archie]stcopy.c +$DECK +/* + * Copyright (c) 1989, 1990, 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include +#include +#include + +#ifdef NEED_STRING_H +# include +#else +# include +#endif + +#if defined(MSDOS) +# include +#endif + +char *stcopyr(); + +int string_count = 0; +int string_max = 0; + +/* + * stcopy - allocate space for and copy a string + * + * STCOPY takes a string as an argument, allocates space for + * a copy of the string, copies the string to the allocated space, + * and returns a pointer to the copy. + */ + +char * +stcopy(st) + char *st; + { + if (!st) return(NULL); + if (string_max < ++string_count) string_max = string_count; + + return strcpy((char *)malloc(strlen(st) + 1), st); + } + +/* + * stcopyr - copy a string allocating space if necessary + * + * STCOPYR takes a string, S, as an argument, and a pointer to a second + * string, R, which is to be replaced by S. If R is long enough to + * hold S, S is copied. Otherwise, new space is allocated, and R is + * freed. S is then copied to the newly allocated space. If S is + * NULL, then R is freed and NULL is returned. + * + * In any event, STCOPYR returns a pointer to the new copy of S, + * or a NULL pointer. + */ +char * +stcopyr(s,r) + char *s; + char *r; + { + int sl; + + if(!s && r) { + free(r); + string_count--; + return(NULL); + } + else if (!s) return(NULL); + + sl = strlen(s) + 1; + + if(r) { + if ((strlen(r) + 1) < sl) { + free(r); + r = (char *) malloc(sl); + } + } + else { + r = (char *) malloc(sl); + string_count++; + if(string_max < string_count) string_max = string_count; + } + + return strcpy(r,s); + } + +/* + * stfree - free space allocated by stcopy or stalloc + * + * STFREE takes a string that was returned by stcopy or stalloc + * and frees the space that was allocated for the string. + */ +void +stfree(st) + char *st; + { + if(st) { + free(st); + string_count--; + } + } + + +$EOD +$! +$CREATE [.archie]support.c +$DECK +/* + * Copyright (c) 1989, 1990, 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +/* + * Miscellaneous routines pulled from ~beta/lib/pfs and ~beta/lib/filters + */ + +#include +#include + +#include + +#ifdef VMS +# ifdef WOLLONGONG +# include "twg$tcp:[netdist.include]netdb.h" +# else /* not Wollongong */ +# ifdef UCX +# include netdb +# else /* Multinet */ +# include "multinet_root:[multinet.include]netdb.h" +# endif +# endif +# include +#else /* not VMS */ +# include +# include +# ifdef NEED_STRING_H +# include +# else +# include +# endif +# ifndef CUTCP +# include +# endif +# if !defined(MSDOS) || defined(OS2) +# include +# include +# endif +#endif /* VMS */ + +#include +#include +#include +#include +#include + +#include "regex.h" + +int pfs_enable = PMAP_ATSIGN; + +#ifndef FALSE +# define TRUE 1 +# define FALSE 0 +#endif + +/* + * wcmatch - Match string s against template containing widlcards + * + * WCMATCH takes a string and a template, and returns + * true if the string matches the template, and + * FALSE otherwise. + * + * ARGS: s - string to be tested + * template - Template containing optional wildcards + * + * RETURNS: TRUE (non-zero) on match. FALSE (0) otherwise. + * + * NOTE: If template is NULL, will return TRUE. + * + */ +int +wcmatch(s,template) + char *s; + char *template; + { + char temp[200]; + char *p = temp; + + if(!template) return(TRUE); + *p++ = '^'; + + while(*template) { + if(*template == '*') {*(p++)='.'; *(p++) = *(template++);} + else if(*template == '?') {*(p++)='.';template++;} + else if(*template == '.') {*(p++)='\\';*(p++)='.';template++;} + else if(*template == '[') {*(p++)='\\';*(p++)='[';template++;} + else if(*template == '$') {*(p++)='\\';*(p++)='$';template++;} + else if(*template == '^') {*(p++)='\\';*(p++)='^';template++;} + else if(*template == '\\') {*(p++)='\\';*(p++)='\\';template++;} + else *(p++) = *(template++); + } + + *p++ = '$'; + *p++ = '\0'; + + if(re_comp(temp)) return(FALSE); + +#ifdef AUX + if (re_exec(s) == (char *)NULL) + return 0; + return 1; +#else + return(re_exec(s)); +#endif + } + +/* + * ul_insert - Insert a union link at the right location + * + * UL_INSERT takes a directory and a union link to be added + * to a the list of union links in the directory. It then + * inserts the union link in the right spot in the linked + * list of union links associated with that directory. + * + * If an identical link already exists, then the link which + * would be evaluated earlier (closer to the front of the list) + * wins and the other one is freed. If this happens, an error + * will also be returned. + * + * ARGS: ul - link to be inserted + * vd - directory to get link + * p - vl that this link will apper after + * NULL - This vl will go at end of list + * vd - This vl will go at head of list + * + * RETURNS: Success, or UL_INSERT_ALREADY_THERE or UL_INSERT_SUPERSEDING + */ +int +ul_insert(ul,vd,p) + VLINK ul; /* Link to be inserted */ + PVDIR vd; /* Directory to receive link */ + VLINK p; /* Union link to appear prior to new one */ + { + VLINK current; + + /* This is the first ul in the directory */ + if(vd->ulinks == NULL) { + vd->ulinks = ul; + ul->previous = NULL; + ul->next = NULL; + return(PSUCCESS); + } + + /* This ul will go at the head of the list */ + if(p == (VLINK) vd) { + ul->next = vd->ulinks; + ul->next->previous = ul; + vd->ulinks = ul; + ul->previous = NULL; + } + /* Otherwise, decide if it must be inserted at all */ + /* If an identical link appears before the position */ + /* at which the new one is to be inserted, we can */ + /* return without inserting it */ + else { + current = vd->ulinks; + + while(current) { + /* p == NULL means we insert after last link */ + if(!p && (current->next == NULL)) + p = current; + + if(vl_comp(current,ul) == 0) { + vlfree(ul); + return(UL_INSERT_ALREADY_THERE); + } + + if(current == p) break; + current = current->next; + } + + /* If current is null, p was not found */ + if(current == NULL) + return(UL_INSERT_POS_NOTFOUND); + + /* Insert ul */ + ul->next = p->next; + p->next = ul; + ul->previous = p; + if(ul->next) ul->next->previous = ul; + } + + /* Check for identical links after ul */ + current = ul->next; + + while(current) { + if(vl_comp(current,ul) == 0) { + current->previous->next = current->next; + if(current->next) + current->next->previous = current->previous; + vlfree(current); + return(UL_INSERT_SUPERSEDING); + } + current = current->next; + } + + return(PSUCCESS); + } + +/* + * vl_insert - Insert a directory link at the right location + * + * VL_INSERT takes a directory and a link to be added to a + * directory and inserts it in the linked list of links for + * that directory. + * + * If a link already exists with the same name, and if the + * information associated with the new link matches that in + * the existing link, an error is returned. If the information + * associated with the new link is different, but the magic numbers + * match, then the new link will be added as a replica of the + * existing link. If the magic numbers do not match, the new + * link will only be added to the list of "replicas" if the + * allow_conflict flag has been set. + * + * If the link is not added, an error is returned and the link + * is freed. Ordering for the list of links is by the link name. + * + * If vl is a union link, then VL_INSERT calls ul_insert with an + * added argument indicating the link is to be included at the + * end of the union link list. + * + * ARGS: vl - Link to be inserted, vd - directory to get link + * allow_conflict - insert links with conflicting names + * + * RETURNS: Success, or VL_INSERT_ALREADY_THERE + */ +int +vl_insert(vl,vd,allow_conflict) + VLINK vl; /* Link to be inserted */ + PVDIR vd; /* Directory to receive link */ + int allow_conflict; /* Allow duplicate names */ + { + VLINK current; /* To step through list */ + VLINK crep; /* To step through list of replicas */ + int retval; /* Temp for checking returned values */ + + /* This can also be used to insert union links at end of list */ + if(vl->linktype == 'U') return(ul_insert(vl,vd,NULL)); + + /* If this is the first link in the directory */ + if(vd->links == NULL) { + vd->links = vl; + vl->previous = NULL; + vl->next = NULL; + vd->lastlink = vl; + return(PSUCCESS); + } + + /* If no sorting is to be done, just insert at end of list */ + if(allow_conflict == VLI_NOSORT) { + vd->lastlink->next = vl; + vl->previous = vd->lastlink; + vl->next = NULL; + vd->lastlink = vl; + return(PSUCCESS); + } + + /* If it is to be inserted at start of list */ + if(vl_comp(vl,vd->links) < 0) { + vl->next = vd->links; + vl->previous = NULL; + vl->next->previous = vl; + vd->links = vl; + return(PSUCCESS); + } + + current = vd->links; + + /* Otherwise, we must find the right spot to insert it */ + while((retval = vl_comp(vl,current)) > 0) { + if(!current->next) { + /* insert at end */ + vl->previous = current; + vl->next = NULL; + current->next = vl; + vd->lastlink = vl; + return(PSUCCESS); + } + current = current->next; + } + + /* If we found an equivilant entry already in list */ + if(!retval) { + if(vl_equal(vl,current)) { + vlfree(vl); + return(VL_INSERT_ALREADY_THERE); + } + if((allow_conflict == VLI_NOCONFLICT) && + ((vl->f_magic_no != current->f_magic_no) || + (vl->f_magic_no==0))) + return(VL_INSERT_CONFLICT); + /* Insert the link into the list of "replicas" */ + /* If magic is 0, then create a pseudo magic number */ + if(vl->f_magic_no == 0) vl->f_magic_no = -1; + crep = current->replicas; + if(!crep) { + current->replicas = vl; + vl->next = NULL; + vl->previous = NULL; + } + else { + while(crep->next) { + /* If magic was 0, then we need a unique magic number */ + if((crep->f_magic_no < 0) && (vl->f_magic_no < 1)) + (vl->f_magic_no)--; + crep = crep->next; + } + /* If magic was 0, then we need a unique magic number */ + if((crep->f_magic_no < 0) && (vl->f_magic_no < 1)) + (vl->f_magic_no)--; + crep->next = vl; + vl->previous = crep; + vl->next = NULL; + } + return(PSUCCESS); + } + + /* We found the spot where vl is to be inserted */ + vl->next = current; + vl->previous = current->previous; + current->previous = vl; + vl->previous->next = vl; + return(PSUCCESS); + } + +/* + * nlsindex - Find first instance of string 2 in string 1 following newline + * + * NLSINDEX scans string 1 for the first instance of string + * 2 that immediately follows a newline. If found, NLSINDEX + * returns a pointer to the first character of that instance. + * If no instance is found, NLSINDEX returns NULL (0). + * + * NOTE: This function is only useful for searching strings that + * consist of multiple lines. s1 is assumed to be preceeded + * by a newline. Thus, if s2 is at the start of s1, it will + * be found. + * ARGS: s1 - string to be searched + * s2 - string to be found + * RETURNS: First instance of s2 in s1, or NULL (0) if not found + */ +char * +nlsindex(s1,s2) + char *s1; /* String to be searched */ + char *s2; /* String to be found */ + { + register int s2len = strlen(s2); + char *curline = s1; /* Pointer to start of current line */ + + /* In case s2 appears at start of s1 */ + if(strncmp(curline,s2,s2len) == 0) + return(curline); + + /* Check remaining lines of s1 */ + while((curline = (char *) index(curline,'\n')) != NULL) { + curline++; + if(strncmp(curline,s2,s2len) == 0) + return(curline); + } + + /* We didn't find it */ + return(NULL); + } + +/* + * month_sname - Return a month name from it's number + * + * MONTH_SNAME takes a number in the range 0 + * to 12 and returns a pointer to a string + * representing the three letter abbreviation + * for that month. If the argument is out of + * range, MONTH_SNAME returns a pointer to "Unk". + * + * ARGS: n - Number of the month + * RETURNS: Abbreviation for selected month + */ +char *month_sname(n) + int n; /* Month number */ +{ + static char *name[] = { "Unk", + "Jan","Feb","Mar","Apr","May","Jun", + "Jul","Aug","Sep","Oct","Nov","Dec" + }; + return((n < 1 || n > 12) ? name[0] : name[n]); +} + +/* + * sindex - Find first instance of string 2 in string 1 + * + * SINDEX scans string 1 for the first instance of string + * 2. If found, SINDEX returns a pointer to the first + * character of that instance. If no instance is found, + * SINDEX returns NULL (0). + * + * ARGS: s1 - string to be searched + * s2 - string to be found + * RETURNS: First instance of s2 in s1, or NULL (0) if not found + */ +char * +sindex(s1,s2) + char *s1; /* String to be searched */ + char *s2; /* String to be found */ + { + register int s2len = strlen(s2); + char *s = s1; /* Temp pointer to string */ + + /* Check for first character of s2 */ + while((s = (char *) index(s,*s2)) != NULL) { + if(strncmp(s,s2,s2len) == 0) + return(s); + s++; + } + + /* We didn't find it */ + return(NULL); + } + +int +scan_error(erst) + char *erst; + { + *p_err_string = '\0'; + + if(strncmp(erst,"NOT-A-DIRECTORY",15) == 0) + return(DIRSRV_NOT_DIRECTORY); + + if(strncmp(erst,"UNIMPLEMENTED",13) == 0) { + perrno = DIRSRV_UNIMPLEMENTED; + sscanf(erst+13,"%*[^\n \t\r]%*[ \t]%[^\n]",p_err_string); + return(perrno); + } + + if(strncmp(erst,"WARNING ",8) == 0) { + erst += 8; + *p_warn_string = '\0'; + sscanf(erst,"%*[^\n \t\r]%*[ \t]%[^\n]",p_warn_string); + /* Return values for warnings are negative */ + if(strncmp(erst,"OUT-OF-DATE",11) == 0) { + pwarn = PWARN_OUT_OF_DATE; + return(PSUCCESS); + } + if(strncmp(erst,"MESSAGE",7) == 0) { + pwarn = PWARN_MSG_FROM_SERVER; + return(PSUCCESS); + } + pwarn = PWARNING; + sscanf(erst,"%[^\n]",p_warn_string); + return(PSUCCESS); + } + else if(strncmp(erst,"ERROR",5) == 0) { + if(*(erst+5)) sscanf(erst+6,"%[^\n]",p_err_string); + perrno = DIRSRV_ERROR; + return(perrno); + } + /* The rest start with "FAILURE" */ + else if(strncmp(erst,"FAILURE",7) != 0) { + /* Unrecognized - Give warning, but return PSUCCESS */ + if(pwarn == 0) { + *p_warn_string = '\0'; + pwarn = PWARN_UNRECOGNIZED_RESP; + sscanf(erst,"%[^\n]",p_warn_string); + } + return(PSUCCESS); + } + + if(strncmp(erst,"FAILURE ",8) != 0) { + perrno = PFAILURE; + return(perrno); + } + erst += 8; + + sscanf(erst,"%*[^\n \t\r]%*[ \t]%[^\n]",p_err_string); + + /* Still to add */ + /* DIRSRV_AUTHENT_REQ 242 */ + /* DIRSRV_BAD_VERS 245 */ + + if(strncmp(erst,"NOT-FOUND",9) == 0) + perrno = DIRSRV_NOT_FOUND; + else if(strncmp(erst,"NOT-AUTHORIZED",13) == 0) + perrno = DIRSRV_NOT_AUTHORIZED; + else if(strncmp(erst,"ALREADY-EXISTS",14) == 0) + perrno = DIRSRV_ALREADY_EXISTS; + else if(strncmp(erst,"NAME-CONFLICT",13) == 0) + perrno = DIRSRV_NAME_CONFLICT; + else if(strncmp(erst,"SERVER-FAILED",13) == 0) + perrno = DIRSRV_SERVER_FAILED; + /* Use it whether it starts with FAILURE or not */ + else if(strncmp(erst,"NOT-A-DIRECTORY",15) == 0) + perrno = DIRSRV_NOT_DIRECTORY; + else perrno = PFAILURE; + + return(perrno); + } + +PATTRIB +parse_attribute(line) + char *line; + { + char l_precedence[MAX_DIR_LINESIZE]; + char l_name[MAX_DIR_LINESIZE]; + char l_type[MAX_DIR_LINESIZE]; + char l_value[MAX_DIR_LINESIZE]; + PATTRIB at; + int tmp; + + tmp = sscanf(line,"OBJECT-INFO %s %s %[^\n]", l_name, l_type, l_value); + + if(tmp < 3) { + tmp = sscanf(line,"LINK-INFO %s %s %s %[^\n]", l_precedence, + l_name, l_type, l_value); + if(tmp < 4) { + perrno = DIRSRV_BAD_FORMAT; + return(NULL); + } + } + + at = atalloc(); + + if(tmp == 4) { + if(strcmp(l_precedence,"CACHED") == 0) + at->precedence = ATR_PREC_CACHED; + else if(strcmp(l_precedence,"LINK") == 0) + at->precedence = ATR_PREC_LINK; + else if(strcmp(l_precedence,"REPLACEMENT") == 0) + at->precedence = ATR_PREC_REPLACE; + else if(strcmp(l_precedence,"ADDITIONAL") == 0) + at->precedence = ATR_PREC_ADD; + } + + at->aname = stcopy(l_name); + at->avtype = stcopy(l_type); + if(strcmp(l_type,"ASCII") == 0) + at->value.ascii = stcopy(l_value); + else if(strcmp(l_type,"LINK") == 0) { + char ftype[MAX_DIR_LINESIZE]; + char lname[MAX_DIR_LINESIZE]; + char htype[MAX_DIR_LINESIZE]; + char host[MAX_DIR_LINESIZE]; + char ntype[MAX_DIR_LINESIZE]; + char fname[MAX_DIR_LINESIZE]; + VLINK al; + + al = vlalloc(); + at->value.link = al; + + tmp = sscanf(l_value,"%c %s %s %s %s %s %s %d %d", + &(al->linktype), + ftype,lname,htype,host,ntype,fname, + &(al->version), + &(al->f_magic_no)); + if(tmp == 9) { + al->type = stcopyr(ftype,al->type); + al->name = stcopyr(unquote(lname),al->name); + al->hosttype = stcopyr(htype,al->hosttype); + al->host = stcopyr(host,al->host); + al->nametype = stcopyr(ntype,al->nametype); + al->filename = stcopyr(fname,al->filename); + } + else { + perrno = DIRSRV_BAD_FORMAT; + return(NULL); + } + + } + + return(at); + } + +/* + * nxtline - Find the next line in the string + * + * NXTLINE takes a string and returns a pointer to + * the character immediately following the next newline. + * + * ARGS: s - string to be searched + * + * RETURNS: Next line or NULL (0) on failure + */ +char * +nxtline(s) + char *s; /* String to be searched */ + { + s = (char *) index(s,'\n'); + if(s) return(++s); + else return(NULL); + } + + +/* + * unquote - unquote string if necessary + * + * UNQUOTE takes a string and unquotes it if it has been quoted. + * + * ARGS: s - string to be unquoted + * + * RETURNS: The original string. If the string has been quoted, then the + * result appears in static storage, and must be copied if + * it is to last beyond the next call to quote. + * + */ +char * +unquote(s) + char *s; /* String to be quoted */ + { + static char unquoted[200]; + char *c = unquoted; + + if(*s != '\'') return(s); + + s++; + + /* This should really treat a quote followed by other */ + /* than a quote or a null as an error */ + while(*s) { + if(*s == '\'') s++; + if(*s) *c++ = *s++; + } + + *c++ = '\0'; + + return(unquoted); + } + +#if defined(DEBUG) && defined(STRSPN) +/* needed for -D option parsing */ +/* + * strspn - Count initial characters from chrs in s + * + * STRSPN counts the occurances of chacters from chrs + * in the string s preceeding the first occurance of + * a character not in s. + * + * ARGS: s - string to be checked + * chrs - string of characters we are looking for + * + * RETURNS: Count of initial characters from chrs in s + */ +strspn(s,chrs) + char *s; /* String to search */ + char *chrs; /* String of characters we are looking for */ + { + char *cp; /* Pointer to the current character in chrs */ + int count; /* Count of characters seen so far */ + + count = 0; + + while(*s) { + for(cp = chrs;*cp;cp++) + if(*cp == *s) { + s++; + count++; + goto done; + } + return(count); + done: + ; + } + return(count); + } +#endif + +#ifdef CUTCP +char +*inet_ntoa(struct in_addr in) +{ + static char buff[36]; + + unsigned char *c = (char *) &in.address; + sprintf(buff,"%d.%d.%d.%d",*c,*(c+1),*(c+2),*(c+3)); + return(buff); +} + +long +inet_addr(char *cp) +{ + long value = 0; + unsigned v1,v2,v3,v4; + + v1 = v2 = v3 = v4 = 0xff; + sscanf(cp,"%d.%d.%d.%d",&v1,&v2,&v3,&v4); + value = (v1 << 24) | (v2 << 16) | (v3 << 8) | v4; + return(value); +} + +struct hostent +*gethostbyname(char *name) +{ + struct machinfo *mp; + int mnum; + unsigned long now; + static struct hostent ht; + extern int pfs_debug; + + mp = Shostlook(name); + if(!mp || (!mp->hostip[0])) { /* DNS lookup */ +#ifdef DEBUG + if (pfs_debug) + fprintf(stderr, "Domain name lookup of %s\n", name); +#endif + mnum = Sdomain(name); /* start a DNS lookup */ + now = time(NULL) + NS_TIMEOUT; + while(now > time(NULL)) { + int i, class, dat; + + Stask(); + i = Sgetevent(USERCLASS, &class, &dat); + if(i == DOMOK) { /* domain lookup ok */ + mp = Slooknum(mnum); +#ifdef DEBUG + if (pfs_debug) + fprintf(stderr, "Domain name lookup of %s Completed OK\n", name); +#endif + break; + } + } + if(!mp) { /* get here if timeout */ +#ifdef DEBUG + if (pfs_debug) + fprintf(stderr, "Domain name lookup of %s Failed\n", name); +#endif + return(NULL); + } + } + ht.h_addr = *((unsigned long *) mp->hostip); + ht.h_length = 4; + ht.h_addrtype = AF_INET; + return(&ht); + +} +#endif /* CUTCP */ + +#ifdef GETENV +/* + * Copyright (c) 1987 Regents of the University of California. + * All rights reserved. + * + * Redistribution and use in source and binary forms are permitted + * provided that: (1) source distributions retain this entire copyright + * notice and comment, and (2) distributions including binaries display + * the following acknowledgement: ``This product includes software + * developed by the University of California, Berkeley and its contributors'' + * in the documentation or other materials provided with the distribution + * and in all advertising materials mentioning features or use of this + * software. Neither the name of the University nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + */ + +#if defined(LIBC_SCCS) && !defined(lint) +static char sccsid[] = "@(#)getenv.c 5.7 (Berkeley) 6/1/90"; +#endif /* LIBC_SCCS and not lint */ + +#include +#include + +/* + * getenv -- + * Returns ptr to value associated with name, if any, else NULL. + */ +char * +getenv(name) + char *name; +{ + int offset; + char *_findenv(); + + return(_findenv(name, &offset)); +} + +/* + * _findenv -- + * Returns pointer to value associated with name, if any, else NULL. + * Sets offset to be the offset of the name/value combination in the + * environmental array, for use by setenv(3) and unsetenv(3). + * Explicitly removes '=' in argument name. + * + * This routine *should* be a static; don't use it. + */ +char * +_findenv(name, offset) + register char *name; + int *offset; +{ + extern char **environ; + register int len; + register char **P, *C; + + for (C = name, len = 0; *C && *C != '='; ++C, ++len); + for (P = environ; *P; ++P) + if (!strncmp(*P, name, len)) + if (*(C = *P + len) == '=') { + *offset = P - environ; + return(++C); + } + return(NULL); +} +#endif +$EOD +$! +$CREATE [.archie]copyright.h +$DECK +/* These are the uw-copyright.h and usc-copyright.h files that appear in + the Prospero distribution. */ + +/* + Copyright (c) 1989, 1990, 1991 by the University of Washington + + Permission to use, copy, modify, and distribute this software and its + documentation for non-commercial purposes and without fee is hereby + granted, provided that the above copyright notice appear in all copies + and that both the copyright notice and this permission notice appear in + supporting documentation, and that the name of the University of + Washington not be used in advertising or publicity pertaining to + distribution of the software without specific, written prior + permission. The University of Washington makes no representations + about the suitability of this software for any purpose. It is + provided "as is" without express or implied warranty. + + Prospero was written by Clifford Neuman (bcn@isi.edu). + + Questions concerning this software should be directed to + info-prospero@isi.edu. + + */ + +/* + Copyright (c) 1991, 1992 by the University of Southern California + All rights reserved. + + Permission to use, copy, modify, and distribute this software and its + documentation in source and binary forms for non-commercial purposes + and without fee is hereby granted, provided that the above copyright + notice appear in all copies and that both the copyright notice and + this permission notice appear in supporting documentation. and that + any documentation, advertising materials, and other materials related + to such distribution and use acknowledge that the software was + developed by the University of Southern California, Information + Sciences Institute. The name of the University may not be used to + endorse or promote products derived from this software without + specific prior written permission. + + THE UNIVERSITY OF SOUTHERN CALIFORNIA makes no representations about + the suitability of this software for any purpose. THIS SOFTWARE IS + PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + + Other copyrights might apply to parts of the Prospero distribution + and are so noted when applicable. + + Prospero was originally written by Clifford Neuman (bcn@isi.edu). + Contributors include Benjamin Britt (britt@isi.edu) + and others identified in individual modules. + + Questions concerning this software should be directed to + info-prospero@isi.edu. + + */ +$EOD +$! +$CREATE [.archie]udp.c +$DECK +/* + * udp - Check if UDP traffic is allowed on this host; we open port 1527 on + * a system (default of cs.widener.edu), which is expecting it; the + * date is output (e.g. very similar to the daytime service). This + * will conclusively tell us if UDP traffic on ports > 1000 is allowed. + * + * It should print out the date if UDP traffic's not blocked on your + * system. If it just hangs, try these tests too: + * a. run it with -d (e.g. "udp -d"); that goes to the normal UDP port + * to print the date. If it works, then you can be sure that any + * UDP traffic > port 1000 is blocked on your system. + * b. if it hangs too, try "telnet 147.31.254.130 13" and see if + * _that_ prints the date; if it doesn't, it's another problem (your + * network can't get to me, e.g.). + * + * Compile by: cc -o udp udp.c + * + * Brendan Kehoe, brendan@cs.widener.edu, Oct 1991. + */ + +#include +#include +#include +#include +#ifndef hpux +# include +#endif + +#define SIZE 2048 +#define HOST "147.31.254.130" /* cs.widener.edu */ +#define PORT 1527 + +main (argc, argv) + int argc; + char **argv; +{ + int s, len; + struct sockaddr_in server, sa; + char buf[SIZE]; + + if ((s = socket (AF_INET, SOCK_DGRAM, IPPROTO_UDP)) < 0) + { + perror ("socket()"); + exit (1); + } + + bzero ((char *) &sa, sizeof (sa)); + sa.sin_family = AF_INET; + sa.sin_addr.s_addr = htonl (INADDR_ANY); + sa.sin_port = htons (0); + + if (bind (s, (struct sockaddr *) &sa, sizeof (sa)) < 0) + { + perror ("bind()"); + exit (1); + } + + bzero ((char *) &server, sizeof (server)); + server.sin_family = AF_INET; + server.sin_addr.s_addr = inet_addr (HOST); + if (argc > 1 && strcmp(*(argv + 1), "-d") == 0) + server.sin_port = htons ((unsigned short) 13); + else + server.sin_port = htons ((unsigned short) PORT); + + /* yoo hoo, we're here .. */ + if (sendto (s, "\n", 1, 0, &server, sizeof (server)) < 0) + { + perror ("sendto()"); + exit (1); + } + + /* slurp */ + len = sizeof (server); + if (recvfrom (s, buf, sizeof (buf), 0, &server, &len) < 0) + { + perror ("recvfrom"); + exit (1); + } + + printf ("%s", buf); + close (s); +} +$EOD +$! +$CREATE [.archie]vl_comp.c +$DECK +/* + * Copyright (c) 1989, 1990, 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include +#include + +/* + * vl_comp - compare the names of two virtual links + * + * VL_COMP compares the names of two links. It returns + * 0 if they are equal, negative if vl1 < vl2, and positive if + * vl1 > vl2. + * + * ARGS: vl1,vl2 - Virtual links to be compared + * + * RETURNS: 0 if equal, + is vl1 > vl2, - if vl1 < vl2 + * + * NOTES: Order of significance is as follows. Existence, + * name. If names do not exist, then hosttype, host, + * native filenametype, native filename. The only time + * the name will not exist if if the link is a union link. + */ +int +vl_comp(vl1,vl2) + VLINK vl1; + VLINK vl2; + { + int retval; + + if(vl1->name && !vl2->name) return(1); + if(!vl1->name && vl2->name) return(-1); + if(vl1->name && vl2->name && (*(vl1->name) || *(vl2->name))) + return(strcmp(vl1->name,vl2->name)); + + retval = strcmp(vl1->hosttype,vl2->hosttype); + if(!retval) retval = strcmp(vl1->host,vl2->host); + if(!retval) retval = strcmp(vl1->nametype,vl2->nametype); + if(!retval) retval = strcmp(vl1->filename,vl2->filename); + return(retval); + } + +/* + * vl_equal - compare the values of two virtual links + * + * VL_EQUAL compares the values of two links. It returns + * 1 if all important fields are the same, and 0 otherwise. + * + * ARGS: vl1,vl2 - Virtual links to be compared + * + * RETURNS: 1 if equal, 0 if not equal + * + */ +int +vl_equal(vl1,vl2) + VLINK vl1; + VLINK vl2; + { + return strcmp(vl1->name, vl2->name) == 0 && + vl1->linktype == vl2->linktype && + strcmp(vl1->type, vl2->type) == 0 && + strcmp(vl1->hosttype, vl2->hosttype) == 0 && + strcmp(vl1->host, vl2->host) == 0 && + strcmp(vl1->nametype, vl2->nametype) == 0 && + strcmp(vl1->filename, vl2->filename) == 0 && + vl1->version == vl2->version && + vl1->f_magic_no == vl2->f_magic_no ; + + } + +$EOD +$! +$CREATE [.archie]vlalloc.c +$DECK +/* + * Copyright (c) 1989, 1990, 1991 by the University of Washington + * + * For copying and distribution information, please see the file + * . + */ + +#include +#include + +#include +#include + +static VLINK lfree = NULL; +int vlink_count = 0; +int vlink_max = 0; + +/* + * vlalloc - allocate and initialize vlink structure + * + * VLALLOC returns a pointer to an initialized structure of type + * VLINK. If it is unable to allocate such a structure, it + * returns NULL. + */ +VLINK +vlalloc() + { + VLINK vl; + if(lfree) { + vl = lfree; + lfree = lfree->next; + } + else { + vl = (VLINK) malloc(sizeof(VLINK_ST)); + if (!vl) return(NULL); + vlink_max++; + } + + vlink_count++; + + /* Initialize and fill in default values */ + /* Since all but four are set to a zero-value, + why not just wipe it clean? */ + ZERO(vl); + + vl->linktype = 'L'; + vl->type = stcopy("FILE"); + vl->hosttype = stcopy("INTERNET-D"); + vl->nametype = stcopy("ASCII"); + + return(vl); + } + +/* + * vlfree - free a VLINK structure + * + * VLFREE takes a pointer to a VLINK structure and adds it to + * the free list for later reuse. + */ +void +vlfree(vl) + VLINK vl; + { + extern int string_count; + + if(vl->dontfree) return; + /* many of these don't need to call stfree(); since a check + for pointer validity's already done before even calling + it, we can just call free() here then do one big decrement + of string_count at the end. */ + if(vl->name) free(vl->name); + stfree(vl->type); + if(vl->replicas) vllfree(vl->replicas); + stfree(vl->hosttype); + if(vl->host) free(vl->host); + stfree(vl->nametype); + if(vl->filename) free(vl->filename); + if(vl->args) free(vl->args); + if(vl->lattrib) atlfree(vl->lattrib); + /* No allocation routines for f_info yet */ + vl->f_info = NULL; + vl->next = lfree; + vl->previous = NULL; + lfree = vl; + vlink_count--; + string_count -= 4; /* freed name, host, filename, and args */ + } + +/* + * vllfree - free a VLINK structure + * + * VLLFREE takes a pointer to a VLINK structure frees it and any linked + * VLINK structures. It is used to free an entrie list of VLINK + * structures. + */ +void +vllfree(vl) + VLINK vl; + { + VLINK nxt; + + while((vl != NULL) && !vl->dontfree) { + nxt = vl->next; + vlfree(vl); + vl = nxt; + } + } + +$EOD +$! +$CREATE [.archie]vms.h +$DECK +#ifndef _ARCHIE_VMS +#define _ARCHIE_VMS +#include + +#if !defined(MULTINET_30) && !defined(WOLLONGONG) && !defined(UCX) +#include "[.vms]pseudos.h" +#include "[.vms]types.h" +#include "[.vms]in.h" +#include "[.vms]signal.h" +#include "[.vms]socket.h" +#include "[.vms]time.h" + +#else + +/* time_t gets multiply defined */ +#ifndef __TYPES +#define __TYPES +#endif +#ifdef MULTINET_30 +# include "multinet_root:[multinet.include.sys]types.h" +# include "multinet_root:[multinet.include.netinet]in.h" +# include "multinet_root:[multinet.include.sys]socket.h" +# include "multinet_root:[multinet.include.sys]time.h" +#endif /* MULTINET_30 */ + +#ifdef WOLLONGONG +/* We don't want size_t defined. */ +# ifndef __STDDEF +# define __STDDEF +# endif +# include "twg$tcp:[netdist.include.sys]types.h" +# include "twg$tcp:[netdist.include.netinet]in.h" +# include "twg$tcp:[netdist.include.sys]socket.h" +# include "twg$tcp:[netdist.include.sys]time.h" +#endif /* WOLLONGONG */ + +#ifdef UCX +# include +# include +# include +# include +# include "[.vms]fd.h" +#endif /* UCX */ + +#endif /* Multinet or Wallongong or UCX */ + +#endif /* _ARCHIE_VMS */ +$EOD +$! +$CREATE [.archie]vms_support.c +$DECK +/* Emulation of 4.2 UNIX socket interface routines includes drivers for + Wollongong, CMU-TEK, UCX tcp/ip interface and also emulates the SUN + version of X.25 sockets. The TWG will also work for MultiNet. */ + +/* This is from unixlib, by P.Kay@massey.ac.nz; wonderful implementation. + You can get the real thing on 130.123.1.4 as unixlib_tar.z. */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "[.vms]network.h" + +#define QIO_FAILED (st != SS$_NORMAL || p[s].iosb[0] != SS$_NORMAL) +#define QIO_ST_FAILED (st != SS$_NORMAL) + +/* Socket routine. */ +int +VMSsocket (domain, type, protocol) + int domain, type, protocol; +{ + struct descriptor inetdesc, x25desc, mbxdesc; + int i, st, s, p_initialise (); + long ucx_sock_def; + char *getenv (); + + if (!tcp_make) + set_tcp_make (); + + if (p_initialised == 0) + { + for (i = 0; i < 32; i++) + p_initialise (i); + + p_initialised = 1; + } + + /* First of all, get a file descriptor and file ptr we can associate with + the socket, allocate a buffer, and remember the socket details. */ + s = dup (0); + if (s > 31) + { + errno = EMFILE; + close (s); + return -1; + } + + p[s].fptr = fdopen (s, "r"); + p[s].fd_buff = (unsigned char *) malloc (BUF_SIZE); + p[s].domain = domain; + p[s].type = type; + p[s].protocol = protocol; + + /* Handle the case of INET and X.25 separately. */ + if (domain == AF_INET) + { + if (tcp_make == NONE) + { + printf ("Trying to obtain a TCP socket when we don't have TCP!\n"); + exit (1); + } + if (tcp_make == CMU) + { + /* For CMU we need only assign a channel. */ + inetdesc.size = 3; + inetdesc.ptr = "IP:"; + if (sys$assign (&inetdesc, &p[s].channel, 0, 0) != SS$_NORMAL) + return -1; + } + else if (tcp_make == UCX) + { + /* For UCX assign channel and associate a socket with it. */ + inetdesc.size = 3; + inetdesc.ptr = "BG:"; + if (sys$assign (&inetdesc, &p[s].channel, 0, 0) != SS$_NORMAL) + return -1; + + ucx_sock_def = (domain << 24) + (type << 16) + protocol; + st = sys$qiow (0, p[s].channel, IO$_SETMODE, p[s].iosb, 0, 0, + &ucx_sock_def, 0, 0, 0, 0, 0); + if (QIO_FAILED) + return -1; + } + else + { + /* For TWG we assign the channel and associate a socket with it. */ + inetdesc.size = 7; + inetdesc.ptr = "_INET0:"; + + if (sys$assign (&inetdesc, &p[s].channel, 0, 0) != SS$_NORMAL) + return -1; + + st = sys$qiow (0, p[s].channel, IO$_SOCKET, p[s].iosb, 0, 0, + domain, type, 0, 0, 0, 0); + if (QIO_FAILED) + return -1; + } + } + else + /* We don't handle any other domains yet. */ + return -1; + + /* For each case if we are successful we return the descriptor. */ + return s; +} + +/* Bind routine. */ +VMSbind (s, name, namelen) + int s; + union socket_addr *name; + int namelen; +{ + char infobuff[1024], lhost[32]; + int st; + + if (!tcp_make) + set_tcp_make (); + + if (p[s].domain == AF_INET) + { + /* One main problem with bind is that if we're given a port number + of 0, then we're expected to return a unique port number. Since + we don't KNOW, we return 1050+s and look to Lady Luck. */ + if (tcp_make == CMU) + { + if (name->in.sin_port == 0 && p[s].type != SOCK_DGRAM) + name->in.sin_port = 1050 + s; + p[s].namelen = namelen; + bcopy (name, &(p[s].name), namelen); + + if (p[s].type == SOCK_DGRAM) + { + /* Another problem is that CMU still needs an OPEN request + even if it's a datagram socket. */ + st = sys$qiow (0, p[s].channel, TCP$OPEN, p[s].iosb, + 0, 0, 0, 0, ntohs (p[s].name.in.sin_port), + 0, 1, 0); + if (QIO_ST_FAILED) + return -1; + + p[s].cmu_open = 1; + sys$qiow (0, p[s].channel, TCP$INFO, p[s].iosb, + 0, 0, &infobuff, 1024, 0, 0, 0, 0); + bcopy (infobuff + 264, &(p[s].name.in.sin_port), 2); + p[s].name.in.sin_port = htons (p[s].name.in.sin_port); + + /* So get it another way. */ + bcopy (infobuff + 136, lhost, infobuff[1]); + lhost[infobuff[1]] = '\0'; + sys$qiow (0, p[s].channel, GTHST, p[s].iosb, + 0, 0, &infobuff, 1024, 1, lhost, 0, 0); + bcopy (infobuff + 4, &(p[s].name.in.sin_addr), 4); + + /* Be prepared to receive a message. */ + hang_a_read (s); + } + } + else if (tcp_make == UCX) + { + /* UCX will select a prot for you. If the port's number is 0, + translate "name" into an item_2 list. */ + struct itemlist lhost; + lhost.length = namelen; + lhost.code = 0; + lhost.dataptr = (char *) name; + + st = sys$qiow (0, p[s].channel, IO$_SETMODE, p[s].iosb, 0, 0, + 0, 0, &lhost, 0, 0, 0); + if (QIO_FAILED) + return -1; + + if (p[s].type == SOCK_DGRAM) + hang_a_read (s); + + } + else + { + /* WG is more straightforward */ + st = sys$qiow (0, p[s].channel, IO$_BIND, p[s].iosb, + 0, 0, name, namelen, 0, 0, 0, 0); + if (QIO_FAILED) + return -1; + + /* If it's a datagram, get ready for the message. */ + if (p[s].type == SOCK_DGRAM) + hang_a_read (s); + } + } + else + /* We don't handle any other domain yet. */ + return -1; + + return 0; +} + +/* Connect routine. */ +VMSconnect (s, name, namelen) + int s; + union socket_addr *name; + int namelen; +{ + int pr, fl, st; + char *inet_ntoa (); + static struct + { + int len; + char name[128]; + } gethostbuf; + extern int connect_ast (); + + if (!tcp_make) + set_tcp_make (); + + /* For datagrams we need to remember who the name was so we can send all + messages to that address without having to specify it all the time. */ + if (p[s].connected) + { + if (p[s].connected == 1) + errno = EISCONN; + else + { + errno = ECONNREFUSED; + p[s].connected = 0; + } + return -1; + } + + if (p[s].connect_pending) + { + errno = EALREADY; + return -1; + } + + p[s].passive = 0; + p[s].tolen = namelen; + bcopy (name, &(p[s].to), namelen); + + if (p[s].domain == AF_INET) + { + if (tcp_make == CMU) + { + + /* Get the info about the remote host and open up a connection. */ + st = sys$qiow (0, p[s].channel, GTHST, p[s].iosb, 0, 0, &gethostbuf, + 132, 2, name->in.sin_addr.s_addr, 0, 0); + if (QIO_FAILED) + { + strcpy (gethostbuf.name, inet_ntoa (name->in.sin_addr.s_addr)); + gethostbuf.len = strlen (gethostbuf.name); + } + gethostbuf.name[gethostbuf.len] = 0; + + /* TCP */ + pr = 0; + /* Active */ + fl = 1; + + /* Nothing else for datagrams. */ + if (p[s].type == SOCK_DGRAM) + return (0); + st = sys$qio (s, p[s].channel, TCP$OPEN, p[s].iosb, connect_ast, + &p[s], &(gethostbuf.name), ntohs (name->in.sin_port), + ntohs (p[s].name.in.sin_port), fl, pr, 0); + if (QIO_ST_FAILED) + return -1; + } + else if (tcp_make == UCX) + { + /* Both UDP and TCP can use a connect - IO$_ACCESS */ + p[s].rhost.length = namelen; + p[s].rhost.code = 0; + p[s].rhost.dataptr = (char *) name; + + st = sys$qio (s, p[s].channel, IO$_ACCESS, p[s].iosb, connect_ast, + &p[s], 0, 0, &p[s].rhost, 0, 0, 0); + if (QIO_ST_FAILED) + return -1; + } + else + { + /* TWG */ + if (p[s].type == SOCK_DGRAM) + return (0); + st = sys$qio (s, p[s].channel, IO$_CONNECT, p[s].iosb, connect_ast, + &p[s], name, namelen, 0, 0, 0, 0); + if (QIO_ST_FAILED) + return -1; + } + } + else + /* We don't handle any other domain yet. */ + return -1; + + if (p[s].non_blocking) + { + if (p[s].connected) + { + if (p[s].connected == 1) + return 0; + else + { + p[s].connected = 0; + errno = ECONNREFUSED; + return -1; + } + } + else + { + p[s].connect_pending = 1; + errno = EINPROGRESS; + return -1; + } + } + else + { + /* wait for the connection to occur */ + if (p[s].connected) + { + if (p[s].connected == 1) + return 0; + else + { + p[s].connected = 0; + errno = ECONNREFUSED; + return -1; + } + } + + /* Timed out? */ + if (wait_efn (s) == -1) + return -1; + + if (p[s].connected != SS$_NORMAL) + { + errno = ECONNREFUSED; + return -1; + } + + return 0; + } +} + +/* Listen routine. */ +VMSlisten (s, backlog) + int s; + int backlog; +{ + int st; + + if (!tcp_make) + set_tcp_make (); + + p[s].passive = 1; + p[s].backlog = backlog; + if (p[s].domain == AF_INET) + { + if (tcp_make == CMU) + { + /* For the CMU sockets we can't do the open call in listen; + we have to do it in hang_an_accept, because when we close + off the connection we have to be ready to accept another + one. accept() also calls hang_an_accept on the old + descriptor. */ + + /* Nothing */ + } + else if (tcp_make == UCX) + { + + /* Doc Verbage sez backlog is descriptor of byte. Doc examples + and common sense say backlog is value. Value doesn't work, + so let's try descriptor of byte after all. */ + struct descriptor bl; + unsigned char ucx_backlog; + + ucx_backlog = (unsigned char) backlog; + bl.size = sizeof (ucx_backlog); + bl.ptr = (char *) &ucx_backlog; + + st = sys$qiow (0, p[s].channel, IO$_SETMODE, p[s].iosb, 0, 0, + 0, 0, 0, &bl, 0, 0); + if (QIO_FAILED) + return -1; + } + else + { + /* TWG */ + st = sys$qiow (0, p[s].channel, IO$_LISTEN, p[s].iosb, 0, 0, + backlog, 0, 0, 0, 0, 0); + if (QIO_FAILED) + return -1; + } + } + else + /* We don't handle any other domain yet. */ + return -1; + + p[s].status = LISTENING; + hang_an_accept (s); + return 0; +} + +/* Accept routine. */ +int +VMSaccept (s, addr, addrlen) + int s; + union socket_addr *addr; + int *addrlen; +{ + int news, st; + struct descriptor inetdesc; + + if (!tcp_make) + set_tcp_make (); + + if (p[s].non_blocking && !p[s].accept_pending) + { + errno = EWOULDBLOCK; + return -1; + } + + /* hang_an_accept set up an incoming connection request so we have first + to hang around until one appears or we time out. */ + if (p[s].domain == AF_INET) + { + if (tcp_make == CMU) + { + char infobuff[1024]; + + /* Timed out? */ + if (wait_efn (s) == -1) + return -1; + + /* Ok, get a new descriptor ... */ + news = dup (0); + if (news > 31) + { + errno = EMFILE; + close (news); + return -1; + } + + /* ... and copy all of our data across. */ + bcopy (&p[s], &p[news], sizeof (p[0])); + + /* But not this field, of course! */ + p[news].s = news; + + sys$qiow (0, p[news].channel, TCP$INFO, p[news].iosb, + 0, 0, &infobuff, 1024, 0, 0, 0, 0); + + /* Copy across the connection info if necessary. */ + if (addr != 0) + { + *addrlen = sizeof (struct sockaddr_in); + bcopy (infobuff + 132, &(addr->in.sin_port), 2); + addr->in.sin_port = htons (addr->in.sin_port); + addr->in.sin_family = AF_INET; + bcopy (infobuff + 272, &(addr->in.sin_addr), 4); + p[news].fromlen = *addrlen; + bcopy (addr, &(p[news].from), *addrlen); + } + p[news].status = PASSIVE_CONNECTION; + + /* Get a new file ptr for the socket. */ + p[news].fptr = fdopen (news, "r"); + + /* Reset this field. */ + p[news].accept_pending = 0; + + /* Allocate a buffer. */ + p[news].fd_buff = (unsigned char *) malloc (BUF_SIZE); + p[news].fd_leftover = 0; + + /* Be prepared to get msgs. */ + hang_a_read (news); + + /* Now fix up our previous socket so it's again listening + for connections. */ + inetdesc.size = 3; + inetdesc.ptr = "IP:"; + if (sys$assign (&inetdesc, &p[s].channel, 0, 0) != SS$_NORMAL) + return -1; + p[s].status = LISTENING; + hang_an_accept (s); + + /* Return the new socket descriptor. */ + return news; + } + else if (tcp_make == UCX) + { + /* UCX does the actual accept from hang_an_accept. The accept info + is put into the data structure for the "listening" socket. + These just need to be copied into a newly allocated socket for + the connect and the listening socket re-started. */ + + /* Wait for event flag from accept being received inside + of hang_an_accept(). */ + + if (wait_efn (s) == -1) + /* Timed out. */ + return -1; + + /* Ok, get a new descriptor ... */ + news = dup (0); + if (news > 31) + { + errno = EMFILE; + close (news); + return -1; + } + /* ... and copy all of our data across. */ + bcopy (&p[s], &p[news], sizeof (p[0])); + p[news].s = news; /* but not this field */ + p[news].channel = p[s].ucx_accept_chan; + + /* Initialize the remote host address item_list_3 struct. */ + p[news].rhost.length = sizeof (struct sockaddr_in); + p[news].rhost.code = 0; + p[news].rhost.dataptr = (char *) &p[news].from; + p[news].rhost.retlenptr = &p[news].fromdummy; + + if (addr != 0) + { + /* Return the caller's info, if requested. */ + *addrlen = p[news].fromdummy; + bcopy (&p[news].from, addr, p[news].fromdummy); + } + + /* Finish fleshing out the new structure. */ + p[news].status = PASSIVE_CONNECTION; + + /* Get a new file pointer for the socket. */ + p[news].fptr = fdopen (news, "r"); + + /* Reset this field. */ + p[news].accept_pending = 0; + + /* Allocate a buffer. */ + p[news].fd_buff = (unsigned char *) malloc (BUF_SIZE); + p[news].fd_leftover = 0; + + /* Get it started reading. */ + hang_a_read (news); + + p[s].status = LISTENING; + hang_an_accept (s); + + return news; + } + else + { + /* TWG */ + struct descriptor inetdesc; + int size; + + /* Time out? */ + if (wait_efn (s) == -1) + return -1; + + /* Ok, get a new descriptor ... */ + news = dup (0); + if (news > 31) + { + errno = EMFILE; + close (news); + return -1; + } + + /* Assign a new channel. */ + inetdesc.size = 7; + inetdesc.ptr = "_INET0:"; + st = sys$assign (&inetdesc, &p[news].channel, 0, 0); + if (QIO_ST_FAILED) + { + p[s].accept_pending = 0; + sys$clref (s); + return -1; + } + + /* From info needs an int length field! */ + size = sizeof (p[s].from) + 4; + st = sys$qiow (0, p[news].channel, IO$_ACCEPT, p[news].iosb, 0, 0, + &p[s].fromdummy, size, p[s].channel, 0, 0, 0); + + if (QIO_ST_FAILED || p[news].iosb[0] != SS$_NORMAL) + { + p[s].accept_pending = 0; + sys$clref (s); + return -1; + } + + if (addr != 0) + { + /* Return the caller's info if requested. */ + *addrlen = p[s].fromdummy; + bcopy (&p[s].from, addr, *addrlen); + } + + /* Fix up our new data structure. */ + p[news].status = PASSIVE_CONNECTION; + p[news].domain = AF_INET; + p[news].passive = 1; + p[news].fptr = fdopen (news, "r"); + /* Allocate a buffer. */ + p[news].fd_buff = (unsigned char *) malloc (BUF_SIZE); + + /* Be prepared to accept msgs. */ + hang_a_read (news); + + /* Get the old descriptor back onto accepting. */ + hang_an_accept (s); + return news; + } + } + else + /* We don't handle any other domain yet. */ + return -1; +} + +/* Recv routine. */ +int +VMSrecv (s, buf, len, flags) + int s; + char *buf; + int len, flags; +{ + return recvfrom (s, buf, len, flags, 0, 0); +} + +/* Revfrom routine. */ +int +VMSrecvfrom (s, buf, len, flags, from, fromlen) + int s; + char *buf; + int len, flags; + union socket_addr *from; + int *fromlen; +{ + int number; + + if (!tcp_make) + set_tcp_make (); + + if (p[s].domain != AF_INET && p[s].domain != AF_X25) + return -1; + + /* If we're not onto datagrams, then it's possible that a previous + call to recvfrom didn't read all the data, and left some behind. + So first of all, look in our data buffer for any leftovers that + will satisfy this read. */ + + /* We couldn't satisfy the request from previous calls so we must now + wait for a message to come through. */ + if (wait_efn (s) == -1) + /* Timed out. */ + return -1; + + if (p[s].closed_by_remote == 1) + { + /* This could have happened! */ + errno = ECONNRESET; + return -1; + } + + if (from != NULL) + { + if (tcp_make == CMU) + { + if (p[s].type == SOCK_DGRAM) + { + /* Not documented but we get the from data from the beginning of + the data buffer. */ + *fromlen = sizeof (p[s].from.in); + from->in.sin_family = AF_INET; + bcopy (&p[s].fd_buff[8], &(from->in.sin_port), 2); + from->in.sin_port = htons (from->in.sin_port); + bcopy (&p[s].fd_buff[0], &(from->in.sin_addr), 4); + + /* Remove the address data from front of data buffer. */ + bcopy (p[s].fd_buff + 12, p[s].fd_buff, p[s].fd_buff_size); + } + else + { + *fromlen = p[s].fromlen; + bcopy (&p[s].from, from, p[s].fromlen); + } + } + else if (tcp_make == UCX) + { + *fromlen = p[s].fromdummy; + bcopy (&p[s].from, from, p[s].fromdummy); + } + else + { + *fromlen = p[s].fromlen; + bcopy (&p[s].from, from, p[s].fromlen); + } + } + + /* We may've received too much. */ + number = p[s].fd_buff_size; + if (number <= len) + { + /* If we haven't give back all the data available. */ + bcopy (p[s].fd_buff, buf, number); + p[s].fd_leftover = 0; + hang_a_read (s); + return (number); + } + else + { + /* If we have too much data then split it up. */ + p[s].fd_leftover = p[s].fd_buff; + bcopy (p[s].fd_leftover, buf, len); + /* And change the pointers. */ + p[s].fd_leftover += len; + p[s].fd_buff_size -= len; + return (len); + } +} + +/* Send routine. */ +int +VMSsend (s, msg, len, flags) + int s; + char *msg; + int len, flags; +{ + return sendto (s, msg, len, flags, 0, 0); +} + +/* Sendto routine. */ +int +VMSsendto (s, msg, len, flags, to, tolen) + int s; + unsigned char *msg; + int len, flags; + union socket_addr *to; + int tolen; +{ + int i, j, st, size; + unsigned char udpbuf[BUF_SIZE + 12]; + char infobuff[1024], lhost[32]; + unsigned short int temp; + + if (!tcp_make) + set_tcp_make (); + + /* First remember who we sent it to and set the value of size. */ + if (to != 0) + { + p[s].tolen = tolen; + bcopy (to, &(p[s].to), tolen); + size = tolen; + } + else + size = 0; + + if (p[s].domain == AF_INET) + { + /* We might never have started a read for udp (socket/sendto) so + put one here. */ + if (p[s].type == SOCK_DGRAM) + hang_a_read (s); + + if (tcp_make == CMU) + { + if (p[s].type == SOCK_DGRAM) + { + /* We might never have opened up a udp connection yet, + so check. */ + if (p[s].cmu_open != 1) + { + st = sys$qiow (0, p[s].channel, TCP$OPEN, p[s].iosb, 0, 0, + 0, 0, 0, 0, 1, 0); + if (QIO_ST_FAILED) + return -1; + + p[s].cmu_open = 1; + sys$qiow (0, p[s].channel, TCP$INFO, p[s].iosb, + 0, 0, &infobuff, 1024, 0, 0, 0, 0); + bcopy (infobuff + 264, &(p[s].name.in.sin_port), 2); + p[s].name.in.sin_port = htons (p[s].name.in.sin_port); + bcopy (infobuff + 136, lhost, infobuff[1]); + lhost[infobuff[1]] = '\0'; + sys$qiow (0, p[s].channel, GTHST, p[s].iosb, + 0, 0, &infobuff, 1024, 1, lhost, 0, 0); + bcopy (infobuff + 4, &(p[s].name.in.sin_addr), 4); + } + + /* This isn't well documented. To send to a UDP socket, we + need to put the address info at the beginning of the + buffer. */ + bcopy (msg, udpbuf + 12, len); + bcopy (&p[s].to.in.sin_addr, udpbuf + 4, 4); + temp = ntohs (p[s].to.in.sin_port); + bcopy (&temp, udpbuf + 10, 2); + bcopy (&p[s].name.in.sin_addr, udpbuf, 4); + temp = ntohs (p[s].name.in.sin_port); + bcopy (&temp, udpbuf + 8, 2); + temp = len + 12; + st = sys$qiow (0, p[s].channel, TCP$SEND, p[s].iosb, 0, 0, + udpbuf, temp, 0, 0, 0, 0); + if (QIO_FAILED) + return -1; + } + else + { + /* TCP (! UDP) */ + st = sys$qiow (0, p[s].channel, TCP$SEND, p[s].iosb, 0, 0, + msg, len, 0, 0, 0, 0); + if (QIO_FAILED) + return -1; + } + return len; + } + else if (tcp_make == UCX) + { + struct itemlist rhost; + rhost.length = sizeof (struct sockaddr_in); + rhost.code = 0; + rhost.dataptr = (char *) &p[s].to; + + st = sys$qiow (0, p[s].channel, IO$_WRITEVBLK, p[s].iosb, 0, 0, + msg, len, &rhost, 0, 0, 0); + if (QIO_FAILED) + return -1; + + return len; + } + else + { + /* TWG */ + st = sys$qiow (0, p[s].channel, IO$_WRITEVBLK, p[s].iosb, + 0, 0, msg, len, 0, &p[s].to, size, 0); + if (QIO_FAILED) + return -1; + + return len; + } + } + else + /* We don't handle any other domain yet. */ + return -1; +} + +/* Getsockname routine. */ +int +VMSgetsockname (s, name, namelen) + int s; + union socket_addr *name; + int *namelen; +{ + int st; + + if (!tcp_make) + set_tcp_make (); + + if (p[s].domain == AF_INET) + { + if (tcp_make == CMU) + { + /* For CMU we just return values held in our data structure. */ + *namelen = p[s].namelen; + bcopy (&(p[s].name), name, *namelen); + return (0); + } + else if (tcp_make == UCX) + { + /* An item_list_3 descriptor. */ + struct itemlist lhost; + + lhost.length = *namelen; + lhost.code = 0; + lhost.dataptr = (char *) name; + + /* Fill in namelen with actual ret len value. */ + lhost.retlenptr = (short int *) namelen; + + st = sys$qiow (0, p[s].channel, IO$_SENSEMODE, p[s].iosb, 0, 0, + 0, 0, &lhost, 0, 0, 0); + if (QIO_FAILED) + return -1; + + return 0; + } + else + { + /* TWG gives us the information. */ + st = sys$qiow (0, p[s].channel, IO$_GETSOCKNAME, p[s].iosb, + 0, 0, name, namelen, 0, 0, 0, 0); + if (QIO_FAILED) + return -1; + + return 0; + } + } + else + /* We don't handle any other domain yet. */ + return -1; +} + +/* Select routine. */ +int +VMSselect (nfds, readfds, writefds, exceptfds, timeout) + int nfds; + fd_set *readfds, *writefds, *exceptfds; + struct timeval *timeout; +{ + int timer, fd, alarm_set, total, end; + long mask, cluster; + struct descriptor termdesc; + static fd_set new_readfds, new_writefds, new_exceptfds; + + FD_ZERO (&new_readfds); + FD_ZERO (&new_writefds); + FD_ZERO (&new_exceptfds); + total = 0; + + /* Assign a terminal channel if we haven't already. */ + if (terminal.chan == -1) + { + termdesc.size = 10; + termdesc.ptr = "SYS$INPUT:"; + sys$assign (&termdesc, &terminal.chan, 0, 0); + } + alarm_set = 0; + if (timeout != NULL) + { + /* If a timeout is given then set the alarm. */ + end = timeout->tv_sec; + if (timer != 0) + { + /* We need to reset the alarm if it didn't fire, but we set it. */ + alarm_set = 1; + si_alarm (end); + } + } + else + end = 1; + + do + { + if (exceptfds) + { + /* Nothing */ ; + } + + if (writefds) + { + for (fd = 0; fd < nfds; fd++) + if (FD_ISSET (fd, writefds)) + { + if (p[fd].connect_pending) + /* Nothing */ ; + else if ((p[fd].status == ACTIVE_CONNECTION) + || (p[fd].status == PASSIVE_CONNECTION)) + { + FD_SET (fd, &new_writefds); + total++; + } + } + } + + if (readfds) + { + /* True if data pending or an accept. */ + for (fd = 3; fd < nfds; fd++) + if (FD_ISSET (fd, readfds) && + ((p[fd].fd_buff_size != -1) || (p[fd].accept_pending == 1))) + { + FD_SET (fd, &new_readfds); + total++; + } + } + + if (total || (end == 0)) + break; + + /* Otherwise, wait on an event flag. It's possible that the wait can + be stopped by a spurious event flag being set -- i.e. one that's + got a status not normal. So we've got to be prepared to loop + around the wait until a valid reason happens. */ + + /* Set up the wait mask. */ + cluster = 0; + mask = 0; + for (fd = 3; fd < nfds; fd++) + { + sys$clref (fd); + if (readfds) + if FD_ISSET + (fd, readfds) mask |= (1 << fd); + if (writefds) + if FD_ISSET + (fd, writefds) mask |= (1 << fd); + if (exceptfds) + if FD_ISSET + (fd, exceptfds) mask |= (1 << fd); + } + + mask |= (1 << TIMER_EFN); + + /* Clear it off just in case. */ + sys$clref (TIMER_EFN); + + /* Wait around. */ + sys$wflor (cluster, mask); + + mask = 0; + if (read_efn (TIMER_EFN)) + { + errno = EINTR; + break; + } + } while (1); + /*NOTREACHED*/ + + /* Unset the alarm if we set it. */ + if (alarm_set == 1) + alarm (0); + + if (readfds) + *readfds = new_readfds; + + if (writefds) + *writefds = new_writefds; + + if (exceptfds) + *exceptfds = new_exceptfds; + + return total; +} + +/* Shutdown routine. */ +VMSshutdown (s, how) + int s, how; +{ + int st; + int ucx_how; + + if (!tcp_make) + set_tcp_make (); + + if (p[s].domain == AF_INET) + { + if (tcp_make == CMU) + { + /* For CMU we just close off. */ + si_close (s); + return 0; + } + else if (tcp_make == UCX) + { + st = sys$qiow (0, p[s].channel, IO$_DEACCESS | IO$M_SHUTDOWN, + p[s].iosb, 0, 0, 0, 0, 0, how, 0, 0); + if (QIO_FAILED) + return -1; + + return 0; + } + else + { + /* TWG lets us do it. */ + st = sys$qiow (0, p[s].channel, IO$_SHUTDOWN, p[s].iosb, 0, 0, how, + 0, 0, 0, 0, 0); + if (QIO_FAILED) + return -1; + + return 0; + } + } + else /* it wasn't a socket */ + return -1; +} + +/* */ + +/* The following routines are used by the above socket calls. */ + +/* hang_a_read sets up a read to be finished at some later time. */ +hang_a_read (s) + int s; +{ + extern int read_ast (); + int size, st; + + /* Don't bother if we already did it. */ + if (p[s].read_outstanding == 1) + return; + + /* Have a read outstanding. */ + p[s].read_outstanding = 1; + size = sizeof (p[s].from) + 4; + sys$clref (s); + + /* Clear off the event flag just in case, and reset the buf size. */ + p[s].fd_buff_size = -1; + if (p[s].domain == AF_INET) + { + if (tcp_make == CMU) + { + st = sys$qio (s, p[s].channel, TCP$RECEIVE, p[s].iosb, read_ast, + &p[s], p[s].fd_buff, BUF_SIZE, 0, 0, 0, 0); + if (QIO_ST_FAILED) + return -1; + } + else if (tcp_make == UCX) + { + + p[s].rhost.length = sizeof (struct sockaddr_in); + p[s].rhost.code = 0; + p[s].rhost.dataptr = (char *) &p[s].from; + p[s].rhost.retlenptr = &p[s].fromdummy; + + st = sys$qio (s, p[s].channel, IO$_READVBLK, p[s].iosb, read_ast, + &p[s], p[s].fd_buff, BUF_SIZE, &p[s].rhost, 0, 0, 0); + if (QIO_ST_FAILED) + return -1; + } + else + { + /* TWG */ + st = sys$qio (s, p[s].channel, IO$_READVBLK, p[s].iosb, read_ast, + &p[s], p[s].fd_buff, BUF_SIZE, 0, &p[s].fromlen, + size, 0); + if (QIO_ST_FAILED) + return -1; + } + } + else + /* We don't handle any other domain yet. */ + return -1; +} + +/* hang_an_accept waits for a connection request to come in. */ +hang_an_accept (s) + int s; +{ + extern int accept_ast (); + int st; + + /* Clear the event flag just in case. */ + sys$clref (s); + + /* Reset our flag & buf size. */ + p[s].accept_pending = 0; + p[s].fd_buff_size = -1; + if (p[s].domain == AF_INET) + { + if (tcp_make == CMU) + { + st = sys$qio (s, p[s].channel, TCP$OPEN, p[s].iosb, accept_ast, + &p[s], 0, 0, ntohs (p[s].name.in.sin_port), 0, 0, 0); + if (QIO_ST_FAILED) + return -1; + } + else if (tcp_make == UCX) + { + struct descriptor inetdesc; + + /* Assign channel for actual connection off listener. */ + inetdesc.size = 3; + inetdesc.ptr = "BG:"; + if (sys$assign (&inetdesc, &p[s].ucx_accept_chan, 0, + 0) != SS$_NORMAL) + return -1; + + /* UCX's accept returns remote host info and the channel for a new + socket to perform reads/writes on, so a sys$assign isn't + really necessary. */ + p[s].rhost.length = sizeof (struct sockaddr_in); + p[s].rhost.dataptr = (char *) &p[s].from; + p[s].fromdummy = 0; + p[s].rhost.retlenptr = &p[s].fromdummy; + + st = sys$qio (s, p[s].channel, IO$_ACCESS | IO$M_ACCEPT, p[s].iosb, + accept_ast, &p[s], 0, 0, &p[s].rhost, + &p[s].ucx_accept_chan, 0, 0); + if (QIO_ST_FAILED) + return -1; + } + else + { + st = sys$qio (s, p[s].channel, IO$_ACCEPT_WAIT, p[s].iosb, + accept_ast, &p[s], 0, 0, 0, 0, 0, 0); + if (QIO_ST_FAILED) + return -1; + } + } + else + /* We don't handle any other domain yet. */ + return -1; +} + +/* wait_efn just sets up a wait on either an event or the timer. */ +wait_efn (s) + int s; +{ + long mask, cluster; + + cluster = 0; + sys$clref (TIMER_EFN); + mask = (1 << s) | (1 << TIMER_EFN); + sys$wflor (cluster, mask); + + if (read_efn (TIMER_EFN)) + { + errno = EINTR; + return -1; + } + + return 0; +} + +/* read_ast is called by the system whenever a read is done. */ +read_ast (p) + struct fd_entry *p; +{ + int i, j; + unsigned char *v, *w; + + /* Reset the outstanding flag. */ + p->read_outstanding = 0; + if (p->iosb[0] == SS$_NORMAL) + { + /* Check no errors. */ + p->fd_buff_size = p->iosb[1]; + if (tcp_make == CMU) + { + /* fiddle for DGRMs */ + if (p->type == SOCK_DGRAM) + p->fd_buff_size -= 12; + } + if (p->sig_req == 1) + gsignal (SIGIO); + } + else if (p->iosb[0] == SS$_CLEARED) + p->closed_by_remote = 1; + else if (tcp_make == UCX) + { + if (p->iosb[0] == SS$_LINKDISCON) + p->closed_by_remote = 1; + } +} + +/* accept_ast is called whenever an incoming call is detected. */ +accept_ast (p) + struct fd_entry *p; +{ + if (p->iosb[0] == SS$_NORMAL) + p->accept_pending = 1; + else + /* If it failed set up another listen. */ + listen (p->s, p[p->s].backlog); +} + +/* connect_ast is called whenever an async connect is made. */ +connect_ast (p) + struct fd_entry *p; +{ + p->connect_pending = 0; + if ((p->connected = p->iosb[0]) == SS$_NORMAL) + { + /* We made the connection. */ + p->status = ACTIVE_CONNECTION; + + /* Be prepared to accept a msg. */ + hang_a_read (p->s); + } +} + +/* */ +/* These routines handle stream I/O. */ + +/* si_close -- must close off any connection in progress. */ +si_close (s) + int s; +{ + if (!tcp_make) + set_tcp_make (); + + if ((s < 0) || (s > 31)) + return -1; + + if (p[s].channel != 0) + { + /* Was it one of our descriptors? */ + if (p[s].domain == AF_INET) + { + if (tcp_make == CMU) + sys$qiow (0, p[s].channel, TCP$CLOSE, p[s].iosb, + 0, 0, 0, 0, 0, 0, 0, 0); + if (p[s].status != HANDED_OFF) + sys$dassgn (p[s].channel); + close (s); + free (p[s].fd_buff); + p_initialise (s); + } + return 0; + } + else + { + /* Re-initialise data structure just in case. */ + p[s].fd_buff_size = -1; + p[s].accept_pending = 0; + p[s].status = INITIALISED; + return close (s); + } +} + +/* si_alarm -- insert a call to our own alarm function. */ +si_alarm (i) + int i; +{ + extern int pre_alarm (); + + /* Make the call to pre_alarm instead of what the user wants; + pre_alarm will call his routine when it finishes. */ + /* VAX needs this call each time! */ + signal (SIGALRM, pre_alarm); + alarm (i); +} + +/* pre_alarm -- gets called first on an alarm signal. */ +pre_alarm () +{ + /* Come here first so we can set our timer event flag. */ + sys$setef (TIMER_EFN); + (*alarm_function) (); +} + +/* p_initialise - initialise our data array. */ +p_initialise (s) + int s; +{ + int j; + for (j = 0; j < 4; j++) + p[s].iosb[j] = 0; + p[s].channel = 0; + p[s].fd_buff_size = -1; + p[s].accept_pending = 0; + p[s].connect_pending = 0; + p[s].connected = 0; + p[s].fd_buff = NULL; + p[s].fd_leftover = NULL; + p[s].fptr = NULL; + p[s].s = s; + p[s].name.in.sin_port = 0; + p[s].masklen = 4; + for (j = 0; j < 16; j++) + p[s].mask[j] = 0xff; + p[s].need_header = 0; + p[s].status = INITIALISED; + p[s].read_outstanding = 0; + p[s].cmu_open = 0; + p[s].x25_listener = 0; + p[s].mother = s; + p[s].child = 0; + p[s].no_more_accepts = 0; + p[s].closed_by_remote = 0; + p[s].non_blocking = 0; + p[s].sig_req = 0; + sys$clref (s); +} + +/* read_efn -- see whether an event flag is set. */ +read_efn (i) + int i; +{ + int j; + sys$readef (i, &j); + j &= (1 << i); + + return j; +} + +static +set_tcp_make () +{ + struct descriptor inetdesc; + int channel; + /* first try CMU */ + inetdesc.size = 3; + inetdesc.ptr = "IP:"; + if (sys$assign (&inetdesc, &channel, 0, 0) == SS$_NORMAL) + { + sys$dassgn (channel); + tcp_make = CMU; + return; + } + + /* next try TWG */ + inetdesc.size = 7; + inetdesc.ptr = "_INET0:"; + if (sys$assign (&inetdesc, &channel, 0, 0) == SS$_NORMAL) + { + sys$dassgn (channel); + tcp_make = WG; + return; + } + + /* next try UCX */ + inetdesc.size = 4; + inetdesc.ptr = "BG0:"; + if (sys$assign (&inetdesc, &channel, 0, 0) == SS$_NORMAL) + { + sys$dassgn (channel); + tcp_make = UCX; + return; + } + + /* nothing there oh dear!*/ + tcp_make = NONE; + return; +} + +static char * +getdevicename (channel) + unsigned short int channel; +{ + int st; + struct + { + struct itemlist id; + int eol; + } itmlst; + static char name[64]; + short int lgth; + + name[0] = '\0'; + itmlst.id.code = DVI$_DEVNAM; + itmlst.id.length = 64; + itmlst.id.dataptr = name; + itmlst.id.retlenptr = &lgth; + itmlst.eol = 0; + st = sys$getdvi (0, channel, 0, &itmlst, 0, 0, 0, 0); + if (QIO_ST_FAILED) + fprintf (stderr, "error getting device name %d\n", st); + + return (name); +} +$EOD +$! +$CREATE [.archie.vms]fd.h +$DECK +#ifndef _VMS_FD +#define _VMS_FD + +typedef struct fd_set +{ + int fds_bits[1]; +} fd_set; + +#define FD_SETSIZE (sizeof (fd_set) * 8) +#define FD_SET(f,s) ((s)->fds_bits[0] |= (1 << (f))) +#define FD_CLR(f,s) ((s)->fds_bits[0] &= ~(1 << (f))) +#define FD_ISSET(f,s) ((s)->fds_bits[0] & (1 << (f))) +#define FD_ZERO(s) ((s)->fds_bits[0] = 0) + +#endif /* _VMS_FD */ +$EOD +$! +$CREATE [.archie.vms]in.h +$DECK +/* netinet/in.h */ +struct in_addr +{ + union + { + struct + { + unsigned char s_b1, s_b2, s_b3, s_b4; + } S_un_b; + struct + { + unsigned short s_w1, s_w2; + } S_un_w; + unsigned long S_addr; + } S_un; +#define s_addr S_un.S_addr +#define s_host S_un.S_un_b.s_b2 +#define s_net S_un.S_un_b.s_b1 +#define s_imp S_un.S_un_w.s_w2 +#define s_impno S_un.S_un_b.s_b4 +#define s_lh S_un.S_un_b.s_b3 +}; + +#define INADDR_ANY 0x00000000 +#define INADDR_BROADCAST 0xffffffff +#define INADDR_LOOPBACK 0x7f000001 + +struct sockaddr_in +{ + short sin_family; + unsigned short sin_port; + struct in_addr sin_addr; + char sin_zero[8]; +}; + +#define ntohl(x) (( (((unsigned long) x) >> 24)& 0x000000ff ) |\ + ( (((unsigned long) x) >> 8) & 0x0000ff00 ) |\ + ( (((unsigned long) x) << 8) & 0x00ff0000 ) |\ + ( (((unsigned long) x) << 24)& 0xff000000 )) +#define ntohs(x) (( (((unsigned short) x) >> 8) |\ + ( (((unsigned short) x) << 8)) & 0xffff )) +#define htonl(x) (( (((unsigned long) x) >> 24)& 0x000000ff ) |\ + ( (((unsigned long) x) >> 8) & 0x0000ff00 ) |\ + ( (((unsigned long) x) << 8) & 0x00ff0000 ) |\ + ( (((unsigned long) x) << 24)& 0xff000000 )) +#define htons(x) (( (((unsigned short) x) >> 8) |\ + ( (((unsigned short) x) << 8)) & 0xffff )) + +#define IPPORT_RESERVED 1024 +$EOD +$! +$CREATE [.archie.vms]pseudos.h +$DECK +/* These are so we don't end up using the MultiNet versions. */ +#define socket VMSsocket +#define bind VMSbind +#define connect VMSconnect +#define listen VMSlisten +#define accept VMSaccept +#define select VMSselect +#define recv VMSrecv +#define recvfrom VMSrecvfrom +#define send VMSsend +#define sendto VMSsendto +#define getsockname VMSgetsockname +#define shutdown VMSshutdown +#define getsockopt VMSgetsockopt +#define setsockopt VMSsetsockopt +$EOD +$! +$CREATE [.archie.vms]signal.h +$DECK +/* signal.h */ +#define SIGURG 16 +#define SIGTSTP 18 +#define SIGCHLD 20 +#define SIGIO 23 +#define sigmask(m) (1 << ((m)-1)) + +#ifndef __GNUC__ +# include +#else /* Gnu C */ +# include +#endif /* not Gnu C */ +$EOD +$! +$CREATE [.archie.vms]socket.h +$DECK +/* sys/socket.h */ +#define SOCK_STREAM 1 +#define SOCK_DGRAM 2 + +#define SO_DEBUG 0x01 +#define SO_ACCEPTCONN 0x02 +#define SO_REUSEADDR 0x04 +#define SO_KEEPALIVE 0x08 +#define SO_LINGER 0x80 +#define SO_DONTLINGER (~SO_LINGER) + +#define AF_UNSPEC 0 +#define AF_ERROR 0 +#define AF_INET 2 +#define AF_CCITT 10 +#define AF_X25 10 + +struct sockaddr +{ + unsigned short sa_family; + char sa_data[14]; +}; + +#define SOL_SOCKET 0xffff + +#define MSG_OOB 1 +#define MSG_PEEK 2 +$EOD +$! +$CREATE [.archie.vms]time.h +$DECK +#ifndef __PKTIME +#define __PKTIME + +struct timeval +{ + long tv_sec; + long tv_usec; +}; + +struct timezone +{ + int tz_minuteswest; + int tz_dsttime; +}; + +struct itimerval +{ + struct timeval it_interval; + struct timeval it_value; +}; + +#define ITIMER_REAL 0 +#define timerclear(x) (x)->tv_sec = (x)->tv_usec = 0 + +#ifndef __GNUC__ +# include +#else /* not Gnu C */ +# include +#endif /* Gnu C */ + +#endif /* __PKTIME */ +$EOD +$! +$CREATE [.archie.vms]types.h +$DECK +/* sys/types.h */ +#ifndef _types_ +#define _types_ + +#ifndef __GNUC__ +# include +#endif /* not Gnu C */ + +typedef unsigned char u_char; +typedef unsigned short u_short; +typedef unsigned int u_int; +typedef unsigned long u_long; + +typedef long daddr_t; +typedef char *caddr_t; + +#include + +typedef unsigned short ino_t; +typedef char *dev_t; +typedef unsigned int off_t; +typedef long key_t; + +#include "[.vms]fd.h" + +#endif /* _types */ +$EOD +$! +$CREATE [.archie.vms]network.h +$DECK +/* Miscellaneous things for the networking library. */ + +/* Actually an itemlist_3, but can be used for itemlist_2's. */ +struct itemlist +{ + short length; + short code; + char *dataptr; + short *retlenptr; +}; + +union socket_addr +{ + struct sockaddr_in in; +}; + +#define TCP$SEND (IO$_WRITEVBLK) +#define TCP$RECEIVE (IO$_READVBLK) +#define TCP$OPEN (IO$_CREATE) +#define TCP$CLOSE (IO$_DELETE) +#define TCP$ABORT (IO$_DEACCESS) +#define TCP$STATUS (IO$_ACPCONTROL) +#define TCP$INFO (IO$_MODIFY) +#define GTHST (IO$_SKIPFILE) + +#define IO$_SEND (IO$_WRITEVBLK) +#define IO$_RECEIVE (IO$_READVBLK) +#ifndef IO$S_FCODE +#define IO$S_FCODE 0x0006 +#endif +#define IO$_SOCKET (IO$_ACCESS | (0 << IO$S_FCODE)) +#define IO$_BIND (IO$_ACCESS | (1 << IO$S_FCODE)) +#define IO$_LISTEN (IO$_ACCESS | (2 << IO$S_FCODE)) +#define IO$_ACCEPT (IO$_ACCESS | (3 << IO$S_FCODE)) +#define IO$_CONNECT (IO$_ACCESS | (4 << IO$S_FCODE)) +#define IO$_SETSOCKOPT (IO$_ACCESS | (5 << IO$S_FCODE)) +#define IO$_GETSOCKOPT (IO$_ACCESS | (6 << IO$S_FCODE)) +#define IO$_IOCTL (IO$_ACCESS | (8 << IO$S_FCODE)) +#define IO$_ACCEPT_WAIT (IO$_ACCESS | (10 << IO$S_FCODE)) +#define IO$_NETWORK_PTY (IO$_ACCESS | (11 << IO$S_FCODE)) +#define IO$_SHUTDOWN (IO$_ACCESS | (12 << IO$S_FCODE)) +#define IO$_GETSOCKNAME (IO$_ACCESS | (13 << IO$S_FCODE)) +#define SETCHAR_HANDOFF (1<<2) + +#define NFB$C_DECLNAME 0x15 + +#define TIMER_EFN 1 +#define TERM_EFN 2 +#define BUF_SIZE 2000 + +#define INITIALISED 0 +#define ACTIVE_CONNECTION 1 +#define PASSIVE_CONNECTION 2 +#define LISTENING 3 +#define HANDED_OFF 4 + +static struct fd_entry +{ + unsigned short int channel; /* vms channel assigned to this socket */ + unsigned short int iosb[4]; /* returned status block */ + int fd_buff_size; /* number of chrs in buffer still to be read */ + int accept_pending; /* a call is waiting to be accepted */ + int connect_pending; /* a connect is outstanding*/ + int connected; /* this descriptor is connected */ + unsigned char *fd_buff; /* pointer to buffer dyn assigned */ + unsigned char *fd_leftover; /* pointer to any chrs still to be read */ + FILE *fptr; /* we need to assgn a file ptr for stream io */ + int s; /* socket number - needed in the ast's */ + int namelen; /* our socket address name */ + union socket_addr name; + short int fromdummy; /* wg - accept wants an int - recvfrom wants a short!!*/ + short int fromlen; /* the from socket address name */ + union socket_addr from; + int tolen; /* wg - sendto wants an int*/ + union socket_addr to; /* the to socket address name */ + int passive; /* still needed because of x25 close ambig */ + int backlog; /* backlog - not handled well! */ + int domain; /* domain of socket AF_INET or AF_X25 */ + int type; /* type of socket stream or datagram */ + int protocol; /* protocol of socket - ignored */ + int mbx_channel; /* mailbox channel - needed for x25 */ + unsigned char mbx_buff[255]; /* mailbox buffer */ + unsigned short int miosb[4]; /* mailbox status block */ + int ncb_size; /* x25 connection information */ + unsigned char ncb[128]; + unsigned char masklen; /* x25 user data mask */ + unsigned char mask[16]; + int need_header; /* x25 header field gives data status if req*/ + int send_type; /* x25 data packet type eg more bit set etc */ + int status; /* status of socket */ + int closed_by_remote; /* flag for remote dropouts */ + int read_outstanding; /* flag so we don't hang two reads */ + int cmu_open; /* flag to say whether a cmu open was hung */ + int x25_listener; /* flag to say we are an x25 listener */ + int oob_type; /* handles interrupt messages */ + int mother; /* mother socket for X25 accepts */ + int child; /* child socket for X25 accepts */ + int no_more_accepts; /* don't accept anymore calls */ + char int_data; /* interrupt data - only 1 char supported */ + int non_blocking; /* don't block on a read if no data */ + int sig_req; /* generate SIGIO on data ready */ + struct itemlist rhost; /* descriptor pointing to "p[].from" info for UCX */ + unsigned short ucx_accept_chan; /* Channel returned by a UCX accept via hang_an_accept */ +} p[32]; + +/* So we can handle select on terminal input. */ +static struct term_entry +{ + int chan; + short int iosb[4]; + short int char_available; + short int read_outstanding; + char c[1]; +} terminal = + +{ + -1, 0, 0, 0, 0, 0, 0 +}; + +#define CMU 1 +#define WG 2 +#define NONE 3 +#define TGV 4 +#define UCX 5 +static int tcp_make = 0; + +struct descriptor +{ + int size; + char *ptr; +}; + +/* Initialize certain things 1st time thru. */ +static int p_initialised = 0; + +/* A routine to point SIGALRM and SIGURG at. */ +static int +si_dummy () +{ +} +static int (*alarm_function) () = si_dummy; +static int (*sigurg_function) () = si_dummy; + +FILE *fdopen (); +static set_tcp_make (); +static char *getdevicename (); +$EOD +$! +$CREATE [.archie.vms]multi.opt +$DECK +sys$library:vaxcrtl.exe/share +multinet:multinet_socket_library.exe/share +$EOD +$! +$CREATE [.archie.vms]ucx.opt +$DECK +sys$library:vaxcrtl.exe/share +sys$library:ucx$ipc/lib +$EOD +$! +$CREATE [.archie.vms]woll.opt +$DECK +sys$library:vaxcrtl.exe/share +twg$tcp:[netdist.lib]twglib.olb/lib +$EOD +$ write sys$output "Ok, now enter the ARCHIE directory, look at MAKE.COM, then type @MAKE ." diff --git a/release/base/contrib/c-archie-1.4.1.tar.gz b/release/base/contrib/c-archie-1.4.1.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..4948d762b6709c79078e58e84bb2630d379c1dd4 GIT binary patch literal 99300 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 literal 0 HcmV?d00001 diff --git a/release/base/contrib/less-177-for-archie.tar.gz b/release/base/contrib/less-177-for-archie.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..779616c4387b9c955cfc448a1ee0a736349f1d29 GIT binary patch literal 107556 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 +Subject: Archie Client Repost + +Enclosed is a repost of version 0.9 of an Archie Client for the Mac. + +The previous posted file had been binhexed twice and this is confusing to +people. ( I forgot that my mailer automatically binhexes enclosures, sorry :( ) + +What does it do ? +Archie allows you to query an Archie server to find files that are available +via anonymous ftp. + +What do I need to run it ? +You must have MacTCP installed on your machine. I have only tested this program +under system 7.01 and MacTCP 1.01. + +What does it cost ? +Archie is Shareware and costs $6.00 US. See the README file or About Archie for +details. + +Please replace info-mac/comm/archie-client-0.9.hqx with this one. + +Chris McNeil +MTA University +Sackville NB Canada +cmcneil@mta.ca + +(This file must be converted with BinHex 4.0) + +:#N&bBfKTC5jcC@%!39"36%9B9&)J!*!$R1d!!$$k[j-"!CIb!!#FFB"AH(KhHC! +$LAUDLSQ*QSQ)DRU+LBQBKhL*N!5)LAQ(H(KhL(KiL(KiL(L)H*Q*L(GhKhD(L(G +hH*!$L)LCLBPiLBQ)N!5(LBQCQ)Q*Q)PjLCLCGTQBQ)Q)LCQCHBQCLBQCQ*Q*LCU +*QT!%UkUCQUbVUTZFQTUEN!5+LSPe)!!"-d4@CRL)L*QTUXZkZX[0$,blh-$3d!$ +0`0!0$!$C3#4%9QCRCRH(GiH)GhL)KiH)KiH)H)KiH)L)H)L3")PiLCQ*L*!$Q)Q +)LBL*QC!)L*Q3!kQTUTUTLDU##1!6rch))2Z!55r!$GP*@0P@9pR-jq2!fNRk@Nb +',S-M(33k[@5%%%MLl+TcpC9F9"c&dG(NFCS-P16N'VeR3G0r9lL25q4N2rX1"%M +r[e3'N!$mL!Zbk'MdPRPV-4k,-e,h4k$F`Ai)lVa8"H6""(J4d2Mr`iXZJ)J)#(5 +52J#hD[@ARmUSD%[)JJZNh*!$KA+VN!")612Sk-#-a2jA,Br*d86V*6&jHNS*qLT +-IM-A5C2+a-[42"#IRSPG6e-T2Br+cq-"h04-APXCMmI%aH9aP"Mjr"C,&dQ-S,r +eq$`1$`1@kV"#+5Q4aq@T)Q,T+6+iqGbp*2jD*M-RNU2*d3KZ@L5N&fBjH*PDV4k +5YXp'''4ap&N)Q4JJap&56q9STqNQ*k*!a)Ke$%NS-RPU34Y#UBap&MFR%aQ,aP! ++[PXIf8qe6Rh(X[4BqPQ-PNji80r)Nb1,be)K*MmEM`1D6d9K%b92Ce1IUY(%Xl# +*P0*9@@SLBf`dPIRZLJJKKZHrJJk$*jD*2f9PB@3LR2beKC@@S`-5RL@99Sl$5@9 +694+qUUXp9Ck*8DL*CjqXdF5RXE'YV+QRXkb`ViP66epIB@F5SUSP@L*6-5NS%F" +M!pd@NV"!JcTl1*U"#AD)9GC@e85riZaXFP6k'UXSQHX+R59e9AfI9)JpCAKP940 +(6eb)R@ji)+H[cd62dqPURBcAS#dk)j94,'bX0"990Qa&G0@@HIL5mcCD1bUCG&S +UUmAQCLB`A$3UA9eKT0(94"UE%8iBZ[e%63e3c&K%&[XjNJ!kE%dGP99G9C99I8e +@Ma,B(d%p'rQ02qM35Zp3AU3eeGi4*&PNMf[d%M")%N%MJZHeJJREh"4`5Y&Q))+ +,18@Nf',cfHbeRT+ZV"qaJSY*4D4!3"!J`8P1aF&-`5Nh-`5B%ADLi%Gdi#I9Hi* +D5QCQ(RSJ'cbBidHcaSkF4,-3h0$A`5F@lcX9$B,TG$,U*b''NY8-0TM+f`dG8k- +3b!5iKfbSCPDURccdKR1L9fajm5ML8H$cm%e-8%22BLe"A`mqA"UAbN[P*HXJa@# +r)**K1acX219)XcC9PQp*%V'"aGJ%P4L*1LZ1PRR5qCQXVmpBDBGZL@5erJ[%AT0 +$,CH#,*k#8SVLmr"65&&FAlGX34d4B63i-)VcS1V4bcY&VcamRrQ#8TVZpaDrGUJ +XLBE'HX-CB9pRC@&DaZ(5)Al3hd4$T0"HhCYdh,cGV625$8@E9i$EC**&@2Vd3NM +FDm%k3Upk'p#&AE3ALq-3EkU5eTT4JCIX#em+Ne&L)#aZ"!(k0adqR9Z1NI$F2K( +VelMa(Vba(VA&e0R@D@RXkTdX,p%J[APUN!"+[K)*I3a!LPY"dih#b0JUeY0+Z`l +pAd8@FQI$'%be52$9VTK')3LJGiXL$*@'HUUdYLCkXTkf`LXG)4[)m!3V@G9C1%, +N35$8pB1#f2XkUZBLfN4A+(EaCa!M"5dEj%#2bDNSlbhj`'ZE*b++K)SU[Te*Vr" +KTZDJKMGTJTU#850lmrc8YUk3!+Zc8+rDa!(3aeE4MrKfN6L(6X9U'4`KQiH)CJ@ +QRlRf0(`S@EHP#RI)S02h%,6ci@1m`Bp"+cN%P861-jd'*jNjmArBFI$4A&cFdek +!ER8ei,DE&8dX!e(6%!81U5!+(c%GeVTk`Rmp@%&FY$pd2-!6j)Ii`rdKqQ(l#@* +cjhb%Im)CT3YTSqBcX22`FeEq(iQ0mhl)HIQ122+pjYD5bTl(&k@RV+fRU'5r#m9 +qb#6lX",DB@,E,946UTkR3jDXl9NcL(keYi*V5e9PSdQ*8A!Jje$RFb)PqHFf8I3 +c'bMb$R@i+DYkD15E&T3@ZNlQF&0D,24)MKKLVj3qBa4JHN%(UV5epQqN1ZU*49C +kcVhd05)P%M&c"EX68(j-(04d&[-*1`SB+5eUjbG"bQa+MNH(AeKep`Q9I$pPE)J +jG+D@F9kjq9&HTEAmpI$rk+4-#C!!H60m9ZXF0eU0'5N+ZX'5JS02LGd'Ac@e6EB +DJVYY4fpIEh-ET)f$MFZGh-EYL"VZ)PmYX)K%+jGBXK4F#2rS)F*0d@+!bi&JrK4 +A%V089acq8#Pj5%#(RUmC-E(lND+0JF9I-(*%*dR8D8K1f$N*dlj#%8EX3fq5PYD +EXU#Zf2di)SN4Z*685"!Ma%p66V3cGJCKQKQq!`Z,P$2*!bpMP**SK`eR965A8MJ +JaZYQPXN6VTk`deI"dN2e`kb(F3lf(bBI2Kj%2`3r-P'*kACbL%A0#R'AX4ehplT +"LTMBrA(ik#'p58R-33E(m)[6bYG"GGMp-@rc[N5dM3@Nh"'a3bNH+aH+(JE(QeF +Q+G(4[FTT1q50&FFkfT,A)r2"af1SS2l`AP%ZYl1r9faqV"G$Ek1refajZ#k'LZ1 +KZmcXid[3D'#@Yr&`A3aU`1[(!Mp1#PD+iP1E-NLLhdH4qHmXTE6eKPl(2&a-N!! +KrH1Na"2U`8VEk05cPUXhrfBj-p*8-P5fX@lYYZ*0YYPmT!&bVj*#3CkKNL44L33 +q*m%Rllj*0Q&*#"XVhVfKaI*4qbRGb*09TGVC(jjDd9Q'2%I9Ek#KcX@r#)D"'N* +Rf3Jce[D*IM!F%!0GUVdh!MV*Vm8p@D23cqP@K8M&6T!!U,$4p8h03r6EjZaMZ&i +GA1UbAq'-P&N8B!QI#l8-Nf84"1q4'[YrcX59LhMX06"*L#-9$3pKRGMq'!b1aqT +LeB+5QF2(rH4X3%Ti-U(`iZ(3)LAcK)raIfZ'[VNpCbrQ`GrJLF+XJPkZ84!+D33 +'L54)Q%5%1ZNATjhU4F)8M5*PQl`8'#Q,R1@p0Hlj65dELZab0BhZq&6`1%GTJKm +5(MhZ!N(G(XITUbi3ZEQGkP5MZ+'q&YCY!D'-LbB%5)45F`383mqQNdA4,JT(Q,G +,IlR15M++ire58-!qj+aHNQjN54JTQb6)Ca3K&d%)ZcBb#*lmBP0C-64(mN3U0D# +HCaiH4!mSKlLK`FaXIT*Dh5e%d5eU0h3Njm&0-J0`kDrJ0c+DA%@[#80[aUdSEIM +r5QPPQP&!#2qT+'hiHBVK#%$AP$TB2-($p8)ib(f`)pZ(P`r,$m3&I8J)i%2B1@f +mS2lb468P09HjMDiM%c'ePF$-E+6RCMBrfTTd5VN8-aYF2&[+`@G*1aD#ZfYhLCf +fcZ+Y*d'+5eI%H"15ZDqKJ*eea+$'AZYS4#)[SqU)e9bYaAE@9Uj(MF$C5FA#PfG +03DY,d+''0UErRF&+a[c-I!J,Jl#ff$(F8GV&PG$+CHFLb1J%3`ba9%5ejffi450 +YTjhU35k4&JT,8T(2&F5C9,'$)5iXP6ePINE#`,F1!2)lBqcJ05QQpXIEC5`5hBe +8'TJTVlkYGXICVT!!e-I6G2%b855S12rcX2Kim3[FZ&El(fkZ3e-G64q9ae$)aIP +PC'#156FYZBL4C23dPJQ1%*%-KAE(j++irp(m2[RD-Tf$d(fB+4e-#j)8QQ+3!$6 +ID,aLD(1eFT*c-&dKjX@2e-F#hf1%3H5Lb2*5,0#CAY8@q8&Z2L[-+CPapp)d)kH +MYDB`j)IXGid(hq%dF`G(Di&N,L+j2@&5YpC`h8e$,fpSN6!MAm"mbBf2XJ9lBP9 +I$`d[D)he8-c$`iTMp3qL#R'*8@'CMp'"-eVJ8PND+jm["5U`)FU0FAr1cXcFmA" +NJD,5k(-CQFLiR38H9R0"dr8DQ#cZH%S0jS$DHjiDKR%TX)"'58DbbM@C8DRJD[, +SDc+M@28Dapca-&0*!&JTQji9"Ah2&`9h&JmmH5jbZdZm@c5)bE[k2%IGc3FiS#F +FBJB6lZ'f@TKLFXJjaibeV1X#D#9D&FD"DcM%#rmMd$*fr`5aN5G1TYAE(q,$DGc +l$3#,YImkfk3baU&BY-G"C,349C-HZIideiH+YjMY&&H!ZF&*DU15h-SVL3c#R!1 +8YU6,#B*rhcd%T@rQ+YH+YiVAhAS2VMl[LC-#fcQJJkX'$kNaFkTP"#KVB+fYNj[ +!`9XEd+DmbYDDBeE9MqL*Ppp%8X%a401-)6b09(8efMF9,P+K%!LaqUJ&)@iUSI$ +Url*4i5[PXIl,2fQMFGJYraSVL#p6[8MR[9`8eeFK)Dfhr'K[Q#QZB`FdK6-p@Vk +5adrL5q!S!LNm&04*#3Y%'NYY0Mp&[Y%HBHY+6",0331,f`[e)lkarDl18qSl$hm +e(,pNF,A`5[lHA6819fIRHp8b-Vq@$S+[ljRSGlY+((@%U0p&LG$YpT0`@rG+05k +hpflXIVjPI$Fd((eIq0Mb+#F`NaXH4Z*bEMTf,EplPGRImKjh,U1,NIR[9SMb@bb +@SRV+Rde*9DGQJp$r@Jr[I&6UGViIT*DAN!"+bPThb!)QT##9'U[ZG`8TEk-YM,[ +Ekm"VaEl+*AQ894c'IJNiHD!dUY&VkVICiQCKqVq"-)!6kbG9cp[A`mfbqAiTbJp +IZIDl(&`rIBrd4CZaR)EPEC*)UZE'q+rAc"*U+5Z#ZNEpEXL0SfM[qIJa@UJLC'f +kUrhHBRSIkhkH`8SLX5d%R*friraVa%VZ'(1Qc,JKj[-R`ir!FehN5Nq(l)*AcIH +UTC%'jR*`eMBdhl[XKrVPFF1meZ@R!SqkKR,!d1SIZ`58Q,60fVL&Im9iJNc$q&[ +hPrk(+MNZ-!N@8F4+SmE"5Q#QVc")5Y[q,S8JKd!XR9S05F#3!-`aA[Mf(04l$ZU +1bFYj[Q`8NlN0IMb1`Vi,Z2h9ferVEj4b40K*#3f&[q0M",AbKR)Y)4!E"(5@pQ" +94LS+E$Spd5D+%"*j6*eF4A1'Q5*"(q&HFqE"690GEZ4(*-Bbf1SFGAqbA$(0+`M +B`'5S0M4Tbq-K0)R290+S4UV5B!"K8BRDD2XBjcDb59dh3+P+M#P1DFGdj[pIa5Q +eckK+EAqbB`BS(UTS)FrLTS)Frl%YM1IfVEQTRDm["S'FTG"40",lPd&2ZKqbG+Y +Nl`0VL3%a3#6XlAEA'J*3&me3J*4i[r'ea*+bjlG`D9@m1$5,IF!4ME(QTN545-* +*AdETErR6%J-*4`fC15ejSBBq[Ul"QLCJT@ab2LAZrd#2&&pPH@2*3lkrTRS**d# +kLUY-`a8b5a3NR6d[m*NS6[N"GCdYU*T+aZP[fGLC#f[J&AJ",ZjB8fCMP902CCj +UEA(0SD+ircFPQV@'hKU5CSPe9(4[@`'GfhCB+BfhC&$VlTRJ!C06f9c'9MC*5#2 +8JcLKPd8-U&$*"3bV8-ZUKQJ4"$X0GF"'FD%9$3LVD%D"-AL0edEVeY`VPG)T*q( +G&J5jA9iRV$&e&KT,0R%#MGA0bN)$+J'J+)82Z*4qfhC0hq))f0*hL"(RpMREP8% +-33RrZDfbB,$,r5hd'+[M3V3c4SS4FESCl06N@Cd%R56N@lk#p8dL*&K+DrcD*0X +#lQ[b"AipU"9k3+rcj)&G)J9d1q!U63+["R'$1BGbS)5+XP99qNDrT3PU5,+Lh8L +,G'a&0+1Jc%UA6pHbdqhZ)5a+F*@%QFR-Gb,H#8iGSbM*YU83U9LbL,i*GL+C12j +!T8'fE%'T+bcEhTLJeI$&ife+bkXA-Q)SXalFp)cXb2E6--1RJ-*"D4A8Cml-ebP ++",@bFM'P5lS1fSjHBGTl%pG!Z@k+SG[9b(D`8dIfXF)0q0$GBUjN6p-aV-Hc25& +$Tj6KC9L,IL)T""l,bq#JJmr!9ffU0Y5Abk*#-682JS5eP9bG$)9FKBL5@-GI)%N +E!eaAi'NZ50fSe+&@6mAX1A8(08r"XQ!0RVhh5Dq!&GN+*R0Y562'2!NQca3J9G9 +#T`#T*3V$!9*U&B(0fV$#q569DkGG4+#$[fXe(Uc@`Hl0IMppllPKKq2e80dcEm- +9q2-8N!"H2apY3T*(R'F@MmH'a1,hjN0bd`YVhVQQ(Ih[AY*YSS865[aeK2'k5q5 +5@`J(EkK)6XhDaBq0ejNS,4QfE0I")VLV+5U1DCRa*UEV-68DQ0AU2e1@G#8md5b +VS5R'LABZK+JD*Bad*AjJPfVY'ZV85N-604hhZK5CF&,SDY$46#1#RFIM0h90RL8 +Mm9"Bah-VYVGZ`R0VGX9aS1N-jDG5lZ'dr-"Q*`B16*H!A20*aQb!Mr55P,RQi+" +#BNiI"NIXJqLjqY[+pPUUR*XmlT,1cX&X$CL%l2#[jF#2SEp1*E&8*LY4C2"G#NV +#0dkGTj1decX8Z,aE`5$3KC,R@9m&fFar#S1Z,%Q-j1lP6k433r4RB1NGFML@`(0 +kc8`G""@TJ5CNPJV25YQP9jB,90QpKDp*2@H0dJCLChFZkMc5L*LZ"$hVAM)NEjl +haS)j`1YrbV2ilNlKhUY,VmSPVAJPeDLAG2"+C85ec`5`LL@[H#@'85f$`5QP%YN +m%MXe!PV(JP2+*E&i*8#c@,H#)#RjVmY),E*CZ66'HhQU9R[I8Zcm(5@hk8[K#mX +q"1L"B%T9,hC#$d[TJ[eAH8#U$2`Ae28SN8!lj*0L[m"&eEk)ZVI"&-[SLQA`4B4 +p%@%I"&KU[Td'R2%i$hDd-"Vc*JjD9T*01N'a,8'QR`JdiqL+FI"&22SLRR`48$k +)U"`LCJmGfhh426h+2-'+!4V0HiL4+-3+6Yq!E98bqHldj!8P',"INMI+Yhje,4l +ie54[[%I#5,Ri&eP+0irS)0h+c-(435G@YX!*aKPVIIN,R+dHHHL1MGTM$bQB-i1 +,EX*Gd0*k0LY9H+E+P+L66PQDSRmAYkY,drAdC4re'JmVV(ckJSrQ%L`BEEXk5(Y +&%Pb`rf4lD2j)pC8YUfA9dU5kPX2H)6[VbmQ#)'BP1C*-M**C!)GN%R62#4!ak*0 +JdN2j#G%L"Md5E&T)P`Ni5)'24*Ud*'MPdGV&%2-83U1Hi#*'rBdN6QbGX0d$a'N +$(T'YBm4VShXE5c`f3-HMEZAKXIJL2a*'C9Vci-),3&+Km8IN$(T"1kDh(jAK)JB +p%Q[H*3raGI0,V`U&F$DQ1!rQ@2l34,)fE6)HmMCRe#h$RmH2FHEpR%qh'hCpZ(` +I3rf90Pr@#[EIfYpeEldkb*3`I*%iXX2El`LJZN&dYr"3U`8e$cbdT'B'(r5beZE +L3EH!bIaT,1YV+qUc,UP8GkV%,ABUm%I#)bf*pcDq-MVqUC*e"AE)d#Sri'"%V+h +XaP%Ye+Zl)*)4!p`U0[XB+CM-V(,99NI(jM#-bZ+$3idhr*A36K[q([LKhClJK1% +LX%'ZBf-1RkjUlZp+BQ4PYF46AC!!8S01JND)Q)EPY8GP99Di@%2#6c[Brr'fVjh +c)H0-C'(N&G,hPc$1%[I3P$iD9m2Z5jGI5q``FN[Q`63DCH$90*M+0c!d2I`E5Pa +(hR+TDSjTfPVQB-!b(R(ISkAEEK0+6EEXer*AEEh&rC!!mh!8'fYM*HmDGc,[Qm6 +UJQCQ(le@E,ce(SkU[cbSppZ#NK"[cEEF#!5Hfh8lAEEajhJEDhHZIK6aR*%(9P9 +8iG+EAJk)%-(f,'IUB9,"qB@`'FLCeGaEQE%3#LX,1XUp3L"89a*@)G'`9Fr&LNk +0,Z+0AEE5lEEi[r'fm`BEGB$8`39e0Y[#aIq)1'V,9ffmB(2,!cahZce)N!"8*Yc +r,`8PLrXjrPicr(2k5aT)RlmTlN22kJCVRmjhGP*[9,STEGBD1"(A#b%UrRq@GP3 +qdAieE3cUd#*ZDZ[rZ#2,3,0CiU"(KZIEVXdCBH$bQNUV)Bac5)e-'+N8m2beQX( +B`9Ihi14bZ04a'%NXVMNJUr,`Mmk`9IdZD+'abeQGQq,M+Fl0bpML5e8&0,)J!A5 +[jH&BQKXa%#B",F,(9[pA1e0T$m[)GZcKQ-K&NmVMXVjN%R6IDirXe*-LRJ,*3hI +QKmYUV6NQ5pIdE@L-G#KZjMQ5*MQ5V[(+rcCcZj5J)mUp2likLE($jadM0mEMT5M +fadSpq-G*f,ASh!$l6)#-a[SRKZI5aPl039dIK'AeK!Gj)m&"G$,5dm"iKSPcZP" +[!2(GZ9IFVYV)&+ii5)P(+i1$)f-%8B""6e5q!X2Q61DHL5JXE%QhIMijdC@9k09 +CI2G"(8SLh4A2JD@#QU(dLQ2I++1`bZMp,(80dUjN5D8IG*[-%QPEa"3h48QMp2d +)@*kcVT&m,5`BQ3rKMLT*bRf@+M3mZ++iZR-F2!fR`fJJm*k+[bFD#*4P4Cm#4Nm +2J52+Bq"+k2S5)5(X*G&4h89TVF1PD+*himJ9V$0pP%TUT,jTmGj(A1j'F)F%,VK +(633hrY4k#V`HR[6arMG#+'%SqR9F`Z%2kAT888dPh`D5llQKlESrc(KTqTB"%0# +!S02d[XDA25"TfVKS2)Glmdp66ciJ``4,U[)$KN!!'L8A-pSMZk+jhH9RhSUP +k,i[Dr+)X$'1Hid)*+##@kR9IFlUjhE3V`,NT!A1l`FqB95qZ!aM[QTVkj)b53P@ +RAFqN+qCk)V#$RrHpX@5@'B`jGp,l(%4)D5)i4IS-0L$+Z"h@%V4Z5-`1Zl*Gd5M +20"S5@K4pC1-Pl0)1N50K[SJmTQ)mk1PQG2Bk@C%k1R'LjLD#Kac-f5%[8-V9D25 +9YQ8Q(HJ3dXppQJKp9bjS)-pXM-a4dEYc%LG4K&)'jD$d3-`NYUba)k'81(-DTZC +"q`U(Ip`rpL'4kQ6+X$`b*jcXLi%Idk%eUj9UGP(!MqVE9Ui%I,XUhE9P@jl)BRE +fe8GUB$J@[VP&L@`G0"`ZXTMqrY9"fXGB`m`mSR#aY@F'f9aT`DI,,'!G![p,E)S +HBb`VV'RXQGiCPrpf1TKqZ(R!0mUL(2H[9jJ-lYC"6V(epCCd&2AjjH-"ICp-E@3 +MIVA$+qjPjFImp(EEbc1HjCa(D31TB[SLpb,T+irqmE&)35ZfmDNYDXr(&M"Jc"8 +jKMVB#FfUb%Qm0&+qIddh)-FafRUZGq$Djb""IE+%FJ#2rPV[IJlV[*@--1#fBQf +#J9I#H4YVBd8*#+5G0YE5i#5`(F,US*&&L&dk[&&kTmpi298DeAeI)M,6'G'Zdm% +e%QERlY[`0V,B)I`JSE+rm1dU,[Bp$krq0VGV,S8q#($&LV4"LC0Iap*Zk03cPE) +(RUZajpT01SSYaYDE(hDQ!GjP'GIM,mECj@TdT"VBf&ISakfE2l8-$lj9rM5iJmG +2'`Z,j(4Tp2fd$b$'fG$%HSa(Y'0+k'$'D"Lk0'-ik'*"4L38B*%5eb1Vd0r+j(6 +k#4+j&fAa9AQQ*hN0SRVbKh#H[+(aPrMlcdA,D-rS!q"'MAqK%4`G-,%d+&8D&#M +0#K1(LC81KS"-ZV9-V`UCBHQkYkDbQ[ldd5qCCdc&-N$cTMPkPXCRkUTd+4bIL42 +G(HHe5%cRfpREdDlIPS2HDFp$QT[qG`8VEk1r%STH%`C+8`XcY)hjPe"VMS+A8`( +PmJJq32ZG39d(+SVMmZT2SCcMYr33FF5(M#l(KFd%Q,`8S+C24a""iiDGqB@4%a- +fJpGaX6"-l0)RLfmMX(2VSFFj)[U'ILkI8`DU#9Rpr$@c3$Ir@''dm2Zqe)chMLj +IMcNUh6FJ&A$3b35)G1p!6[ifcAeS(f`M*k2X)T!!9hilS"0f!RK0)1JD3G*US06 +($U1K2VjcKQZecGUPi&$Ic$DlP06#hdD6+,cpUeT-G9@EPPdb"VK*F$G8cP*m$,T +FBU#Be--1rZIapbGh-E5B'q#YHi1J5f'qYR5p)C`PjBlIh+H"UV6Gdq*NS!3jC3( +2Z0[VQbIVf5IT(&6@rjp0GTAc')Y&q$&62iMeedq`1[i811Lb'$NUD6`"rAQbNdX +[-NeE,)f&KSF[Bi[2CjQJ-c,Q6)DXCkAq9-Qj5CPb&4f5IHG5CIm%Nk$6bF&[5d2 +Kf%KBaaj(&SCE3EUNXUHa5KbfM8HZ#5JQ3`e*m2%N5@pH2S4maR8Z+N%2*83L$`R +#m1VNqVQL+'#QN8#*"FeL(EAU#9N5Y,DeGi$+5S02*3fp,-hbiep4)c)6@rKN5NN +H(4l)YEq'l4C2CBj3%fb+rLp,6ePDRZ(DXReXq,K&0pSmPpdlQ5#DjAkh([+"Ek` +@rSH1"IIK1dD8GThZeZbNJUe'MXkUZaYK@jjN'"Df-X#EQVEJ#q38**!!SYi2L90 +9B4*+'%-je$RDZ2e8G3b9AGRIpa3kHQkY&)Y#mbUE1bV@F1L%!CI%q8q0-"Ejj&# +aP(6ep9@Ze#ZGGJT%eD0aLrXZGG-8%1kl%[%SI#05ET)I2l%RD3ljGAVA,SB8)TP +)1SmIK'E3F0Nc$j)&5YAK46*Q#@&!k3L@eemAG-JqUD[L23Ck[XV&H(cH82KeFM0 +b-EGddKJj'QZaqdYma++E`V'(!VCblaRQkBVq0X,+HSXUDjSkMR%"L6'#N!#&!,h +$YiFjAZ*VYE1TX4`QHUY+1@`L55)B8NN,'0S(KTMACTA2$5jZA`DBCiD8cpM6P2J +dMl'&ZKNQ&TNp*CCA'Zp0bKi(ilk+R`80E#($BT*+6abQ!c[ild)YkIRU,'i1$[P +04B+Br(HaY`L3!%@9(Q*)H+rKLYI'hF5Zr(Hfh9)$B#Mr(I-P,34d[AIM[U,ZjU# +KaTF8'*X%R9U$ITR41-()Z5`0Sh%1X+eQd3LV(99r@Q[D8G!bhe&YhbI@-$-4aiA +*ihVZ!L3@,%BPe3`qFe-U5`C-PHa`KSiB'-FKJbB0X8,D5`$Km'A52$+k[%LRkr5 +9f-TkR2Yr`Cr#Y'2-iFE*L8892A1IfXrJkNRCeh9!hrU(qKS95($6AC+PBD`B)`% +ZLXU'FUm8c!#C[#*[f-[ASea%cTUrA(qG5G*deLmVM+"4Df[qGL8Q!SpP*Pl&iX6 +)fhkD+iq+b0kl$d9apNiP44DMMF6`beU3!!6-&Y&PD%#,#mT@JZD5V2Qj",dej!D +rd9amR0TVY3c'bZY@8Z[hS)I6B`(S+dM1IU1rSY6CIYFQ,&USkQSTXPD,bNGPJTN +T#A(lZ(3N+8AT*Xj8'F0Abb'9aZE2q'Ca0A0+!RC!*QifcCfAN4C)`Siel294@[, +SFDLJI,EZ4-E9)Q#SGT+kUVfj2(h'"&4Ne",NkjEE(IG'fUrm"jN2hISViI`,ri2 +0J6N*l+e95G`0k1$'`Ha`Pm-L9"GMbjqFb'`bqB)[X6[K-jHQRKRV3pV-!4$rB"[ +k3r9L[-KqNQ$IfYqm6*bKq[&@LK(e6F&[hDS%Gmk*RFhDdA-f'41qHL5X9*%JAQL +H)e%9'ZDU0FpRMiFjNQS)M*1d%IXbcJXfkqP&&YXZ1TPUUcbqMUV*L"[5M1G$6Y6 +VRF2P6RqI4PY@p'6R4LU`*@5IGBU%9D,*apI$h%0c65-&I"D#e2CGQP@fNjQ#2*e +dYI`m[JE%R6J4qbcGUcUSfFrAT5rRR'358S[M#Z,Q9[mi*m'8De$aF%,B$I6e*9D +GN!#Sl,2aqKd@EGd@*)!G&N-$AL%ifM0XKJBG3UmYVd4LLdM(NNaiR"l`N!!a$S0 +YBT8L,0+RLJ8b+!Y$5U`8UPRD#8Qi)e5iTL2l,N%e&KTh9@#8SCE-Q#K,@PmPQTG +jLcM*k`GPDPL8XPdcT-""'!UeVMMXV6jkX5h+A$1kP-2CT94U8CXbP*6EJKP8rE% +VJl42p3Ha&L@q5*U%TiI'`AIDIbY4N!$jpUb![[FN"'Np(-N"@rM0e%LkeXmI8Yr +mjPEal**jEj8C`Ha4NU-I#fFpB)J6T4REcR2N&HF5"admKY%H3Xkh'Cq`V+PbKNi +BIlq1rcNlQ5`G6B1q-N5*M'2NZDpPlL2NB0I2&X6d68pE9@GQfkmS2l`*cS5M8@e +9q4&ZKM9'$Zr#cYA+')4d-DR`rKR*j5'8CGie5C1M-IUHX-N9jUc,@CXX2PA-1eM +*@0RP#,XN1$'F`8VJc$H`8R'l-GG+m)k!ZdpHHMVhUf5F('kfSh61bHqdR,RI`FE +T@@m0VI'NSm-Aa"&cUpkJLa4LB)TcRci%kd$(1@92TU1`XG*B[T!!#CHN!QAf3#b +Fp`6p$lrAf[Q4!b3TXf5&-M6e&9@YpL#Y)dfZ(XQR!fe'm6$+hqFL5SklkeAM-#$ +GCNDc4Vjb'@%%ZUT@MJMU[-)&6'IJP&6VRfqL)&#F%L'4YEBah-cSq*,9H$6)q1Y +3,*ZrRr9$lLI9L0rFrHNS#eh2DCdP0*Y#TE94dXhc`E,'ePECe9Na29fj%TH2&!c +Er93*@V2p@9RJDAF+VCUq810La%kI%'*Z4Dh#+CdJS8VUSj2HXZlBbXia5'3L0ZY +QU*)eG%Y,Lr`4r#(KUZF4*PYR*8",Y0TF&2+'L!b8')f3!&%$h%!JlQ)IFfBJa-( +8a#(l#eaKb89,&Tk9[SQ'UJ`-V%aZ*[m&[Jrbk'#1e2CcN@lk#6T*b,GUD#1Vdl( +%GR`+[1RKpc!3A@9N)1LLp1!edLhF"[caEX!dc9jk6`!MpfLjY5#43JUj$#pe65' +&id%H3h'CBpl[#'%5b@XHiii-CUFUlfM&*f1)hDBcl)IX`HTJNlEX*Hd3@,&RD'& +&""r4U533I+*"Te6UTLbB$D8lVhXa-D2cCq$aX,DG*)D'GN)k$5aF0S*-#2m4HRT +X*Pik,(df"5fqMYp3jA1&#VmmjFf4LZ)*EYf*6Z9TT&46F819X!HIKHQD-P(1jDQ +b-6!0IZ[`@A9lPMTRVp0h8i1$$JTVd4JG$'lLK[PAdQ,raXITaRl)RliRld"++ip +h6p4MS,[NIR[4Xf,pM*@LjQf,IH[ce2CCjN!cVAkk1")RYMpb494X$KljJj!!Lj[ +3pPQT`E+4T*c38G0)GR18e#R)GXIZMGM-h`,T+hd"Sb)%D(%T&TK$DN6fa4dEh+D +r'1pI@pLS[Z%e6)rGdYV6ACT")X##-4Hf38APm$NpBDBN+i+5-HUk'XCe-h03`d& +GXIT41,R1@p0Hlj65dELZaL0BhZq,E)*iK2``5BZR1Yl1GQ)Hr6Q`44#e4q#8ZU' +#VNk%-L"MKQ4"dB&'19lZPRHT9#"i#,C!a*l(k5%#ZJN3JNErAE(kUD44"QEhe#D +[%ATeQBIJKXMlL5S+,ErRcX2Id`Z$d0&ier9"LK&1UjTL8!aq#pF&STPIX(-E(kC +@FJNkLpBcR3BRQ6RaIpMk(`Q%j@TaGFRd8iZ[Ff54D@qM1!kjG8-XPBCkRVCr5Q4 +Y!DiRd3m`"2S3%Kq5(q-2d1AddkF)dDqd2KaEdMP+C-h"+[AaX[TU@e4A)[e,GFC ++`dUiG0C6eYJ[m[3h0#CQ9A8$jN%A0QCYIbb**l@mVC+Pde5-YMmC4*Qi@pm-dLq +KGL)[5)-D1[cd4d-Am1X#!Q$!3f+U#ZfYhLCffcQ+Y1acX0bZFKKeU@6eJjqSdl, +(eB+5XBkBR,RkRcYB8&G$ZNaJ$0F0l+1kI&AbKaeACTf3!+jq`&2U%Ja!-GALVjB +al8!GM5@`b$8Jq4SrfK4UB1[U#&m$LIbm$M"3$*F3*GmKP%K-BJrpqVCZ42iAVK[ +GHLe0qdZ`"bN2,CXdBc3C+F65)SmD%8kLD!jrCp0KRRdf'%IbE""TqVB!drNf!12 +GX(1Y3m2c'YeHXN-$i8(#JS-&**[D8p9TE2"69K6f0LIiYpakZ1T`Fed&mYl`L%1 +Kl2@&5$h1IU2@+MedMhkMfLdKl&kkk(1-l(NPm)Rb5QX(04rjd&*A(IkT'c%1DUY +*`069G@D24i+DkXA4I98HeC*e'$QVYqCTTfG@Hp5QNajb3a8erUN`EDFLeIT*,95 +64-9"3iiih$`63E[X5jD3!*(,PJ6#f6P!9-TE"68`*CJTUY,pe%b`Fe*p)L9#333 +ETU)(2`U)DGHl)QZTpq$QT#5D89(Dae05X'X&G6[+D24a%N'*ab!*[MCbaS%$F5d +Sdb[k2j3Qij!!q-V3@e&FArqLM9f"Lf"+h&kh'EYFVh9ajN2hf$1*`9b2N!#h[%e +I%C*R,ilC4fhec`Q,FqcF2#6D2(4H5q5THeP)4[5`'GZDK3b18-Ujhb,Ij3)cP[4 +XH`S#hFYl%"TDhX9fR%%2RBqF0jrH5`k6P-$I*Q45hDUi$NBeaKeBirU5Y1ec0)L +&rcU!ep8'[bJh9h`S[9ferMEr2-9faqk(RKT""mA'i'ajSqPbNrNkhdDIaPJVqEE +9r)!ZK(iV*IP*E`5#-&&Q@rJBr-"L,5F2eJ0+Q0e-S#3rAJLq5KR*RCMph3frpU1 +eDH5ESiNhlR%Qq$MEaF#jrFLQRhUDFe+aJ#IIJLLpFr(-l,"G$JT5hrV4fTUZ'Ya +ErfCMQ!Tp*H)G*%VVQV`8YEj3(%[I[idef("Ie"!l'L#!CI[#cpiR(lm&GEIpjIe +,iqQrJ#65JC6e1NXNX04VBINd&$`,R34Dm4M3@e#J0%SqRP[Xk,8`&qe&83ND$Mr +ml#*4i,"bFKEk!NHA@+@f8h*H6qHrjfQ%3Qj+0k4[Z2#Vp'dNj#KZYA*a*@,)'r9 +3jA'X4M"bdI1Ga$`XEAq21m#jVmMmmXpPD9505R!&eGmLAAEK&CG(`l5Yd$$c&5d +IMZiKB'64Mq8(YlANd$%BDQerXC13!"-Vd`NSCE3'(&j0kTT88,UX&GlI+!4eH$N +HCMM2bNqCaiNRUq636M#`rIdIJ*pfU54N%!'I6ZJ*JV*VU)''8BaCU0KaHTEl,X6 +BVkSG*2C4VXI#"&![e-MJXIPFFpR"Bk[jBrGS)hLML0!MM,HM%milCd8U1%reIml +JjLjdr#V54CMD(bi*#VP-"UCXY`,QcTT5*@T&KJ+1jXdk82dH@[qT69*2dY)Z*9q +*lPM`d!ei@$cTk!ZEf!JecTfB&&"rH1Nk'BZE++Q)Gcda0!Sj@+[Q!e+)!)N$M&! +BE#X@K25PAB`C!!0GK1A1R(-8DFH#ma!mY@bDIFkHR$d(*JU-P['kFCC#D)h0Qm$ +"(cGh9!)qEJ!LN!$Zi,qm$HNZBEQhM6&*$pp0)TFE4V+GkQ0Sb2+@@5"pkk9(!+k +Ap'M'0CK'5Fa"G0Mq%A$P8Vm0ZU-#V@2BcN2h!PpqhT&fEUEK'495@YDQGK+i-lC +bk(L"8IIbif`BV!4A0K)iJ"S)pSKcUf8A[,Fl%%-"X"$cPK)BIc#kN3-jYE*U2Fh +$fL+P,0fH%e1%HN6&%XBrQEHrcLcd$fN-9i#TEEMF!4H!52lb8-Zi'5#"M()*X6* +XC@pZDZ(0K6@bjkZ%qdG9pF2efmCRd'Ee4*G8*VaAN!"#AMA9c*+&%[H$m0Q5F"R +6i2`k(ARri!9+dGT!ZU9Hd#Mb!3&6b1@#aM#If4K"rK%HAQ3*+PfYr#Cc,([NNej +L[l3r8a4J)PEIb`%m3NS6U5a)NP5@R#m1S6fqIf5!`*2l)8@qV)"#cPEq)r9!%2" +J&JNUr235CcS#"5Y[jP$I%i2RDd*fb%djKr+3!$@kNkdJ#JNi*!%*%%*44#8JN@N +%UN%8%Uk),XSKGS*&driE&b2pGL88SHH!dLCH6*i#2RF"ZBd`Xq*VT%MFISk59Kq +3!!D@KrJ%(b12m!Cp8Dbl%JZKqB"T'(k%J+KqC(#4XQCVAa$Q2LKrSeib#$C2(MY +5r$ae-U3(U@KR+'!q'NJp223rdASXe4'erD#3!!'qQ"*8$$#@8`Zkm`bq[JZ`[,Q +GTEq*4fTCBZm@46Y48@hHckN%*6)BJ&cc(DB-IQG$ARj(l*DdKj6MmbEN#A@62,J +Qc-cCb6bi2bmFrZmF3JB+lMC@HU&b(P[#H2,33ECq(Q(68IMp+Y4+ZN'QD1eIfHJ +r(K+FATkHJr()c*314"VRk6"#PRl[8CadK'IHkJA2Q8GUphX2aaVdpJZ`eclHcYk +0Ib-AdNEA'HecNM)Yp'lMUI40X*A1`4fCj-mBRL&6Z1a*9#A8NrCC)dp%S5(MU6i +T5TJT(rM4d"qQ*5*5@dbC`b6[*5GPPkM&2VPD,a0QMUDbHH@MbD'$0NMj[69D!*V +!%eXECdddJSPfe$VN*+Z9aIq,RA(FbJXC5fQ8TJB)KQZ5K9dpDTm"JGEF"0`[93D +d9ccNdb,R9-qkM1-j1aB9QYBhaUBf$XJ'pb1mDh+3!!Z3!2Fd3,[8hhSk#Jdm--l +e)j6mUY02*DXYdi6LH&"Gc&3QS02(6P[j"6Bl@JcjjB)*D@`5F(RfQk9m#GNip25 +pNiZl"2)ehFl8%ElhG'TQDBhj0(,0dZfSFkNk*aq4j*8jiQ@3!)-pET[A,ER*)8( +e'HS,kVhGk'5LhmT450"@RUkZ)GmVcei-T!%%'"([C(-@9lJT,8,,fl'QrcdI`Yd +ZH#+M3L6M-G86[T5TdLN6&D@`A0!DlYjqNNbFp3CMQ)-&04fBMbm'Q#`a$p)$I4$ +pIBkISI*KqR&#mEd0*Se1[#C[I,Gm*Qj@r11Pb9LhXmL!2EF(N[9SHH"A0QepKNE +U+DlU*BiTZ&*!*XD"A16`5"FC!K*ir1Y8CeI$A56a3mp0%haQ@!3#GUQ8JC(%X8P +-q-0pp$MUk4qB[hUD3!Em+('edMr%95QN!'A!dQj+EN4([`!6lfAcP[fbGr+-NlE +8*NA1dd5cX*P+Vqh*1EN[9,I")$Vj"'RcmA*GBIfFP*A0bXaCb$b#0MA1h-SGiLb +0VY1a8JLRHTYlVf1GZ@lG6I93R-p*Tc282HeFM%bd6CddVID5*PCI,5qhLC@*Xlr +Xc*kE))3`MT2`1@ZpCGd1$PUNBP*Ik09@PE$liNUp8P!Z9(Ycle$hX@C[Y)TGPEk +&c*qh#aeEpX6+hkMmlhUZ3RHp-L,,5q9Pp[k(aeFIIpP%k%6Kb(K(a)$0djVdpP, +TC-M35%A5[M1m3QP6e)%"L$4Rj5%DPF#V(rXUfIK0`'AGQR"3MkPV(lJBqrEiiYd +-fk0Xbr9'PmTR9ZY!4a3(0!4T-43FjU&5ET3*1EN98,la+(&!Ne6cm0[M49K5R5J +5ET3(`M6&!FmdMQE`Me53!%dEXTQq*m"Y$Ij#FJ[%@mVj(T635Y0H6b2AHQZfTKT +TE8ae0+c8P2BfQNCU5TSr8`(0&dK0%2IpL69-`GejJTLG5ceR0A4ILN`Qa9m5jm@ +RjV'I$DD[RUifP,Tb*5Al2`4#1b5SZm2LX,%cpH0@DmT'`f4PdNVMS0A9p@a%Pk, +NM+ZaF@Cr&Ab*d-@HF9+EZXh)dAH8f&LG$9p1pbDENP[jVR0fY0H)P*qM)34(#!h +$1N3L&%9K'b!PemSZHR5j`E"*f@"[LD6#kc&fFeQ-9Ii-j64qUJif1VEfi9B154q ++091##HHUQkGi(1KSJ'KMGSVm#k&MT1,&U8CpL8@h9-#,r4iV!`5HpT%eD'UY66@ +"J[2[r2kZ0Li8aC)KS!5jUN)25dEpml&BTM4$q6k)[PDN"$)c41@!"fT&!iR"@DM +c58b2-j1$`GM8*Mp@(fVrlh6[Td4U[D[R`4qp05aV655`a,%)N3$T(LiFHl22'BU ++(1f&%p03F*!!m5VUljPCqDZ[mFGPXDUU)c&MBdeGGJ1pYJG68eKGNS%&eK%*(eq +TE8K!m*if(d1P1jT53PSerDpSRYdVVQS6Xk2PB%,1U#b#6!Dl`5VTLT3YV+f#l'I +`X,5blQ#NU#NVIr,$)$#UG+R"T)@mCVi(-G)&MF6JB*AGQT43HeXrVJ[,M9B5IS+ +b''0fEhF8MD6@$XDB`b-U8qLP9Fid$29T9lR$YS#i5qr"1eQdleGV-EDhlCH`%Zl +)qGZK,cidZ2[VEb48AGa3$rB2441#89%D4Ff`[!4IQH%AIK&JmfEL6,[,U$#DJNh +Uk1ZLD24Hc&-5@&'@"UrjmEL90DLN0HUM54*ABNe%Zp[di88,b9--""d8I1(e,J[ +3&IaR-Grj6ACY'+6+-Ac*@'LH9")ISd+Ck6*ULhR4`iG(KfT&HK)S),Dr8LBUbGX +,0@R-lfqcQ+k5DkZ#2kZ4S2DrKXiNqBRAef-K,r,P2FKjmR*339FLHmVkkDqd11d +%6$R"G3HcmZcaRfA2eXaLSNpE6*@56[TIA'J$#1,ZDCKq`#Sm#LQm"9f8+Z5QYpG +[VaM!J-`cB*j9VIBJ0pY[XJ8rc3@RB6N2HXq9cHc4-E+3!%pD6+q59T[*aX3kJRS +5MHT%FdC2V`8UZVFIVK+)5h3PbB2#I8$l8,MqL%`&[VGe1*f,EfMFBj+U`X62#!M +ldFHCXJFRShpbrJT2bDQ$@3AdkqRQRmNJ!N-'bSNUjDh$2ep0,q[T904l"RC%)"% +Y!5H$id-1UJHDLbrTKQ8PEfL))h&`P""-h'rZpCF5NdVEfRBkQ#%[G%aU#Z8Rc`D +D*p@X2'rZJe,HC$rYp*%(MKXQ3"0`2$LPF5a+UbHI6Z)88a@-Nihpm9I&$%m-bjC +NbRm)1E2MG)*HZLMQ+-fE%l#(e*Re)r!ZMarCc6dB6*IA%Qj**%Q*&RRLI,Qp*[[ +-jG&`fSKH4EjRHD5qmSVL8*'!k5BKlf0m#GkTh+H4!&1[68kP81N,!)b$lNh'GNb +IIb#8Yr`G33(Z1Bc609Cr6@@BcMdMe[l`M5EUhrCeJ5)@AAQ8B9Gi5p,V"GEIF'X +TrYJ3Hrrm,IF@r,6b2EDFYq8602IGD"LmF'#QXP2d@A%mPQZ3!*a,"%#GBaMP*(P +FV(PFmqaPHCAh21l'FZHGBhF#L2bj52a)-*Q'",19cc8Xj$9*!45-BVX5IdaM!+4 +`dREq*L[-"525DmLl)(,)#lY458--43jdkclc('5Td[mI1eZ[fG-'+##h`A3TcY4 +ZZ($*h-*b(ll(l'*e$q&M**L9*Pd@24*L4*Pd*aU@rLV,-@-!p4(3cGhA-DRa)ZK +*QR2,LK*UN!"0hHhk'C[L%"Q+6kT`Qq4pmBpabGeLKcThrPlUf$[R#T!![Y&$-2i +D03QPm6&#+)K-[jFE1V#cHVJDC+SP$RF`kdD(f()Yj)+TDKA,qPM4b)0PP34UPm9 +Q*0YAK`icEQ-8aDPa(QFAdYJr$PbcjIUb$D8h9Q6P54#6G`Sd&jUlbMJ(CTaXl9b +1#k%J8UBQ@[e'BRRa0dj$!fFSL,QK+S"LS5ci83dfK4+M"rPi@GUfBh&2K[$+Q'@ +%)r+U$2jY`@FN%Se-aFR8rCIrQA5NP%)&V#+&-a0(#Lq-eQ%L+FlCR0Fe2%kB[5q +H+9rSem0`,LXq'L`QD*%f,ITHBb0@RVNmb(QeG#H&b1f2iCMfjk4E8-[l1mBj6H* +h%QRL8LQfj$cliT-B)hadfBQjMBrJJSI,6Y5QdZ24%,,(#5riCMh-$T1V[0"A3E* +#a,Jb(Qd9app%EM&fTZNH#R!JXJ8P(QUm5aVrTqJqb*5&`e(VQ35+h28QI(ElPBE +p6U88KBhc",9%["-m3)Zj(9J31`-&hCUY4Vql0+$qpmC"!L6CCk5Bd),NY%FicU1 +H@L1Ei4DHEY*GI"ek8+1iK6D56U5DTQ!kZq82G4F)ZCaBQCaG56GI�"KM0iQj! +!QlSbe)09V++irlebP4QX%0R0G3f$hM'JMAXHd6lSEjUhIa6"5@#3!2"-K%XdcX! +QJMNralq0[CTYJ(D`PLB)rEY#(Y@XSP(fX2m!8hBf"65jZhRdQM6[NH6e9qcTmNX +i*!6H)1LmR!L18E3lSe$TeA65m2d!0ISIkc[8Y[`[S5r'Yr*[*SZ'T3"Jm"q!m"p +hkq2aYI@b'"NVlN%YJ2*`#6QU[HL@GAjhceFKr!H@LC9k4*1h4Bh3Yi[k,fh2SjN +rQ$K'XIa",qc3MqUHN!!')eKp"%j#T-"[VJ,6M[#!6B+Fd6(6VT*A@B4MS$4HNkZ +@A#SP'k&'p6&mQj)l*'*3NMApMp(qIQFf0SPK")Bck8[aZNPTEMbdG9mhZrGL5Ij +B)R3-(%YrUD3PJL+`R1RCD*JM(BdP$TirED'A`Fe"Yr&aX[3!4iINBhLHj&PTI1a +-lJljJZJYY[0cL&#)%$dG,d&0)h6m[3amG!"dYr5Fbdj1dUBUQ%2HP%dmIjR@kP2 +Gp+hq#'$S)Xl3RB+ViJ+3!-%HU9B2V8Vm!Cd-[S,k"NI"(dekRDa6+2#b@LbB,5! +,5)%A5#2"b3PF2"(af#Vj5@`mGJXV1IPR)**8-ZdRKi*$SCH,)rP@`C+kHEKMpY8 +-$ZJPX2(h[&mk(Xm)FKA#LCRhBHIPFAeZ,JP+($arGk'mp*KilrB`I4bT4SUj3AM +q2jFr"*3G&eZRMjD#l81RZRi9dm*eGJqQTf,P!qLC2V02+8X&jXC2I8eAIHXcm'& +J['qNU[TrdCq$XS-(qM8cq9aq3J[9M(!p)pERi,a"GLCGfX6(bqGcH6aA'qV@dA` +T"dQ3!2@ip&JT0!Ufi(LihcIR,F`K-m6J(2p*bq`TVpLqG"KX(0I9P*F&Z(ZSXM3 +lU,dP0q'-jd%6pR-S[K8QY*fF+DNXQa"4Qa!&f9T[XdY9CD-afkDZTkR2J4RY(U0 +(T3)f&MC@&5"'iUl(54!)hZLcd4!MkG$8Ci#)lTkHcVG#"%lA9b%%GRV+RVN#0K@ +J5J4"UpC*RJfeNZ32@-K+eN'N+*(55YC(k92#KPCbQNCE$b[%cGT633deM"Jm2(G +N"@B*&b[h!C3N!%K(B+,Kf[iB@*NrZY))2r1T`I5c0"+cPm[-@m5Xj0hQ,,!0KiY +f",$a5PC6AB6D8X5%UaZKmQMh%3`-JNVleJjT(KVkV`hPA6b-Dc-fiZ`Uj%-S$JU +"#2$+jq"N*%&iPk$T,c&JZILiF&Aq#5@!FiDaN5-P)A@6k##aJ@&Um2D&U65&U@[ +m%N&fYC%0AAK'DPI0P4-BXU!edVT$,6M&JZDCk9LhY4@-2(5I&f%@8c9U@mPiYl8 +cCS,R%T+FY[e60TS)qGh*!PRHN[Q$[P$(4C!!mM'ddIiZ0QGJJT,Ab*RDZ3YMCNm +D!rS"f*5!*5##4FkI"%bIk%qAR5GBRc5[%lIi1R!6mmlEN4A6fe0+cN2`9FIE*k' +*2#@m&j)G1N5(4,`K0eC%!$U6J[0Y(!j+)1(r5Fc+H[64p(klT)*1#)%dY"H4#*A +p'8J[XlRi-#**-d*SV@dI64pYG%4T"kAYi,r4CbABN5,&`Rh@)dmVC-C6T-Ap-%4 +&FXCDfQAXEFG6D88fNi,aEIQ6(-3L1!jfLh5+35c%@YT1V[$%DUlXA!d5Aq`NdHC +"+fh4"jH'SpGRMYR52+IG!p*%ekb45@G6(XbmHQH2K50M(U,4lf&T$IIQTSrarc2 +B5Zi*AGl(8NTe*2JkP!SP(X*5S*5UL4Fl6Z8LDH8qZfr93fPKGSP'#8RK0dJaK0Z +5rXR4F`V$B-%*@GM34lSU[epSk5K`Q#JPZ(f9Idq@aGGH)P#C-K21Mc9iSjciq2E +61@aG0p14qH9J1133CdGAq*4dP!(8K`k@[[3GAQ,dMdGFcMKap4"p(N0JF@B%6FI +JT2JIp@FK4Fk(ll1!"[X+0b9PSk-J9)4,5LjaZ$)&B*Dh(f-AUR[-ErLCm1LdP2, +4[NT[`Tj50qfQqfRN)hlUEkN3#Kcm(MD'6PmkD59Y4I$NIRZNG4FcV2m`5-T`N!$ +5GmM0C0c58S"[Shia,j5j23hq9*VAEae9)i1DZHKTMK+c@6`@(P1+q5M35-lTj6K +8dT1LUGCaj6K@-$EbE6bR&YZUc@6Qm2+F*0A"$Ba6VQNbFhR4IN(ZV#Dq5qG`'GJ +Zm[P#De+ITS)1VL6P&c*hUBPFRm"5emC6Q%kQXY5CAp+D88Df55p1rNLAb,,a*b* +4i1mi3UN4Ea`jbSk5aJbf,Lb-YHIKip0q%Y,C@F55BbJ`4@DNUVANbB%Vr5Z*QB, +aJ64LRC!!bpVJTUVX+h2'#KUD+ire[X9I+Z9-Fl8bC3CLaqRMU'3Lp2Pl@EZZ#N5 +`G,'"&d0M"ErTl(1`ANb0[kbZZ+-QMLcXVVV1UVV',LCAA@0P99FA#5ZZUY2CemA +UjAA90RC9X@APGG6eeIT)[6bZZdGRC@C3d#L[XiXTf1TKq"8+hGM"-6N1iPCqdJU +llf*H`3lSfd[#XBm&VM&rC$D*HhBU#VVHaViH,$hp0)GM2`prBb)2H-$h1Q+#'f8 +Q`D%dVMSIJLbe$MU[$Pap(`3FFlF8A!UL#*0r!"1%KG[T)4,Tc+HrK&P-2jN2Ihi +#UD8eAlDD4$b2eAlHaad&jb2fARlBFmfGC,8A-f@0ap&2Bh*j'HRmU1L(Q1AJT*H +XVjXZRj'jGLI##LZ1IM6M)(U$Z1IdAXT#K#(AFl6(Z03b9SZCVk$(6p*Q-RN@)3) +0GMVi6GDrSc8DHN5rhr3HdHA1Q[S-Xl20GJT)1,a$i3FG*$jkS9ZMJQYZS4$[%9Y +YmU(DjU(I!U`*ZHEe'Q&BeMYT0I3C1MRk,+ieaS"(,ZUU5d22AIkqP85HcCIl[$T +%[k#*AKie9fSZCVN4(-ccAC!!L%R$r4k2ZGpJcc+1a,1eq-b16bdqKHp+!3!IfIC +11GpLTa,#FI@Mf5290HbqPpP)f)pMQCl(d@0bDSiIJVSj1mNS"2DTeC[9(m2G*+k +H4JMZbVX+Pm&iQ0*$AdT5dYqRXBj%`j[K%PlkH&iF@lNPD4`9e`8VI*!!YqR&qZj +'0bb0#'(khBdRFi-M,1*+@"Bj'"![L00,(4C-LQr@GB'fbpVBVfqPr(Rh(3jjBAD +95j!!5r"ZAeca#2Z"V0X-%5),2F"+m%X59*[%&mN)hXpMR88#0`F9I,'2i5DR!2+ +B#('PmL3GlKcPLGL`UAbiF9+VMm9)GCbC5Q*8Ae`AI)rC,IE$mEZ+cD-K8RmYMFI +NCma#EV(c*!G+!*b#i"SGjm&&F&-q,3DJhEi5iIN+$-ThcjI%`r04HG,(XPJVD,E +a[[c40[l+IbZ6*rGYIFbJG2BZNaD"d6-PfRTqJNllPDDlB6jDZ8`R6ddI1p-PI(d +rGUrXMH,'m95l+cq4BA@hkSP(r5F[[48dMK,cqd5)bZqE'm8Z8mlK,cKEc`U8X8m +kKRBYc4IE%jl46G2"6R0&*f[P0[Lkk4jNjLrY0'@@3F-KdZpF&Li*#A,UA"%qqJr +[03Af#r4e"1qcl&rJkZ1S*rh2Dq1HS*f3!q2kr-eKdac8Z6khf0ZX)FB2##$D2h) +06%MRp5,![kN%Ul3+KY0"HU(9k#9RV5HeB04!'dNpD!9H&%Y)$NSSe)JYT*P1ml$ +`l5TNCFaYk,5F,Ae%VDH[36Q%JRCbJR+,5F2Ae(6c+KL#e"MX9"3BlEH[Jj+Jaf% +NU,5)j,qQ`rTX3QjYTkr(eq%ZR)imcG+$(I"ak$(I&VkU6h'XU*!!40$(9rV4D3a +i#'fk5d%'PR6)6(TS)Lr5@1MIE"Z'K(MY#,KS4mM!L1CZjrE(B&S440#+pJ4(hpS +KJ`)M`)Y'"%IS'K'`B%G$p$!L9ic!LlGNd)fl!Mp#)J"%amE!M#A,!LDL-#,rM3) +ZNElHVjM3K#!#-!L%!4%4J!)PjCJ4I8A"!LFD%C9S4RQK(M0#29D%FKJ4qU4D%CY +J4IX-d)S'K&Dd)iE3MkQK(hY#1F`)kP25qJ4GfK&qD%B9S4-Y#2QB%ApTK%fM3La +B%AA6Y#2i-#*&V3G#Ma!%5Z4D%0Fad@YB%AEMX#1N6dhJ4q6ffL'bB%IPMf"&hdV +!MmfBD%0C#m0HBk92N!"S%0I!kC+bD"#2i!4dkI-9!KUBIR5""!KV-ATVQ1SDFG3 +dB[H+D%0AL)e+&N))%*)!!LkI%`)N'`BA9T3[Zr3)e63Mq,!L1E!"(0GK(01%Z-U +AlB*%#*%Z4*!!krj8m$jjX5j3MV6+)$hF"C(Vr,c(fE2aB)1[q3"2h36@TeHXP1f +lEYG2TE24KYCfHPdrDkV@DlCEI[Gci(Jq%#AJq$i(I@Z[lM6D,3e@Gl1Pbf4af-R +FC2d&&Q1dTiYGT1if'hhHrmcLqKk2TA&ak2RmAKH6EGjVqhdGC6jV+j'IQX0K-(J +qYkqEap(Q1dUUrYHkfqmmVcq0aq4l(XHakr(pEdr1mR`VA@kLZcfET++Ia1%`29G +9J-&KT[(C+NcF@ceHehINqIk[XHclIZHllR*j2XqVaI)hHfeQPd02QXTMZ``Q"[p +rkV!GCLFAMU,-8eGfZZllIm1iir)pVhIH&UpcNHP`2%llBGYBaFjQ-Kf)9AkrAqC +`hBKA5e9Ph'fh[PHGkIVHalR[F[hreqrlRVF2ar"YGCTV#VcH6aH'`A9K9JHYa(B +ic(jA1D(8E$`2(i2RmEeq6bJUq$PHakAQElFl1ddYE8jQJQX*J1T[er`(@GGeme1 +d1BUG&UpaEH6j[SHTl2Zqpm(-jR,p[e1*'hZi4`(DC+F`dceGr[r9i,#BA$iV'dH +Ed'Sf@khhNqEk2(p[PHrm2`rVphMqK`Gri&Vh@TXUV,ilXHZ`@!kVUjM"B2VF418 +1AU0&V0[Zr&mVLHRkrYqpc2LjR[HaaZ,jALERDkc6k$XXMLm2Jm$J3T`H%`de2C2 +Xp"fZ`h(Jq,jIRqVl2+#VPqhk`L[KGlXV5bU+6(cH'`Fc-B,"61#kh$cQ2T+LbY0 +PhRJlrKHPaq6m(`mchq6b10jhPq0i@ieqSV1cbFmVp'#Q*R"i@DRmRQp$TpCY1ph +XELHRl([IVr@&AUHK`EHflrDGaBe1Cb-lLF0e[@pC-K9LCh)dXA4kRZVA`"32@j2 +[HrlhYmMeI5iRPlr`Y[h0R&cH8adhf(ApGK"3KP-IPkQ[dfVfIIH('iR'pVPHpb[ +EpMMqRaH"j'plhAkI3dfAb'-a@*kr#i2"B,#BEXFGPFj@D28klEl[a[-p(NHjb[G +#VMHI`[*hfkfHTX-pf9(36[BiK&X4[U,XXp@k6Z0MheYj2%p6f2Ej2YHakrUHK`q +"iqph'YdfKTXaNXGLqa`r@pCeJpm*rRBZLlC&Ui(SmIfIDpRf"2r2iIPq0i'ce9P +&l5Nb10aIBGGeQ$kcVH[l('dHDTkc4p[X4[r1p6erC#Ver8Z22i9[[0[VG4Ae"'R +MCX4A"i6VX6LmK5C[29qReQehAMF,d[9pFM6j((p6dZ,jHqlrC@QNd"&6N!$'BR# +pBNIf+af6brD#JDlFEb0`lMeH2kr)j((pEe24iG[i@hlVYDqUcQCbH0l(VaDZYkq +DRXKP-e6k$5@QblraH"aEK%@*0('mrJEiJqdYG9GTQ-PM1``h@S96Z1b@@l229rD +klFEfhiARh(UHYkrVmF8$cI(m,[0MUV1YUHc(`-4KF)0p0cq2bHAcQIXY9XYb52r +1p,e2@&#ipaa2+hfkffYlA4CqQc'3!*fDkr#pEKH[l'GaZ3bP,89fSlVZr#mEbH& +jhTSYJmV`I)hK)6dpK&l6+8%jLF0ehAGIf%f+"5CZVXY9XqqhRMH9`r4ihVHZ1!p +2LH9iZlfq[lM5eY4Q-P2N#[ABE%pM0ic(dG,6k(6Dfeh1pmEbZ*kAU)9FEcq$j(K +ppYHke**TbZ2RCV%BM%GK068h2j'Nl5,CDVBEIG@hNF%@X@Re23mhb['m,[GTh)q +"5dG"16@*8UaP"4CI1k$6D`M8mAb[0mrdq2b12kYaja&4ZYaXV65k$1jI)cdhf-d +6%ZaQjkKbRCe@LlEZGTh[KH0j4E9mG#S4AHEQeehE@"0qb10RCZEa8ef-h1ih*CQ +RVY-6NK31"aI6pEe[9ihT#+li8"*[e,4iqIRCc&63S!L[C99KTV4#Zhi2SFEe8+[ +0mVar%hHhehDf0AQk6*Br'cf,aABpMLKe@BTp"CGUUJHAaI5p4#VKqC'hqplrD%e +22C[,j1KaXkK91$Ij[29YRUHkffjm0)&[6p1ip(c[0i%EaI"l[ADQbcp0QXYNXI2 +6Fd,8MbQGUUl5paVp[Z[%mVKqIk2SqKk(RF2Jq@2+l+ddeIRZdc18b9"1MJX9La& +HcTkc4DJ8$HH4jR$i[RqKk(RmAcH$j1q(kZhXp"8pT5jA)6mjLK2jl(j5PcP8Y", +`2&mRKF6LqF)Va20i!LZdlRYE(2e'Ec'6S-CLjbFaH-S-RPqbTXrBkG*DRMqA`Z( +a21mlLm6L*E8@Z[e9RA4DIXk3!+-b&@0b18c#XU5e0pEm$Jm2c[2#[cH"iqm)&1e +XUfUcSmX`USD,+dU)VDE([2"m6b1!3eqYab6BX)@p(lG6Be+3!)ABBM$iRX1`a1( +a(B6FrNXafP6SG*UYEXGRYYahhJH#AN2KEffm2`1mffcf1[lVZZkeqcYHlfqefHa +f@j!$AEEAEGhZ0[XYAU,+YUkBPPBiJ,l$VCRUbkfkh%ic*pTS02V0MhIJq2aH2b[ +MrMrcpRhmhrll[VrVraqch26m`[%04SFeM-(%r,d&dMNT,aedNZLZpkkV%BrXklZ +0aEqRlhbIbrVpIhFhrIqrpIqrGrRrVjrfHaa2&llBpY@jh,Br'GMeq#r9HlcH,cq +HqAh!B@FSFYf@FUDbalA@E#ell`YrjI#i2P@rMlrb2)hrLq*iRLq,i[LEc`1qlh[ +Hml[ElIElMZpU8VV$39G2fHAbH4b'2Rj[VqX`(9B#B`@&&Tl+VX0*UGEY[#MHGaq +9qhqIeIEphfrCpAp[rhm[MjA(mrblEF@QKTFEKZV[I55NJP1Q2NHMr2Im02jH,UE +A`q"k(VqmKKpriIrIkrqqlk[Qq(fQhYHIcZAarBB1r4,hHVee&mr9-iDD)(b8l&X +0,fqZh(JllILZH0imEb[,m[br-i*)LmA`r#m,`I!h2IGlhrIGhY0EUG*BeT!!XjQ +Nbf8b40bkh"MS#HlMFRQFj8Cq[drG$bA$p8H5qMk2jrcrRr6qIm[hFchIBZ1$EEA +YY$Qk,&pEIlhdYhr*dA35%I(h@9ZpkkRVFCQ-rTdRcm(e2GrCr(q[rrr[lr[qhkI +SqApI*p6c5h$fQXdqKl1LRF4eXae0pr6qVUTMV1Ykh$BQFS+-KddAEkqeli`EGji +JYINNF[&mhJ@rLfeYiHmm(`0eZphZYaXGAffPXV$3eG4RFjQkA,C#IQjV%iI$%iJ +[fFV5CRY+U`)bZrhh#p2f%TMr&qhphl[fr&c2eqpl9ajAKE6Z,22pRNmBLE4,cq5 +9k'lINZr6IS`')aY)PdRVqqm6JHMb2IrIr2rRqhpISrirGqchbq"55,YHid5a9iR +$B8FJ8(1Xkh$iUHSD20Ck[dZTlMZGIXqllrGlhI%RN@Rc2*YlG)4,EIEkfm,[GVV +pCUZedZLVDc2eHHcQAb@15EH6XTbIaq3b'5+"&@@cqbhAMHCjhTHVb$!*rAc1Cm2 +l2LrAlRU&3cZpGfYK9CZNb'-a%aIEed[jV[Gladm5rpCf%mA+QIdQVfZkmAKHYlh +l2PrKr$prbr,mRaHrl[XmHiiG[ZpVh&RS5jBamp1cFeKm*JTLB,iAX-A3CAXkQXV +Y&T1feH[fZih@pmEbH$j["m`K"mU0EM)H4irLlcGEMDl(@paffQXp(SUk,RDA+C( +(ifGR*bF+c%r26aGC*,ddZXfZjm2Iq6jR&p2erDp`UDrXrCq[h12k2#Yr$llCk[6 +f*G(6q)QEp,h[TqQkEmm5rB(V1Zl$&d1BU#m6lca1"kAVqeb[Jq%I)q6idU,T#"h +QalM5D'Rl,-C6)6deeh@6*Jfi3`4+'Mc(C%LUadhEkdZB0pEq6'M4[*i("i2QF"! +AbYrEE[[paDl2ADcZ1h(PUbRl2-C@LSD$'cq3!ifIRFALjh'L!GT9f1SeQaf[HH" +E4LLpkrYm[QI&m2[qjl2VHPa'hA0GRFXBF8cIrdrSL5pp[h8hr!B,VT[(jE1D$5k +hZpjirPm6d[@j+-jmBYA[HaFF+hYYcYGEU6MHcZCb8rf2ApFP0SP+%!16be,R-pS +E,6fQbh'km,HEffhbbP[-iAQqE`I+mIIEh`[!llFEECE$ZYAffMVSY4R1b&Vb14b +",q,R1GRN[QkDXd@QlI@DlDpr[GrjI$p,erEjA[HllRYQ$%PAE`pcDP6M1dQ46%0 +`8aJ-!B[R9B(#&6e&UeQclXZk1&k(VHelU,Cc19l2UqM`r+m8CrAG`8EqbbLABIB +BM%pM1'aUC,Q5bSYGETG9VYRYG[Z%LXhp[jI#iR%iK&GirMEkfhQlhAIpiPbBeDU +6,C@M+'"4E&UaaGBN2ePTG5MkCHCh((pJKf5TVFHI`r-Yppi"80VFpfH@A%i+dH! +-RUC`Z*)2UI3k2YYB8Nr%mRKqMka#&m(,phfPCraYlZqpfhGDL`ULmCb!P)L"GjP +*h'j&&Ud1Me'UlRBlC9UmIbZ$j[$mhK%@(NfqrhhKlcGprhHceZUdpPAk#VBmV3i +fH)1mC2#dj3["UV3@1RlMZQAl[RHPa[9pEeZ1Ue1B'pMRkDP-6LG6$N-AR#pIf%j +3%jjEa2EGm'aGd&h1BG2U*IK'![YpKUqfXbmC9,D$'c`YZ0S#mGc'ETa,G,UGAh@ +b9Dr%mAIq3XT$Iq0iSmTi(IlKN[jaDdH@bG&4C1MSbhNl21e1IVaTpEXY[hflm2a +VIbq$j[%iR&+44$jiRK)dK)d5qM(36dl1#,N1P$48RC8d@[Xp6V5%$Hq,'i(QT6r +5QVjRNlr`pf6EV6YG(@XFa4d@4$@L%X58P9k#[XNN@E,EGhhRIlVGq&[2$YJHm2` +b+E[qml[EE,ADh9NT,4k)@[29&0RHdcIC8TGBGPQmj6jj$[6p[U`l'PhRLH0ip[j +2PH9j0[irMH)VjQZY1e4D@4`80"53!cN40F`UdGVDDlDGhhb3!!XEbL@"`H"j2NE +ra2"9c'TdYPA4DQQl60CR,dK6Rc&+*BUcDAYG9Uqjea6Lfqilc[Hqh*3[m$GESZh +paYbr&efYePTfqSdYRC@0I@k!Z8kQRTMmbe!XPGB@@Pe(EfL0%Lcq'8H['*i[KMi +rHlICkl9kR5k+ZV+URl3I(bY'0hP-YPmb3fePICkJF[XlA[I!hRKliCb0j5-l[r% +hZlllZpN6PdKZb@2af1RX89kZ[a1+653LefMdhETKe4Z(kRYHpbrF6-#pIe26p,c +Z&iqjf@UdPI9jY('BfD`Z"C6PRU2-pPQqdU0$CkVAlI`M9bp5ip,ddaBNaZr1mJ` +q0AU0&@k#,RXfCr40K5i)b19be*58Y0&VY,DE6GlrbZ"jAPHBBDh%mrdq0FHE[Yc +Dl(@p[T,'`VY$8PZT16NhLTc'j,,jUPTDAY+Z[dQUf(HllbI,mZhmJ"I+MH9`H&j +HqlhB@QSdGE99&68drCC-Za*h'&CcXUV3k'YVG&U,6AEBZM24Z23mhc2-*8[NH2j +(MEh[0D0e8GR5C6+j@MSCc%BBbH*c'dICaE$4@HQe@ah(JElbr3pMh16l(UA&akA +Rm6Jm$J@rKlM@@HJTqbbY$MFGMClX6@8[q"`I@iR'jA1aDbYXZelUeh1qmbij2`' +YjlRZFRfZ4k['p2d1$i[HDibVmlPk1Lb%rf%aqQqG4I2dIT[q$l$(C,*jE09&IU1 +jYGjj9al2ZFVPF[iIM(m%ZVI8i"UlpcTkqVU1cbf0`h9ISr2dh5rQ[-6UF%PrcM+ +20jr5klFaZ+8LIFjRbI`rPr2q[drfqIp[Z(B"hRGpefqRXFpPmCKHVPled[jE[de +lr6qVp0pk[#BSeKY(VHqm5hmcLHRlA[r&qlqAp2lrhrRqri2DpAcr,m6[pYXGAT+ +V+icVjMUCHpp4qLqhmf1ZV`H*aQ5c9CU0MhQkhQqmRLQ`IlraI,qrp[`HckRSF+h +m6`1mYGMh'LTk5KR66S`RABI%iI#pDP,ZMl,2k6ZGRYZllhGq+A[GaarEpcfI9mr +K'8,[0chZi'1d&05j6*BqI5r4,"Z,24GPXh@D5defZeqcfqjhQqYr-mldbh*i2NP +dPZqrlc[,AApYA9(CjI+C+KSD+MSmP3Bh(*EPC`dTA4P`L4%KPEq0[I!lhF)NKfk +5[$M-CMD#JaXk@'XK4jM1efSeZb-LC+DA#p%fQc3%+XZqm,FpjYpMh&PRXeP8S(i +LDa@+l$Vm0KjUGaq8l1XdQVf'cfrIlcaq"a,Mf19c#NVadZ9priIJlQeePR9CS`S +F4KHYkl$BA"i$UjM#BI&6jB&deTVGMhCX*FAe16q[p[bI(c19lAVTD!hpYZGPUDk +RTFRMC[X-2Km0K*MUIeG6eH$,9p*6D$4DAYqkfZjYVIKqVbIer&c2JjA*5MQ@6I) ++MU3i89"2BbFa2@i"0[E"GGf12bhCe&A@fD@b(LQ*Mb5hhpVN%TRdq,EQkIffLUq +dc19bG$1iRV-$eI9G9JF(eq,SD-V49GMf[FlA`2)iRUH[krVV[!*f"VMKH0ZGS'G +C6jZPbY"0pF8YqV%Ma@0b0(PPf#0IZ,Eb[1Z260GjdC(FdCCLl6-C%a9Lk6kcVF4 +Lk"k-Z*k2T"QDA[UQQ"jjX*)NQJcfGcHB+EUbm-2LM'ibqC61B$,Hq4`H*a21p$d +[6p2dNlSR$+X*BC%NUDBl@8iBp@&`f*1"R+8QBl1RcpMU1jfaZ2F(K'L@&rTqTkP +ajh!@mVlA4QARRF[N-Af!C*AGRmG3j%`0XqE2RHEhar+mcKqHZHRlAYqbEP(NH(Z +GYVHhdfL0p90YC1j9K-0L1`0E!e"UU`e1ch2LH4j4$9b2Ep`UT-hK[&m#eeeTU,, +2pNQ51QqpJ-(e[@R!8'HFd'QefihILH2jC@Z6ILq)hC12k2"0Z4-'0-ikF`q%Q6H +m-RG1$`Nd9HMeHdlhGlhaM$$%Q0d(h13Q``@JpTh@UXi[Cj5JRCV$BA#pGL-5E$f ++R6MaTY$U0EY0ahkD6h&Z2@pNlcAV-L5hIIlIB0fc*cX6!Bl&$1ERXH@-V&,Y89V +b$()j(YqhlAVVDqhpY[0eYqke"%QDIdf'IBGHL9GL4mC[2k2YY@BF[Kq4jRRFBYd +IG*!!ra[3iIPq2[[#llCDQ`UNUFcIBpJEa'#`@$`RApM2C+PceKTY9VGSBLr!1!V +Pr"lrZqhl*ZaF,bI(m2Fl69@9AQmY3i[X-3Q&@R$i3hj$,dqJd@RY'F2LQA++a+- +C`2(m,ZqjdeDRDVaK*V`T9GkZC1"M'dIC91KXY4UpRh[KErJT`0FSZ@$JFp$LHDQ +q3Q3fEZCVjpKKF&-B'C1-R&NQNKZdqXfIHEcb20'lj2Y'qJ0pk(RF+0iDmNK-QSM +6G`r@TaGM&6p&PmeRBT*U6KUiTYrmKQ*ck['p$JQC!4m&$0FN%i4%XXiK)PNP1kJ +P1q0jRRmCC$aH[TLDTZ',fGkA+'h&er@R)G-TP5TZGCk[deTXK*8XBqclI*j+XCj +rQEr`Zm1jp@jlY$ZIiV$VTQpD4N&DA09&ETE6C(D#i2R*`-*`Y-h4YlhUCKUAff3 +,l2VqZ)"LqfRXJZb@-9h[KH+Qp!EjDiNA%m`RpEIB@M$-V,iV%iFf5MD5S++Nl1S +d'M6(em&+-IS(G9pCF8NlB1kBCPl&48#C&1(a-dBhKK[pR8Q2RVGThRJRDFELrqT +kARm2J%Bcf5Bd4@'DH3UZ0cJf!daX@T0kA%$,GpiPB@YcfFc0'Q5HEXq+R&-PfJ& +9Mb"*I40aMde56a2"le*P0I&TZbT#ZZfYX9ee-ZfeH`YHr-j0e@eiAPq2E&JIApa +Tl'XU5iQ6)+$)Q6*MZ*RLp`5DYe[2%5`(a!DA'Fm([VABDcYV1[V-pR+9+k'1"PD +jhC8eA@TNhlAF&f+DqaMSF6KPj5ABak,PaQDBKZb+Cpq0S5R-Nl!c%be"j4Eqm9& +@mlKm)c%YlhV1b2N-Cf1)kr$B6!AkA,pV"&&l,8eIU,6AlAFq0`VMNHjm2r(rlrr +rMrVq[mINq,h[Bp,J&R(E@PGfH2l$V1T[R5p(+bYfr*dNYGVYdRjlpK-9N!$Xl$@ +'%R`[2pEh[NqMkIVrlrqrhq21qlkIiIVpUii1ql`j(Ul1j,X1VkMmefk#kadI)bY +h[26hUqG6eXhNZcV04XpjjPaarCpci2PqIrRkIUq[l2mrjrkrPc2Ai[Nq',"SY$R +XjPXCKIeIRkAm[j1M%S[XaK1Ykl$cG$PkHYdhGERb225M'QPhmIar(mRbI(m(XqM +j55+1idPIS+URTD(&B6!pAIah1"`Xe2*AbbRCRLmlFf2r,iBi*1&Ecr1mqi+Br"h +qlh'ff2FkR5@3!&eG8pP4j$(d&"MXDR#e6GTfHDl-a`UiiM0RhRI'UZQ"0hqjhGY +ie[j"EZGhYl@efZbf4SBTGa&DfXUkLSUkbYd#iM'@bf9bZAl62D'[VG$@D'adKRB +%SlIaMClhrN4[,i(PR#ea6AQh'b+rHNVM)VU-hP-DA2kGRdAA*C8aS8[)Y6VEAH4 +[1*5((j!![ZHphh[Hplf[5mX1GCfYLD$q@bH1a-cqRU,d,re%[JF0LdKVc99BRMq +m2JA(Yr"c2Kq&0Trphl6@[rAbI5mRGlA@pVBjl-PZ2Lm4-ITkEmSErQk@pp9KCbJ +b@@c96BGVVZlm'hp(f[K6Xlr[riririrHGaMPqjkhQllZqj0)hXU*06E#p9I,adR +5AHmG0e(kX(f13T-eR+QYdqYfblS[aK[mRar(qciIJj4kREMcGrZGIffLLNLQHaF +hLX4Jlr%-B3h5ZZaH4TDE29LF[44TmVd2AjA`F[PHf6K[@p2cc1Vm[aceTV,qbq8 +bP(4j'Hl(VL$`mJXrNk@RUiSmHDB1c+QhPF6cq,`q#F%c1hD4XppXqje@SdPMS)X +@VUbkVS#9K)T0TcZGcQFTU[3k,5pYV0ThfmhaQH$iaX'm!TVm,bI'm*PR28DI6D3 +mZf9b'2aaX#ibJb@80*&*42D90BH5EZpci'lm%l$FEbbQeFHSQY4iqqhRJGkYRM9 +@HIcH@5BVLZaQmAM-CLjXR4RSdc92ADI@l1elcFT0qmqi6B3prhID@N0ifphAHEE +CDc5eRCdG!Ha("B(!c1%khV-%AH1(QmGNqcV0,VGX@G5qZ0XrPFa)j[ePpLRPdm$ +[0TVY6Adq@+b"`6hkrpA-Pf*JF&ebAl'GVZeeqhliZ8Z&k(U&1AiIfr+F%r*6e!H +0iAI@ZalRY3i+,q'`DFX1$kc"*m"TV'C$,"aVV8dLhDB'+DAm#GKI[paY0GfqLca +C-a@),br"'!QRGMa"i%-[RDh8Gd@kAJRQ@+0A)pa,ilf1-Xp,GplDl,A)jJRTBZD +-HE%iT+C#GedlV@JdRF-dM&hX`l5kJiCE[,B)fjGXD'TcQD(NmG2cq12"kCiUd3L +m-dQSe*XrP"*E"KS8Ri)6AMmMIlkfhHif(ETX'Q6UECTm31[klVeU(8G,89PGBk2 +6fQ[*mbh[K4)iajmL3)A#THqpd86D[1dZ@bH4SFDFcD0(eaI5RMdTkXl1UHRca2+ +-aFaR#6ZBYKk,Z*`2'hHf@k'25`RJk`r@$jD8hL!6-GPRDPPj&[I*i[UFMf2C)MN +kB[8p,Kq6iIHE#d2`CfQB06l'GKKCMUMlpi'C2TiRRVcP9B*k3$l+FENHebH5Q"p +lIXTIX*M[E29[Ji$RV$GiSd1+p2DGZr(i4rF3PdKlAY)EqRk2$M(H&lRYY(SDR0j +R,8H3!-BF5@$6)+krXFCN-TPkAXkI3*5@ll`lIKqMFFEM'0U,,aZ0kITFAc2(-HT +'J1`hQXXB*4J-(F@ki`5XMNmU9i%YiM,12M9k(ST5Fik1E2RGj*I)Pb`C#e3I2,( +6E1GY*BZ2b9(PFcfLdScfm&i6`L[4kI'"ldaD6Glh5E6TXreP6fH@SCjHG(%RYBa +f2SFJheCDcCppi9X[Kk$T2PYar6mlJTSCEICDh9DJDE0'Z-B&4m[%q58j1*l`%X- +'V5A[RPm2d$pV*K%*CZi0ZP0MZZi8iSTm@T1-2VX4f"Jc&F9*'+Dd+8Y1%RbNpRf +amce@9b0eZ0Q0)3HdKi1d6(#iA$GH4d-1%D-h#6hC*K*1II4khY@I)i16DMGi1&J +N8[IEZf-J00qa`hF`$p0A(mLTJjcRBP8eF*Y['#Pqq59cGj9j2M*Jm*JMVJ+fQR6 +h&,Jp-hX@I!0-%U[-(eRKk0l-XYqJI$0-"XR2lRZpMV1fdPK@9,H)aP696RXXjRY +"BPJPkhl$j-V8jm3qYf`0d@`-+`eM8m9`dDF%C&1QlfB9fflhGfhMq9`Jh%62P*` +2*$GANY,Bk$21qpi'cH)qVVE)SGl*(1H0j"iGq%B3RQQpX60$#%f'XlG'MC[eP-J +PA)EpQT[fqXf'flc`$IU3!0q'R*LV2Nrj&Rd4kUmjf55`JfZT`4)cc(-1Z#)i)H& +`MJNDEl%ZUMZXe1G0l0R%EGD)dFN0kl4,aklI[PhY$MeYidDhmIa6HdI2(RPXSEp +Pe+GEHm*CZFc#F4#AF,[IYfQZ2DTSNJ#bbI@XjcTZHS$ab(@$CpaXbbC'A)%55BA +E(KlNiZYATkfSl+N+3H9c+E[UI)kblI@kiqP@[eqZf'dfZclVYV1aVUc2jr2ePA6 +CXiS$*#efeY@D'2RmIf[BpEd1(`I*mAHH"Z0KU)Y,NXCL-*-pAe2k1P+I[6bmc0C +(0*rXhHq,j[)q6rppAq2mIircpReIhrVmhaqej[KfZUVkE-C'GkfqIN6TVN1Kr0q +HqIUQ-238YCUGa[Ma2qZA6hlrRrTp(lrJpRdr0mG2mA%HSXDIlA06KId6LkMhDpc +VpPY,A[[!m+fhrNH2iQjYGPhAFDRYG0Sp$R4kdj2qdUp$@R,[DE$ZpiAihSHGjhR +P%2LF'0[5rkVUM0CE)T[Ch[mr6p4qR!iFr[l+C[3DMBq&`[9p[hrKrGmhrlqhrAe +r9r6jH9kRQq,hZ[lHbUmcM-*IVeGjD@k6T6f0AbrB5ESUDclNR+'#clR-rImhcIm +I(m(ZH[k2QQG"Y1ed'F,G-mCq+`rAGGKm9MD20k#cl8`653e[q"`Z#Ak'p0fMDDr +9kDXcQCbQ4SFMNmYPmXPJQZdrGGiC02NVR(qelAVqPjRMH&hQaeIDk+,QXGL-&e- +6U1S[PpkRUF"eQ)aP(R,(@QN&`[6j2aI`rrIAp[fIpIcrImAZqVa8rLc3*MXp9qQ +phVTIbAESrbp0qM!pKNZb,GhAGkHm(NmcirfrXq%lKrYQpr'01,4eK,XSmILfEMq +4T8mD'Ne4V8@hN4VG2N"[I#m(FphVc+*TXePm[PmaPmVP-XCFQIdGTX565DjTVrN +kJEJ[qG[X06ApTNjrX$)AkVUVrIIdp6JF,LU(0D$6D[ClRaH&aZ6qcjrlIh2SPr( +p[[qhar3MERZG&8jHJl(VNqS9h)E8qS%pNXc8f(El2`)hTHelhkqCm2a(e[rAlhX +HKEq#@P88+M2GhKF)B*FrN!$*TfMp2UpTZ[%hkH-Vb[*mRbShMH$DpefqN5@jfHB +SXI3Br)8@@l1UV6h2*rrFELQI&k4QZ&q&iKpM0(RqdbY#DEZ&`+pjA$i[*CM14E, +9E,FlrLFMPRaP6k)IVprNqYa2&lhADI3Ch,j('BI!N!$Cdh6h[p8cead0jQUXZif +fpm[cr8pIf[GplPqrq[hrGpIcr+m6[cfrf1Il5MaUAKCZ*6XmRDK2IADq"iHr5ih +!$Lm+0E*qqG*BCqSc4AYQm8DP'6T+8[,Y,DE2Fq-6ebpN+6[VHRa2*h[HE%lBHGc +&&M1[QErICG(P-60idrh$4k[Zpp`I4irYm[i[NqApjB$pm6r`paVY6SUV-d(BGCe +AkBN6p(kMS!`Q*RmTR+l9E6[lDhmfipIfrH0[APRi3i1rhRIlE@kE2RF2*54H$BN +fQFMPmlS6rX0[ZNUfm6dEMdH,jNBkMNkpke1()j@8ir9q1QMlMD,U$V01pIe$q!I +%1k*h'Nd'FbTp&c'R0a2#Qd2NFc8f@Xffj-*2eIE4jIp[`qpl2'iJi(DDUaTXYMT +V#B(UZTkQrAhpA962A6H3!+@,CkVBpj[#SMl+rA!VL(1V[HpeqRd0-DC%fRFI2Ta +LFAMk5Qd1Me*TkllbH*kI(j(VVD4YpmBEfQd00Q-NPKNjGc%46jd@HT5%"2R3bpN +6k-GrY1id@Hl)IRl"0X%i*F20d'@TkiLVll`r*i[Uqjm(-jR`Hpb6(Di4b!@PP9p +N8mm4ef$1"hUjR#c8qD058lr"mMKqSCf(Z*IaQ(IElbeeQPd'Fbq6aq-Ce-BAX*k +Lc1GcpPUGGYph[r0,kBJ86C*0YhD@LEEZ@b@1R-4ebm5q2bbDj*fc[$mVd2@j#GX +Y'@i2NH&YP45LadhKm(JHVk[!Tc38G+PbVYr"Yr2pBhbdhDH51Um[Hphh3kQPbH1 +a4LCAlpA8c'&QLFVfG@NDaqR5aPb8mh2(Z20Ap-D+X#aXT)lKp$P-e89fRlQem)` +58idcPV-T!meQXdYG9jh-d8qRF*161ISD,,jfXdHUfAIH)GJj,S`qFr'mrJEjK9R ++6)B[%*Zq'lh1Rd8@2h`[)i2RmC%rphhH6krTF)e%YFD'IDCA'pMek2IGCef((!j +A0aE29fZl,8LCL[Zqpb[E6MVhQi+iGG8CJaMm0e[@RId2Gka`&UH&pELVf6KBi[! +0R&1G1V1CilpKYriUF0[mM6dfYFqb4FU*EfH6[ME(5+Xj2alj0edh`D)QqDRAfZk +2pa2jRphPHjl5IlE[YfEhYQ)U,AebBcU1#,HHalEZGSFCTc&qclIY$pC&4EEXH9V +kNmS@-QjSa*Z[#T*5CU!lGIc3CRbH38ljTQ!DUbcqFT+%e-c0Ya2BiZI,`mVcGd+ +"Em,d5+T05G+hU2,D"#UF0SIVNi"jr*jUUX$ZeGji*hYH1C23bUEYIKppXG6BeAC +j6(RRc*0"q&9ii9N+TP5VhB4DZ'FKqieaDBl,+C!!Rc1cBi")J'53!#0a,Jf#8LU +-BAa9raJ[iFPMLM++!&5H(j1mlZI%m[LQ0QCXCVSqAia)8ChQFK2PY8ZFINcHd6[ ++priK`hqRa[8p6M*b8RN,f9TT$Mfbf5,B(%BI$Nha1*XXM**T6(361h-YRbr'hGV +hAED)48mQDTr0,hZ#SFkL!A-((kNLUdpI9GTPc6")UN@TXDQXfTD'1)Me2@)!%PT +LJG`BZTi@8b5F0KddV5`@HNrZZlm&5Y1,2MHJMIlIAG[T%lQD2,,aTij9!dZVf[I +la1+`XPqUX#T08eTmLkE-&a5H(`db5KjPdp8RG,%!GKPK9'm3NIQd`LJ'()IqpM$ +LIbT'TT1if*P%lrbZ$`r1p(d5lU5jq)e0'G,aNPB`Aj2h!`Uf'h6hkm%@[M*051b +YY6@(3U6apc8dCLk1UUDih@'Gqp-6BmNk@QpaXHh54rNCmXmGJPRQGaZ5c*1rY"3 +#)!e0dG81!mEHGkR2j8CV+*NUTbI*K8CUT2A(VYXH,EJ&9FbL9rA5ALLH(r,&H(( +6mp26q126SjQ[fabbR'@[(l[1r6FJ)&FY4RpUS9BmG6&X0)QU+cQ"I++,PUiT(PF +GNX[R+Y0YAElVI(Z90-P1rZDlIJRB854q[1dN3%h2j$,(38[5UN3$1JG)e$alG[S +dlS5G("k96eFT&9@SLb`eqJRZcmj2")Hdp9V%@aQ,R*`[34m"0'8e5GlirPK@1U3 +UYYeDTDEcfEc#jfVSU,5E)&9CEcq+Qi5HpI8(9"fHAbC!XQCe3j2,[E`(m6LQc@k +m"Ci28jj4e@0aq5Ci"fD1CJ*F(c6MX6RI(P%e`FkcY'c`LMG8GHb@QGd[4kII0Z[ +CRZdc*kA*p2"DNK61eCE8Yd@'U"'mA`Hpfb4rTSSj2)'EV)&948@dhERNI@SR`3@ +i%CG58kH6ZS1CQ-Jh`QRkEfKi6I%mAIq4j(NH2ibjrZYe6Fm6-jFj3Q@8,!XRklC +pfQDYiT`GTC*lil%Km69cYma5CA+0+Uqc2ImK9[GpihML+lp-K$Dkmdqkj8rT$*p +SmV5CPhTkGri*D*mJ96Iq)QHYVcX$TXCUY9'Q1Nq8@mIIq0[[$m)kY0Gh$8@9DXY +PmbZSKT@D'AJEbfhhLL,#+pmcB9CRj8ZBT+4#US6['Q6dQm%D%`9Eh`[!llZpVX( +@Jp6Cc0JYR+LUcpD&@UeQZf@e1MlGE[`I"hHkllZpXCU!8QGm&@GcQEl61dp5D)& +PTZh#REGhhb&(KH&i2JGrhKQpDXl4bTrQqbT4&'D0DDLD1!4DYpiPYEH([2!lcEE +&([h&U-P8d0(Z@H(EH*[YpE$+QNKV&jDe4I0CVXmhR+C5YiS3PM9XDS@HU+BePDM +21&'a2&kM+E[`0chfifqderFfREkKVI'S[89+P,Y[GcZ[!m$GGrhJL)RMMTfSMA@ +*UH)8@Zilh[N+4%Mb2kl9p[Tp(B9c8lZV%l9%N6`+GeZ@P,L*"668e28248cbm$( +GrhZifqef1ZeREkM5D+ZV)Y98diLXJi9p[UpDl4E[ZpGSYBefJ2,#,6946["[#V[ +!qh#HFF469GYTl1bXE#ZVG"RaDG"@eqLdHP11M9pcVYKXGRY0YDK0Y0PVqkePTfr +DkI5S99pD)PAf0PCkA8G[DDc@klBE)*K%GYY0RX3SeAE$aD%cL)@0PT01a1YRYEA +EKie11e4$N!#G&MN+[2k#ZX,*86lVAMafhl[[1ml`@3BcZG@l,0AV**&MXad+,&X +YSU*b&VDlEDE&&Ne$XTBRJ9G[h$&Q#XE3+GGVGCh!afN3U%4Vl"@0e1U41pKXYRY +0VYNBcB)R1TBfYLMSDfYB9#)k[Z6C29d'f(2E"U)UjqZ%6ZSR1MDLB9)8LbSLEk+ +E#ad@MdQQBm8*k,+LaSLHV4iTK6SG"RmrS#ebaiYM(K5VGE98rDh53$eQJd1K&V4 +DJY4P&6q4fHcF4E6D64k*@5%!Va3%+@,@1!"3lFfYlRZGCD)hfQdPRCSA$)k1c#R +8GXT9h1YeSZ$5MZ1h9di8D*1Nm+0*TN4,Z,3G3T4X0KVqkeV85dYRSp(C@1VeNQU +`SKlAMYPXYJi8+k45D88QG+pXYRXpTY('+Dqkf**h!-mHc8U41&FrBf#PNJ`X9&h +f6a@fdb&ir!1G9MHfe2Ep`VEKmMCfPTh(FDV8pYU01MS42JN4cHTBfSFkc9ZL-3c +9kcS@1llKL$2(HZ%E(+b)p13RS9-9YfqMUl33pMC#([KJ%FYXGJ%lTmj'Z%3X8JJ +G1B@##6'S#GL'SrX%i5-4&U`JQX$6'#&$(*D3!'P!T'R('fL&!US*+6GXX0JMcA& +XB%(ZkefZ'`#Ta@PDQ599h'$@"[CE%I$Hl"Se,Z85Ur5,MM9KNGZhE%irC0Q+j)D +-IDI-#%QkM$4Th'$lAYZfefle2M3334)!eTZMqLqFfqFhmR-Q0ef'I`A0r2,G,Yl +cJj@QZPS$XK)!,dpi[!$AQm3AJ,S%$2bJ9*3)))3G)%&i!44Z3D%AC"*"P#D8"'9 +8LNf#kNV#G!k63i89DIG%`9ZS$)&5F-)+p'STGN#lY$*S+U#JT)U3!(4)(mIMJ0a +q1JY*)+bU"9eKNe"rP4+8&T5%#C2jIP"G%&3BN8'"$k#3!iIP4#R$0LHp"#RK(#e +8e$*54`CNN!"P9,H`S+Sp"k*1ULA9l#`$+V$h1ZK83k&LEX%9Bp9K4IP@j60(ai" +2i)3'G123Hq[k`5"`'J'"T@m!8DjJ[UpCq4#Iki2V334"hJRpIeS(-9U@9$S!SH` +SK`d8&R883RB*-8Q@G+55$&@d#%A,9kcTJ,9qHm-8aAa3-DL$3eUC0D4!4@V9Vh3 +iLr1KGf&Z)8S@iIZhA)ST'8iBY+'RL`(2C'(LF+[+NYkD%%8#[j-$T4C-MX3k"XN +MS(JJj!#i*%G54hXLLB+bD`@*(@pL`$[Pq8&NM$H`[*JX$B$250%D6*0ca'ZJ@4h +)2N9C*`HK58E+TH-D4$V+bI$JR!J3"fr5q(A$jMapaip-rm'ka1Y0e&(Z112`2Zq +lUpCH`LMNKUTS)1PjN!"(FrlB,TCG*"GG$$"+HRhX(3kr#35[4FZ#6JN)*2rpVS* +$f))*@rrSJl'rkZ$flrIS0C2cdG(BH3MSk!"-@!RF5S'AQ$ZB*D$NfP0dH*ir(`h ++Qi)Nr""fRk3%rRD3!&,iPT!!8&Yai-41FH$$FH#$SdMI42[YJMS42SIZJNKDZMK +ji#A+K%Nk$%')B*YA#h)#Fq13!"(!KJ4c3Bqd"2Sk1jKimhm%h"0mQ#$Z2r`##I) +#Gap((JQq1J)a2VV(3Ga$$ajb##f!6EJ*X+,r'BeY$'T0C4IpI*Fd2ZdNI3m$-4i +-!*%MjcSrSMjbq!*0rE(cN[,4mjf1k!c2amjJZE(cRj`3kAEamjHF((cNV64mjG, +4Ta"(i[qARaq,bppB%G0,aq,r0ikM!RPbLJ!*p!#ID!R0!6RY'%"(!KmL$r3JIlP +K#0r9)4V5k`Cm#*S#0D!PX"RjT'$M35-(-Je)5bUfjLA'%%MMUU[UY,6`3ES'1JI +FBiT)CIS-3G2!3a1$!QS)5c`3ZYjJMf2V4fIXUQcJNC(&f96RkbU$Ukq@Shd(6`8 +5aEAAM#TFZ#al(,99R%Xmr940(98i@40(Cf9CAaBP4U)PRU,&!UXVe(l+UUE1RVi +YE94,1`B)eNA2fF''F3fcJjFGBhfIVl1UXRh3p8&V0(%Tl+U'(N)k#$"X1IlM!Ir +38Pmbe9Ajk*SY*9@@SLDDXXmr%Vl#bVUHYL@0P@@&P@@HSJXA#qP#rBCep&pC8e6 +SYLAm6kbdST)*f&69D24e@MD@dp@L`CmAX"f#E6DX#39k*RV#[UZUJ`lLAl35rMp +6P&+Xr6k1*9D@UViPEBDB2h5AfHITkp9#JXR$IfB2rSk#Qb`A@3L99SkrUE0a6'T +[T+qcV+f*6eYE%X"epNl6dAl5D1UL9GKC0H%&C%LXe)Dq`XiKTZf&N!$jPRe6(LX +`a0IP)@[l`CZHFJ3G+rB9EdqL3-k1UV5!e(ed5pSr8'CeB9qML9&8-p""L@)Vr@1 +[8(0MV2UXC@eP6SBJY#`Ik0fpm"c*%EAXi*eKcdjIApA(6R@)Tc5V8@+RY66M29P +H)*SkbcdSFD5SE$,A8pR8jq#HBJ10%"c%G5GDrC!!&Kr@#!9@RTkQcBH0D5#SBJI +D#"edGRmSqb"f99&dPE6f3H@0N!$kGCB9m4ad$([X[4BqPL9YCS8MiI*ASqUJR'* +$JK)CZ1TX%rKC(hD0(pU&L"bF(2J[-G5BKm@`bS3rZr@f5eJi*U#dJh@FaF6*8p6 +@9pRBD22Z2Y90E@99ICa+Q`XG3YYV%kc%BM#B'*M-rC&XPNUQLUUbYQBQ@cj)Jdb +5*)PrdG994-A8@'NXiP4BDGBLXp9@G2@9Sh6PYaX"ZqpMVrHiP&T+kS)j4@``dC% +[RN@j((%T+"am[`![hmGKk0fA9'SXb0NQV94!,RP5@TdPPC)Y+[&c-6+e@M4bYK% +l@UXV"YYe8f&GBeY9CKL`PC*#a698MX1+T@c$Y*@Z"DTcL3eZS5h3EE(Z([J"l[i +kaH(Vj@+bX+jlaf6-48q3!"%"'h"FR"J5b,lPpc",953cAZN4@i#DJ4+4&+5J'Z! +((Npd[%%3#FZc52&jl2*)bRXM4BlSF[28F5NV+kUbHNXjl-j@H[,YCU#XXbC"B$V +V25@9HJk)6d8R2@&6%T!!N!!V"'1k5$S1PapITDHYV-p%cpKSl1[TkiBE89pR6kI +SFC6Nf5*MDI59YRq@L4#G'"6(2jl5@99LJ8BAXZ9+NR@e#@m'N!#B+MqkaEf098e +PA@$Td4iP#SYX3@lUN424k3M6ceKA8ipZL&hbLGSJbGbNjJDdfA8KrQh`QBq*B@@ +HFMr@5il6&a3iSr0AX6rTCkLbU*kKPA94[dkL*9@9PB@8U5@k6'8E!dG2,`GC"63 +E@1jF#AZ58L,6SQ[HjCNik#$md&rJ[m'qMV0d5DY-6L4BrEkX'YJq+$Pb%INmJJI +eCK+qR(C2BIYDJcN)Q$QF4%aMU9qp5Z@faQC*p9Q,q1KT-r@9qKLB`YadP%iZaXF +P6k%F*Ie[)kHaX5H96fD)UPqVC8pRB@A9G%iZ`LlZ@4IF0-i2"a-[PSP@2eD-Pa* +2f)DX6d6dS246T,MkcVZYk,*9QHca6Hbe28k(5ePD"9&1a-C6ep2RUISTr*iZ*K* +r"ShYd-&M!3GKaimQfZT`ZEJldYarib%L'&699U#FV"33C'$qZ`r9PV#bXY4JBL@ +VPKlX,%DFh'04%T*qPT)PA@9Y9SjP*)ECV,pd-k&U'Cc"jcV%-UYMiQE+SpM"p%K +)j9+9k5P!6QJ6eVp%&Q@%b1*VNKX5A!Xa24dk5jNL54jdKkq,1B2pNf0,NAZV,B+ +h%3`$iD%Tdf!JZQ)%8Zh+c4V2qGY1fmIIZdpmIC%LQBA$&1U$UJeQCDSCdXG+`9X +G55%KPKI9%5Yh@`Fpk4HP,FkYJdmK+6eKArYXb#"K9+PAR!`B1f5EdSI23C'1TGK +qC##*8P4++Q"aB0F-R[1JZL&2B%kV*ae!l62X)0l"Ni2l25ChF9kq`ClB16LQ5MF +5`Ecm&pMXfQ0V)0Z-DQ$C`DD$fRT!Ib`Bq$,`IAX2b*,*RdYVSRBN'r4-JiE2bl1 +$bS,#$rPk11NJLM`IcE$TX[Ak'[X00AY21LGS'L!9V'+c4S'edGf$dlh[4eAr6jG +9+3AH$Ui-+ikVS4A-K(BVBISk+)T'p1YDf&(C99ASiLZfRT,Mp(p&kXEcBhN")2S +MZ2G,55JNS%")'"$qT!DKFmQPj03BVjT,jlTmrFahX#mDSMK,6cm#Xp"p%(d"mJ- +!M%6ZejZej!6$bAfh4J`rS3#ASQNR0#*``HaDH[r[MrlqMYY5iQMl#Yf5$+"CLDA +$fX!6Z9[61mrR(4m&eJcX%%TmFTmD#F3L2r*(`bUD`54LG"%EaDb9X(&l)'dl+5N +qkY&laU"B88!88$+8-FDbS%kMcqHKa*YfU8XKab)YbqA"(S%H"i"UTT-SUi*"!MV +HYJZV0jQ!h"ZAbc9,0@rPS*'bAbq@'"XfF[PKJE-(,jBB'rN)FCrX-2JH!'(4)%! +PGJ)3i0C2`2!$!h82!m!-2b)%"KdN-0A9KKq9!J-,ZJ3$AjJ)3i[##!BG+J3'&jK +KkhV3`kC!J-1R3)$$mk"!4AS#%11S33$#pVXl``Aa!J-)L"!BIS3)$#A3)#Vp+l2 +0e[SeU(rkNE8,lmJ3&r8S%"IId#![kTA+`3G@MP3+`!%5-'"31#kB3)#kC3)#l"+ +lXV*SlX,ZX3)%H`J%)0$%Ujh#S%"Keb[4Q&5MdBBGHJ3''(3)"V%!3KaL8%!`l"A +bi)*T(b``l&!J--8J3'%fJ3%8i"#(',9r1##G4r---BJ3!NmJ3'%qJ3''03)#V(! +31GS"I82mHM#JR3S%"IN%#![b+"!Aj*@PJJSND8#XQ"#(&'JJ''83)$$+S%"KPPF +E""5)id--ZJ3#@B!L4Jc+"`A8U"!ACTAC`3GNMX`Zl0!J,XfJ3)pfJ%)4Ca"!--k +VcF%&-McBB8k"!B9#"!B9+"!4Ci#%1+TA`a`#2KKK&3)$$2S%!*@)%"KS%#!Ud)% +$RDd8e$qZ493[Vd#!EX%#![X8#![d5VV""C)ZS&D-#%1,0"!-0)J3''P3)$$6+cX +%'R4R3`e#"!*GU"#((E))"KU8#!`lGA#`3DT(#KKh#"!B@L"#,@"%M"V%$JZlPA9 +`3De(9KGh5"!ADj!!)#lAS%#2E!#%+YLVbF%'b4j--0QJ3''d3)$$DS%!*YN#!UY +3)(1lF4e$rZd58,p`J3&rH)%"(hU"!ApmUL`3GqLLJ9Z3!#%10dJJ'#[p"KZd#!` +m&9YJJm*&Y$$H)%!P[3)3im0"!-,C!J-2%9PB)0mM+KKiU"!BH-J3$@r!K$Mad%! +`mK@pJJYdEd-)b"!BH5J3'(P)%"&jB%5-(!9dF%(Q)k-,Z#J3&h#3!#!Zme!J,Z' +J3!R%!3Fla9RTb%(R)DKIjk"!AqJJ3&rSS%"Ak61B5#i4&3+p-#%11-JJ'(U)%"K +kU"!BHXUH`3('%VRIA3)",N!3K`GqGA1qbJ3'(Y+XX%(YSXSB()NVRIF3)"Vh3)3 +ij5#!BHmV'L5SaSBHqJ3'(`)%"KqY!J)ZB"#((`UfX"P$XH0rBJ3'#APb2'rYA'V +Ui2N3)#VphfIBZeIr,q5!rlr6p0!Iq(Nq5J2raX0JJ2r(6DC!Iq@Abk!rc6bAaYe +qHAPd"rSr*q4!IqF%!K%%(p))"#B)$QN%+6M,J%,JJrj1BVB!4rD#!3f!ffS"$S) +2TJJ%2JJrk-hkA!MkS)"%B)2rk+m)PpD"!LAq%#"%N@b3!"%[mS%#*IDJ3)PrfJ3 +)Ppbe*Ck$ra!J4,ld#"%[rIX5([m2j)$IrHQJ0cI*3'rdRm+3!(1db!hqmZJ0cjj +!EmCG!Djr)J-[R@C6f@Rl"*I6"(G4e(2Jk,r-%Ie(83FrU)k$U2aJk2lS,RU)2PZ +3!$S2a"$T2r&(VRU$@,!rmHS08Ml`2ZX!,G4"rpe(5rq`A8#i1SN`i"NM9"Q'#lr +qL2JKq)-&AIU$!4kL$m[rS*Fq6%5"Dk,mbi1Kqp&)rmNdLa$@#'jNcakU#rlNim& +HN!!e!RMmF"Mkimi+J6JK%)2Tjcj1$jIa"1lrr3IM$)YqYGb#[q`9kEr4Jq`h0"( +3r+L"SA0qY)0#"8&d6fiA-R),pD3f4,qF$A1S!ZNlQ(r5LGfB*`3rHaCR4&mU*m! +MXhMSC2R#S#E(REF0r`9NS1MBQJ'IJ'Ii`5c9Hr%5G22C"H"k'%HjZBC"IA,rYA# +`ALl,,1Gr@5jJrh$rU#@(d`H3!$im&Iqi2bai1h2eb#r@1j4((3S)S(hiS+IG"q9 +%Hq[k`hI!T!d8jk#RrN(5G!)3hkbrlB*p%JQe5rrm%LLi%HYXBc+6EZMbc1#R,-l +V'*6bNa+)eSkp0Y3a-6-e8K6YLTiriQ2VkZ`3CapHC-&K&6DE3fk1GAERbVGZG"1 +4aH9aP"Mcfm3G&1cp*LdY$6+@J`4kJYL9m@-"lV$()6ZD'`[)Xm9i(rR#&I&'Smi +3amJ[JIJJ[32Vi8hX2h5kS2TXh)N#q$al%%K)S3D1c8KEcTY)6*QN@08YJG[0Zm9 +i3$S(A)!#AkS'mQca)Sq#3ZchjPPlEVHF0l&-Id,cQ`"3VJahr-(c4a*Q#22!P,! +)Q8()2h'lp!hRFHb1A6Shac@U-*GpbJ$$`aSF)()'A8#1UBi!NJIlMV[d616&QJ& +lUpeQB3HXPd0JPr(dj$'QYrG++Udal!i&(T!!ZZ-VE$4e8'C%9A4[bd%%QZLVLp' +l353k'MTiUDSeRT,&4D4Sdl#$`KN-TT+bcJbLGZ(-VTZUUXK2jkXXj$,eqHX)1bF +6'kBc5@C$$")*Z(`B`LCSkI4fG8HF@!8`J*3PP-X[4[%aGE@`BY%9aBf$IliP%9m +iRY(Lp(d&*9($h59@RAM)NXPPSQC1#G!b60qP0e008#6T&f,&2EUZSeq4lGKH*-c ++l+I4+h#)d0l%Jr2GB1Nbbm8P&B@ChDQEZU)6daZ!p2(GE(Ej(c9l"6[TQr4"-35 +-GddGcR19UkZE!M10FJ6MqVJkCG+K[8$X(e,,'aEdS,mA241h6c)kcY'Gq6ZA,B+ +4GbYGDj+eNA*9(G15U*&XTX8rA15R!kC+25q2&&jmG)04h@30pSf`H663lelNVD3 +GbVGJj+YNANU!,0Nj*iNAY*V"V@14l5,kMT!!Hf,PXc)[Qf-&RPLRcB[(#0p'q`H +mkGhk"fm-(G#c,jU0JqCfq[JEjNpJqVJ%HcNikYJPBl8UPl[bXZ"lI*@i(fJVR#G ++jVB01+jX)k*X'h1DB(!Sq&JmZ$Ll"hFYl%B4I*6X(YFbpHZ#",,%CRV#TdPFRS4 +TdQ&G(GNDQXUTQRVp(-ep8P`E+Nilp-(iafUJMP`PC8QcDFl5@IJMh`)*8MHK#4I +!K*2J3Ne%,Y"R)+1$j)lL`A@HRZ&+2BLP'Q8i#('"$S9%,lM0"NMp-`4f0bXrM9R +-fL5BmIM+,p,X1!LF4h00dIdAcQhcQrNjNaZZ`cq#j[jjETG[HF(+dedY%l5c4fq +IE0mfEjXf"&mqfqIEdId+1h@FKjpT+@R3@R4fNGh1VerVkrqIG8q[pIAH[h1VY)k +dMV4,p,R`h*,a[625Td8HQ'Cd-I(bmZ[q#!4,T@r!ZAMjFI&Me`lC'2Piq*%-3P* +YXM,`B'AL5m523bNSN[JHAb!dB8!EbjIN5r,6%TNSp0Kq4r@JAcqA$bremrPm[pD +BXdMbrekEPmRZ1@"k"`,mm"*T3kk``qa0!H@QN!!q3+J-d`I8lN2YJJjrkqAq[f2 +BB2p'N!"rbi3JHK"UE-$[BjI,!0i)GDZIBp&ee9(,U)iQhTG99B6PL,UQjJA`rEp +TQfX1BC'QKJqhl6"!AD&$RSi1Mk0,J2Sj'VN6),3A8-UrYJk0%#NZMNDD#QG"TkA +30B6rK65++5SBU-MkkSaGSm869kb94CNIQ%aD%KJ`*%Vk-9U(lBHM4cU"h4`ID+Q +JH$X!9S2rEdF24p(pSYi)$%!ZcZb5###-LTq*5#!R+JdNX,Pe8-ZT#`l$T#2)5j! +!334!&%*HA`6(i'#'"j%ZX"c!q'(pI2Drq`3kdJPH#(2QiHYQhJKdFd3h1cmIcQR +S2(ef2EUV39XIq31NB9N3[''3!"KiFF!1NDd8!eeeBeD*Nq`q2cMQ%H!F%"hhfZ% +#SU2XhC!!359YGeG8@C4dK+BBjf!Mr4bX%HX6UBfDZ'*%K))@-K9l5-"5$SfP$M3 +5$M0+bPfY"-T*FqDkrD38Uf6"pMD)VbD()%4m[JP#$N%@4PdF)mmJ40RUf3)jjAT +3`"pN55(c!C!!'%U,05Ad[9hLm*--[#*f#S%*Kc5)%*QJ)&AL6Nl`!UKUB")-,QZ ++V2br+"b@6P$j-$J6!C5d&`V8FNJF3mD'`bDRc-+j#0G(KNUhTSj0Me-`e44-`TJ +5Q8QJ5bhP1FG%d&TAf(U(5#"c9D9k"000NYe3D&LY1#(bJJm,62jGKi$-B9EDKJ- +d-eHX6@fNXA4dH43LNXAPD0+'!JI6APISc@9+I6aep,FaeNcJ`abF'hTLL4G$,1R +RhqdNkIp2-[fqeA4*pUTQ*8ee6AJG19`9901PGcS-RPQqZJ$TQB2V0-@&A-*m+ci +ZTqA$kl@@S5UfHU)%J26p%Xk6$+e[MHVC2Sb[j-6qZP2l26'%)K*INCQd6blhS#T +4ANi*-b#SQDX,,3VLj0G4!Hd*Pe)krE&,"(8Fp@D1aVDI8(XP%KErilVjf0rF91B +YQMGIIkaTp3Y2bX-!3a*eH&6meYaDdaGX`a+ZK9*VF5C-Q!r10IT1Lk,,P8*@R32 +4Z8Cr!a+P-Qr!VpE-#UBXqE6Q"9Sf#SAk)b8CPq84IC%4cprJMVjN`l1[L*AM`,B +4Y&T+Sr8fQV$+YAEm4Np""(ATFb"MYkZbX+qcAlk-*jQIId(HL,'m5RdY2@9Y28$ +#e&98dqN'$Vl"T#Rq@)`D+T(9m%GlL9Ff)BX*6UVkIpflrpT'+IK,iQ2UiQSX0*% +ckBI0H*fcqMd,(5&9&83!SkH*RUbRVE#,%U$rHcV5-F,4TepDE2eKMP)Je2Sp(@4 +Dp(4*%Be0(GBmH5%f58h9"V9%0`4SQ-3HNhVrqa,qEZ(5%YGe%)MRJqjpKeF&893 +39e2RRd[U2ArA"(9cU5LpR'[C`UIZjrqF66MAf1S6V((*kCrK,P59EBGlS'pQ"Im +1K4V%M)jX%G82m+&SfDR0M6f*-4dGCfT$GB@9B)SX`&NSf`&2XQ5U%J*X,&"[4c1 +eIP)hqU4[rEGaeiJMY%rmUVBe96@9HS9kTY`H2F$i&B5%N!#A68iMT!kbDqrGC2# +IP-Rr+C2r6PNl9K#PZS)lETfXf@dj-$F[D*Q)rDD5j+H3!'h*6&2AZSRRY,U,R9@ +"V+fY&1*3QK%"*,kVqp-fXFl8D4A,V*IfCG*bCThad'"Hl-ejFD[kA)mG4`4hM*h +-hq9()lCYJLJ@85Y1jT%,6Lb-3DVUH[V,%Y)NXHc1iHNeU,C8pL2iM')Y,)Y%DSD +#X*G&5@qk0@MJ5#PVG1VUl4jm9[6CqRXrfK%bQ[M+fXXDL`Tl,26,mV+r+b[m,+2 +)B'#1m"0rjN'lf9%ZX+q*&5V46eV),NM84pT@0UE#Z&Z9*E+U**e58aKH,)NS1j! +!l8R&H-*8T`E%-)&UAeeJ$Ml&eLRGRB6(EVcdcXRl+e%V%ZFb9KTE#Y@,R5@D5EN +[kK+&#N3Y3PL'J@qC3Me)VI53!)e55@#0T(l+m`i@5PSk8JMUc+U`$*6$(d8[KR` +rHc"T4bj5i(mUUZXE#b&GVG3,`NTQ*Sl-%6Nd(0&%HRVDeY-afr"ZRj5Tr`P6ph1 +$L-qPZ@3CZ+'Ycd3pGUC!b6LhqD[[pe&L8L6CL`Y@9j!!V-4&(c5(#RV$%0C5q5$ +R4c-Cq8lIpTfrq1XcF%GTFIAk1UXQccRUfeHbNa+GNYfYX'jUM5%8328%E'`'9`, +C@DeCAQ6FlANNa%rZCZRmRj6Grp6Gph4e9BY&Yae5"SN'MG1cI0ZkN!!3PhkkA4C +N5%HQ-8m8!Q4,E,FZ#1SApj0'Q&$6e!*#HVm`2[Qi6e$mS@rlP+$'Hj!!4f&Ck@' ++#qp#4q-K(D2qM9r#`2iX&2d3p#JQp@HS9LBkaC6PN!"FCfCJM[e0pPl0+PeIXQ9 +DHR*G8SR%*jC,VRi)krVi@h`14(AY+Gi)X(AiaN3C1XHjH1"C89IXFTmEBlUAi5K +[ZNGP[43GFrXNlk1))+Yr**'qrai@iCrXNMl(#2AG)ipGHbZNI)4c8b29c9NUL[+ +,EPCHAJMZRH%4,J6TJA9p09jRejMVfZZUr$pMAjj$`S)l(,dl*V*@HILD0HSJZ++ +plkekpSD[V0'RDM[lNc)D5cdPPAT,QUk[US-Nrj3NQdY(JB-MQSTkR3aE*$[UQIf +a"rjlN!""p`#5Ai3Cc2Hc*r%RjDNHeJkZHaG*L`Ll,XTr+j-#+ZHbXrN3)XXCNjk +IJZNGUXYMqb2Aj(HCSa4J)Z-XHKN#2EV+QY`jrHRa-p&%Gp@CV+NpF%I(jmNJ!4G +XrC+)G1cd[4pqbdpNmC!!4dIK+6*'lr(4p$PU6+rT"LSRXMNmF#&I2BqNb-%T(kl +'CI+jD#kA58TacKZlBP2Em"'0SmIM$mVh6+dNr5dN%PG-jM+*$#kHVLmPN!$+QKT +1j+GaH9JMT#Lb8r4CH#3N+[-iqLRJ3hfCV,-qH%KF#B4!3p[&j(+dN!"*b(c6Y&2 +$8A@K,ImB#kjJC!X!Tmqp'J4VJ)'JZZpCl&VVjp+R$M"GIJ6F#!Mq%rCC,4`4per +X0[8(rJ#i+%AM2eeIT$Vq1A#''rT#eR+Qf3-Ni)rfalTHDqr`4rpS-j8qc"(``iH +#2qX$1C!!A4!bIZb5p$f(AU$4HBcHJ[m'MqK[H9&"d[p3YN&k(C!!d[h!CRi,40m +6c2J!bQD')-8N'V3-iIi-q1"jV22j`,dV"Id,PU833HP(J[C`-$2U!`pq+"Pa)JC +4Li(HfpEc`-mCL2HYkB'CYL$qYkl%H)@[@j),eTm+[e33FIS8&pA"eB&hS&lFA$V +S)2A`J'((iKekiT)S*pHi2Ad3,kNYXjf#$NGXZk9!2YmK2eEGC'!Jfj(iVCUJl1# +$f%qq0eNi+`#r33,ZX!qIl#m[GSI&L$f9hM1KJlJ#rI3,P$kF3HdRJQZUTel@28X +8,p)6V`Q+MlDrR[@+&U4GbSAhESYp[pi@pka`RYrpJC20$2a!bJBJ[`rY!bF2l8h +)'I5k3EiIr8#pDJAm5H!5kpdS@X&Q[8,[DrI43[V%#pM!3kr&f$T![Lb)M-e!a!k +jfJHd3,ebKIPZd19Z')GpLSFJAqcT%#pNS@U-l03ZRG1CrCUA6J[fEP*%&drZSCk +j&ZBld%B$%JP5m-iB'IYC!&aJ,rN#qk"IN33I'RQ)ZYdJj)&VpHEUI[+$irq'3-I +ZJJrD[Z[MS2j!AT`i`SFI5"RI-&ccmrYZ!A`m(+Jrh""qlk3-`F&T((RirFX)mFG +Q@$jCB&m$"(RA("mUSM)4eq!["V$T(',0mUrI#5ML4amY'X1NGM!,TP911b3&f+" +I34a-qqA@,$6(8`&lKB-Bl3!A[K*,qb#AjH8"PpC",qpAq&&rhj8&a2d$2q-`k&r +jGN#jiGe$2QG#rc9!,hPJ[mp@a+0&""p'J"Hl`DZ1dS'D4ca+r4D!Y,-YLrShJ'% +X*3cl3-JJkP3aCBh@)&rc9ZP,[jdN'FU1H`krRUJ-0me3cC!!'IHNh3$1FVmb"Id +NbSFQJApZ+9iT![r[KT!!KG#cV!@l%N%p$PfbHQ08&,c`dBkQUN%R[5#8'j5HSXU +ccTk14bbdKEVLkJV*p"Q8aRk3!-Ck5aq68JNFV9!pCp&M$Y*C-#Y-P-(S%$U01j2 +)*I`Y32S&4A+jA*jASX[Ak%`dUpL4bG%HH@[UY(Sj0ce&5H5-aM*'`Kd&"@99NJ6 +SlULi98JPph)*XI5L)c2@&6SmASlV4Pq6Sj4$6-VKh5@9C60H#FUKILp(4f9JBJh +40T1[bc3LA4CHLb&&Nmc4-CGfd-M1MdBY5,UaA`!!3J!!UU#RN!!'!!S!N!G+!+! +)H!#B8)CiL)QBF!!)U)HALCF!U)Q+KRHR#`#3!`4e9'CNPe9&De9&KSB!N!-)N!! +0!!%c4&9@U)Q!!*!$#L)c4&@3!eC9CPCRCQCRGhGiHAH)N!4iL*LDUCUUU3#J!!U +(hrQ(ZqR9qhCe`rp,,1H0)HHcf3`M650qV9fljj`!(KbKYRPR@&ZPB4!(5(ZbYhc +P#fqFU9KYabKAI)(0YN1bU$61XlliH%UaKi!fl)A5YRG+k&FBC5[P(18*K,cKfH6 +kbK[MFKhj!FrrdPRA05T1YQV9UlpiG!TY1RYKUD#J+-3(cCbbqXXSCmXkb`%,4*E +lmH1F1@1L(-+ZA+%BA4V(`3q@idV'G*dh3#$P16$PYRH!U2eM1q2KI+(eR%@r'R, +$(61(`lIRBiIH)RB4ECbqSUdDA3YbP'U!bX2MEqU,rh8Q)[R1[)8M[hLpD8'0UPZ +F2EUkY-XJrAmR3T(+6ir"+4Uqh&&-4+lmEBe(6jp1V8#a%*XbdVZ"hC+l5%)DqMm +l2ACVr1cAkKlhpHIk-$cj#r+k1Y+AU0[[r2iDqMf@Hcd@Dl0IT8Epd-GX2P,`bMR +iaK1N2q6TEMI4iHjkC4XT+S,qC$VVpIj@G(Up0Q[m[C!!jpRGp2FJFB,'Umm2)dc +D1r`eqN'r4kJpG#RRhI,BrmE)PAq0ISpPQ[dHHcdfHYJadcVP'qC*9r$(ES'@cE0 +a)qM@$@cAjr1-Sjq[6,(K*dE)XR`R5mH5m3E-,G`mLbf)3rlFrG4rR0NJDc`Pj4a +V*6F-XDiM+)ABN4f`Ud)hqeb'k5*50Vk4HQD2EKeAcfNJlKZqK-[bC`qH@1I#@@, +TAXKp(*[T#RH*EH4am%XDH8H+'A3$'f1HmKEC$hb#(,J$4E31-5R@h,(#'%kD9%1 +!V[ad)6T-5*D,R`)bb*EGbSka251V9'5fDB*SI'0[EeI0#"i&U&-kP0`bPj*6R*+ +SljdNY9Gj2(`P+N!iT1I'KC`#PSNc5EUfS0Z'r)2bi"0[PB3%@&'SX5Qh(6J10*@ +B&b'mBZ@NCbPJUTJZ%44ebB"Jr&hIZ$C4j+BJ%TM$GT(+0+bPQTkN334p)8ZZi(@ +%U&3d&Qf-mNYdU"b)l(2%f34`#*@'l&&$$lG21h6-3MI,"T3qH8YSc-*(53aDd[B +VZ1P4#c+C)TVK`-4FL)J2c(4hSVl+V0ILjXGXGc[33N%mc+DfVc[QQT9)'&$BY+A +)3A8D30@!RBB'MCicid9Y5"`LGpCQ+3`B'UB*$dAk-5qXHTcl&3C4UK!Y[ac(rS6 +eK#JQ*rl)QSRkBfNp$BhlRjRfa5'iNjB*6N#U$&!Q5&d[*S#-[EPrqUa'$f6kaXl +C%DZfAfVq+5hlmJpUplil)Gk8iIQAPN2KTA3#5il%c8-6QRD4!AE!rb54F5)&LUr +E[aRDP"pQ)ff(baV2E0QJI6Ul%DB1`rIJJ3BlT#1mdY654@RYj+DZ1mRqYcj[05E +@1"Cq+12[iAaj)qdU8KX+Cl9NLk9&*$6kJp"TY[5X30CQmT@5f3jd5DA5r%XEECE +DM8Ff)1pb%,8NF9i4YmGf5(cb`1@b@)2qFI$[R5l(L-,GNamTF@B$Upa+@V*a9f- +h%@ZJ)hf2A)$U%BDP$Y4Zie9V%#LI0cHCP!R*al**S6$YjF*3IXdheKJr-eq5Xh0 +UjZD!HPia@3lLqI`4mi`(I+rJMkGSIiBPjf'+3Zm%"B4391$I8%Ac-1DjQCX33h5 +Uji(j2eP@(%J-(UKNji0m"`KFaBb4rT!!mC(,&5RhTRYcMhX**@)Y[ERkm%Pd%mV +RL(%`0aZJH'd9+3Rr!5pah,qGXcU)C$KACEEaRAI$&-C')Q5ZTZ4BQ3Lrq**@Va" +"cJ@M66-amr3hd@+*VXDH40!8YdFfrVS!akM'X6c'&5!`PiG,Q@'*!!3X1J862PR +A[pLR30Hb(M3"8f2)EIaZ,0$eaB@[DlZb0G$[&r3h9TTQTQCTk-TSH3E0Te+*#!F +BD[F9h@EjDQlJ'E@e-LE6mdJ[(E94dlDN*e9QGUjfC5YNH(%0@[@5!4eU0`HXeB8 +,),Rh@9plGQbIBamULEqfpbLhVYl5M&NB89'*p2ZhGBq)1m6cZ'L2-$Fp*&*801$ +`a4@ca8iXe1`FJiBUJ5DSPa(b0i9NkD,h480MCbicKH0![51qecM%Q,DU,r"i[&b +`AAh'aqr0-GmMjpEMNNAR2R"d`#KTHFr6JJLCZ,RLD&Q$lFY('1SKk003j-Y&5+D +rL[+CmX"#Sc1p(ijk&T)fIpBT3P')XXjdShI#PBQ1HIFL&1,RNQ55*BL5j3,dp%P +Uh)Ya19meNc9iijH,'c#MHp1K6GXpN!!hq[Q1-QD[6fL*CHkZ#Ce#a)dYVi0fQ6H +N,F&J&&U5HND4E($PB9RcJN)92LS5A`pk8q[RR9+20QZ46iZ"G@F055'Y$jXdhEQ +H4*Nb#YRJJJ5-!p@Vc3rC,Vi`iBm%MBT&HiKXk'+c4[$aCU,YD'XVR)VAAi-%+km +h9IdA*VdBHj`S[I'MqjcXjaZIdhQT&dVLMqE64rP#q1P"rff93$*JDS*62Y[$YGc +LSiTdKUJd1*P,YV`FYS5'kLbK%CLT2G&ISa"hGi,LPZ+12C(dZR5TdTAh5E0i9&( +Q$460VK(F0Fc4#A*N@SqJa28YIZbAL&V0MU&kKYJGer%kbN$eTB+U[(&elUGYfrp +&FP1epQlQHbkqN4mCR%Y2SjRV@986Xr&)#3MahM!9h"V@kk4h%h(Imbp-@-G-R+- +N@C6mP58eR,#e"3Q($KMNhm[(mFlXJrTeJCeI#,-9AH(lL[`BI&kYi,&&qrVjEqa +LY2&*+h+8@ipB*GUYUSS0Z)Llf0`IYMTQrekl$qpZlC!!2m6Z%Zf*[c(D%lZVIN# +[ifr+8lpA[aqd0IUp'VicZ2de$BD@r83182PliG8D4ZMUkrhpd1MVmieKQ$r%qXh +Z(eZ2![,r&Hc"23VaDJ2*)YicbK,"(I)ZI&[R%Y`UmaPf4Ph`X(B[*aAQ(YZ2,6r +bfMa,TVF,D#Crl`V%rF'V9edrM(P$r1Vlrcr6[MNRmNmQrS"a`UD-M5cJFDh,p9I +L[10,lN`('9*lhJ*hL&%HjICHYDDh(qXRV@$T2a11((e%%QI[TGp11fUYUm$1SHL +Q)XmdaNAdd@q@C5mK*BL4`!,rF!!!lYNCK!!$!)C"FQ0SD@8!!JC"FQ0SD@8"!*! +$#%&38%a$DNe!Td[h1+G,q-FK3%aP$(J!!J!!qli!N!D6%`#3"!T"FQ0SD@8J4'p +M!3!!NaYdG(*[G(4iG+G,i&@R66bd!3!0A+L5!!3!N!B6#!#3"JP@`5X!!!%!N!- +ZI!!!,A`!!!*q!!%#LJ!!!H8!N!F"!T)!!!(L)NGPF`#3!`%#QJT"FQ0SD@8ZFf9 +K!!)!N!0"8&"-49K88L!!N!P"8&"-49K88L!!N"HR68*$!!#Fl3!!-2S"l3!"!XS +!!!(l8%`!!!'U!!%#dJ!!!Gm!N!--#NF!!3,D!!!#03!!")S!!3!"!Z)!!!)R8f9 +KFQ0S!!%#kJ!!!IF!#!G(CA-!!3,b!!!#(NBJ!!!"XJ!"![S!!!(bE@9[GA3J!!% +$!J!!!Mi%BJ!"!*!$!3-+!!!#-3!-#de[FJ!"!!!"V!9*BfpZ$3!!)N&eG'p&H(4 +bB@0dEh+U)+NJ-6Nj-L"#D@aX)%G[Ef4YB@i!3N&eG'p&H(4bB@0dEh)JFQ9aG@P +bCA-JG'KP)%KTCA*KFQ0SD@0KE#"'D@aP)&0jFh4PE5!S5%C6+5"cEfCdGf&bC3! +N9'KPFQ8JDA-JEQpd)'9ZEh9RD#"YC@e[FRNJBACKD@aKBQaP!%K8D'9bC5"TFb" +ZEh3JC@j[G@GS)(0`B@0P)'&fB@PXB@*XC5"[EL"dD'Pc)(C[E(9YC5"dEb"PH(" +KEQ3JG'KP)'&bBfKTGQ8!*L"`BA0cGfpbC#"cGA"`E'PPC#"TFb"TEQ0[FR*PBh3 +JEh)JG'KP!!TdD'8J4NP138`J!!)J)`!$G'KP#f%JC'PQCQ9bC@jd#d9iG(*KBh4 +TEQFk)%CTE'9c)(*PE@&TEQPZCb"dEb"LC5"PH(4bB@0dC@3k!"P$Efe`B@0dC@3 +JBRNJ3fpYF'&MG#"3FQqU!*!$,`!b8%&$9!!!#30"45"8C@e`!`#3!e!!8!#S!D3 +!N!-(!&m!&`&9!%Arr`")!9B!(3!+!#8"5`#3"3`!'Jd+!!S!"J*+!-i!N!BHL!" +3!!919[k851F$##KZ!!K#,I"U+dc`9%kk'P33,I"LX#`!)@F3'f`!)I"L6VS8)%S +!CJ!$hN*R2bh`C$mm!!%[,!!L6VSEDMYIm)a+EI#-CJ!$9N*R2bh`E#mYm'i[,I" +8,b`!+LmX!#C1ZKc'1er`M!aYrp$`M'B!!,![,I"85'lrP%kk'&Jl32#-5N"3MfB +!!cS),J!%rl*R'#mYm&3r2!$c6VSBD&0!A)pR!!,%B!!$B%SYlL4Q0#mYm&3r2!$ +a6VSB5NT!A)pR!!0'D`!$3PG!CaKU#P*!DJ!$0Q!!!T*93'S!!b`EI!!"lL4#Ccm +Ym'`[,I"Z,bh`9%kk(3JlAr#-5Qh`M'B!!X*#CcmYm'`[,I"Z,bh`9#mX!#S[,!! +Q6VSF$MYIm)a+EI#-CJ!#R#mYm&4)E[q86VSASMY!m)a+3CJ!#K$em3!$r[#e +X!#lrh#eYm'lra%(Zrj4`#U*J1d$`M%T!CJ!#B!JX!*!$2@F5'h`!!HiP'h`!!Hi +D6VS*BQ!%3LhZ*A$r+d$`MLYX!%EZ%LYX!$lZ&NUYlK*RE%*R2bh`E#mYm'i[,I" +8(c`!!dKYm(*1ZKXD1er`M%TYm)aQ!!)%'h`!!I"UF!,!,!!p(`"1ZJ*Q-#hZ%&5 +2Ca*V!!)X98"R!!(JDJ!#)Q!!!E4#,I"U3QFr,I"b6VSC,$YIm)a+EI#-CJ!"[LY +X!%VZ%LYX!%,Z&NUYlK*RE%*R2bh`E#mYm'i[,I"8(c`!!dKYm(*1ZKT#1er`M%T +Ym)aQ!!'''h`!!I"UF!6!,!!p(`"1ZJ(S-#hZ%&52Ca*V!!'Z98"R!!&LDJ!"T'! +!!6C#,I"U3QFr,I"b6VSBVMYIm)a+EI#-CJ!"3#!Ym)k`V!!iCJ!"4#mYm&4)E[q +86VS@1MY!m)a+3CJ!"(#eX!$,ri$!X!$B#32lq28$r[#eYm'lra%(Zrj4`#U* +J1d$`M%T!CJ!!mJJX!!-!2@FH3QFr,I"X,bh`ELmYm&41ZKY51er`M%TYm)aQ!!$ +-)'h`9(`!(""`!"!YlJL`4QB!!)*q!@!8)'h`9#*0dXF3-(!!X#RZ#'B)8NG64NT +'E1B-4[rrCP`YEI"Zrm4"l[k8,8MrTMemrj!$X%(Zrj4`#D*J1d$`M%T!CMJ!EJ3 +!rla#,[k83HlrP(!+SQ"J*%SYm'TR(N*R2bh`FNkk&kj#9cmYm'`[,I"Z,bh`9%k +k'R48Mdkk&`a6EHiQ6VS@hR!!B!!!NNTYm)aRC!aYrpR`M'B'1h`!C2#-)'h`CNK +S!""1ZJqb@)pJ4LmYm&41ZJqQ5J"BMfDBB$B[,I"85LhZ*@F)3Hh[!L!)B!C"lHi +T)!J[!%KYlLP)EHiTUBY#Ccmm!2*#TkQ)$&m!!@F!rf*+,I"UCaj#CcmYm(*1ZKF +13PFr,I"X,bh`ELmYm&41ZKR89)p`!8cI%-"1ANje6PEq3%MR(`K#EHi33QhZ)Nk +k!mK+EHi3CJ!#!#YYm(6`H#YYljc[T%SZ!!KR-'!i)#h`K,#Ym)KQ$%kk!jj+EHi +3CJ!"eL"Ym)45VI#%(a"1ZJ5q5QhZ%&52CJ!"[NUYlKCQc'!!!E!JEHqF3LJIr5" +Ylja#+"rq)'h[R%)S(rmr2!%!,bh[U%KZr`"1ZJ'85QhZ%%r[!!TQ!!'!2c`!3#m +Ylka)E[l!6VS"H%TYlK"2l`!+CJ!"C$mm!)![,Hq`5'lq3%kk!9a+EHi36qm!#QB +!!8Kq!%*YlL!I2!!36VS#GNTYlK"8MfB!!6"J!!%30LhZ(%T$DNB`!`*!Irpb!$) +!dUh[U#""(""`!"!')%l4`(!"d#Mr!"m!6VS#1NTYlK"8MfB!!23I"Nkk!q4+EHi +39)pQ!!$N9)GJ!!$#-!-#3(rrFJ!b!0+Ylk`J3AJ!'"!J6Y$%F!(3+2l!(`"1ZJ( +f5QhZ%&52CJ!!X$!YlKcL5()!-J$5VHq`)%&k!"S3)%l3a4mSrN"1ZJ(-5QhZ%&5 +2CJ!!KZe0-#hZ(()+iQL+3"mm!!C1ZJ'Z5QhZ%&52CQJ`45!Ylk53!)JS3,RYlja +N)%RX)!"J'Km86VS$4%TYlK"8MfC%8SbjlHqJCJ3SEHqF8d4+4'cJ5UhZ&Q`11h` +!!Hi31hcrfI#-B"j@K`b(!!(rm'`)5UhZ&QB!rZ4+VHi@CJ$qE%kk"%4-ha$i6Pj +1G8j@rJ")jamB2Li!%#KZ!!`JEI#%XHh`L'B36VS"R%TYlK"Q!!%))'h`K(S!'KJ +V52#%-!A33,"(EJ!!jLCZ!!Ki!(B!B(`JEI#%XHh`L'B36VS"CNTYlK"Q!!$5)'h +`K")B+dM`K"!"k!J@`'FL'!""l[i!d-23`d2S!!)d!f!)-##i!'`'-`"4b[rf-`4 +53`C%!3!#!3!2&X&R)KJ"3Hlq!0$$d-0$k!!#0!0J#$!JZ!"X"M-!8FVrpM-%8N- +'4!%!8FhrJLJ,Q+i!#*j%B!*#'e(2rr`q!h`!GJ$H4d2ZrJ"J0"Ja-!!5-6!"+M` +!!)!!iUdJ"G#'$)!!!)!!EL""p'!!B!)3a&(0rr`J2!!!J!$LU0b!9%1f4fd!rmK +J$$YmrpR`M$Ym!!(Z%%cI'2K1ANje6PB!!#m((Li!#(!!%!H`EHiJEeJJ,HiF%Lh +Z)H1S+d$Z(*iYlL%L,I#%XUh`L'B+6VS!8NTYlK"Q4#"Ym)45VI#%'e$Z(L!Ym)5 +`VI#)CJT1ZJ!b5QhZ%'BN)'h`K&+Ym)3E81iI1h`!%1iJ)#hZ(1qS+d$Z(()!%JH +6EHiJ,Kp1ANje6PErr%MR!`K+VHi5C`!"$%kk%3K+!'B!!4!YI!!!)!$rr#!Zrrb +`VHi5E`BYEHi5rra#CcmYm'4)E[rm,bh`J%kk%Z`lAr#-5Qh`M'FN$'hrfI#-CJ! +!bP)Ym')3,I"LX#h[Qf)!!,41ZJ[+5J"Q!!#i5Ulrr'HL,blrr%kk%N)J,[rmNDh +Z%Y#Ym)!V32#)+fh`J2#%5LhZ*9L2C`!!N!!SEI#!,Llrr'"3)#hdPZ#)("5a"KM +'%#hdQE%')#hdNR)BikJL,I5@i)Q!JA)!%JBJ6H@*dF%L+2LDXi!V325@)LhdNZ# +*G!!8"L"0jBV4`L3Sp*UeJ5Y"p**6KdU(E+T+,HiDCbK#,HiDF!M3VI#!+d$`K,# +Ym)KM&$YmrpR`M$Ym!!(Z%'!'1h`!!qi360m3`%jH6R919J!!,`FH,J!))'h[T"# +(8Uh[T#!Ylk5`VHqJCJBVEHqFlk4+EHiLCL!-"`#"CK*`!E#YlKCR#MYm!!(Z)Q! +!!3BE4qi1B!!!i!aY!!(Z)QCD$!F!JQB+1h`!!ZiLB!!!jKYm!)(Z$L"Ym(J3[!# +"8Uh`H#!Ym(L`VI"mCJa1ZJ$-5QhZ%'B!!,j6VHi@C`!!YJ`(!)&Q#R!"X+hZ&QB +!!+C#EHiL'dIZ$Q"m3QhZ)NS(CdK6"h!!%!H4VHi@5UhZ&Q`Z1h`!!Hi31hcrfI# +-B(3JEI"i8Uh`H"#YlJiJ,I"iX+h`I'B+6VS!BNTYlK"Q9"!(8`G+!'EBB%SJEI" +i%,`!J9+Ym(JJ,I"iX+h`I'B+6VS!1%TYlK"Q+P1YlKCR*"Ym!),Z$L"Ym(J3VHi +18Uh`H#!Ym(L`VI"mCJ41ZJ!-8khZ&LiI6Pj1G8j@rr`J,I"iN!#Ym(3Y32rm2`! +[,I"d6VS0q%*A2bh`FNKZrr`[,I"d6VS3KMYIm)a+EI#-@)pR#$Ym!!,Z%'!'+fh +`G2"i6Pj1G8MR!aJVI!%M4@IdNLYmLD[0lr5@5Hh[Nhi!(Lh[NQ"#("`3,I5CX3C +`!"!'jBJQ3#!Yp**b'11S)LhdPZ#*J)&"lILDdFXL%,1!+d$dPL)Yp*,JL8(Yp*V +4bb33YB%V3I558dG+4fbi60mB`%je6PErH%MR!aK1ZJB`6VS"k%SYr04R2NKYr04 +)EHiT5'hZ+8KYlLQTLd+R2c`"pd+R5(MrrkPm,9rrr%KY!)T)E[rkUC%[,[rmUB- +-EJ!"rrTQ!!'B3UF[2%&8@%8r2!2SU"mQAb!,CcBlEIh8m'`VEIh@m'iJ5k!T3QG +"lI"X,`K"lI"Z,`JJ5b"36T!!-"rJ5"i!,`ZTSdS(C`!"8'"%3Lhm[5mYr*j)EHi +T5'd!FMmmrrp#TdKY!)*)EIl%2c`"pNKY!(Sr2!!%UHT+,IbpC`!"'M!i!K4%3$Y +!m'`VH!1Bm'ipEI"XrjC#E[qF3UlrNN(Zri#L"dT!CJ!!m#mZrl"`!$!Zrli[!%k +Y!%+`VIc!E"*)EHki2c`!dNkk$*jFMf!!!-J-EY,Arm"Q'"Ym!!(m[N*R2c`!m%+ +RUBJ-A`!"CJ!!U%SYr,aR"%kk!`*"lHiT+dM`9%*Ym&J[,HqdU491ZJdQ)'h[Y#e +S!"$rH#eS!"6rI%KZrhLT+KYm!!(r$Q!Z+'hmcQ!@,`a1ZJ0@@)mm!%T'Ce4`6X( +'d)`S3("1`HhmdY#Yr-k`M',F8Lhr$K!Yr`k`,HqEBmK1ZJXq3QG#TcmYm'a1ZJj +d9)p#Tbmm38a59$mm!qLS(dUIC`a#Ccmm!qK#TkQ&9)p1ZJ3i60mB`%jH6R919[r +Z51F"#%KYrH4)E[rZ5'lrm+Re+hJ$Q2h@-$J#&%4!1d$pe%(YrG3V52"Q'h`!!I" +L3QFr%#mS!!*)D!!3(c`!!8KYm'41ZJlS1er`M%TYm)aQ!!(D'h`!!HiSF!JY32r +m3QFr,I"N5'lrr%KYra"1ZJf+1er`M%TYm)aQ!!'`$#d!!Im3C`S-,3!#ra"Q!!' +B$#d!!Im4CJ!"MMYYra,mc%UYra4Q$N)Ym'*1ZJC85J"Q!!'@'fhr%HqEF2mV32# +13QFr,I"N2c`!!5mYra41ZJf51er`M%TYm)aQ!!&3F!FY32rm3QFr,I"N5'lrr%K +Zrr41ZJd'1er`M%TYm)aQ!!%X2c`!!dKZrrK1ZJT51flrq2c5$'d&h2c5A)pZ!!% +)'flrq[c85'hmeA!!%#lrqLm!6VS+!%TYm)a3MfB!!1jq!#KYr-jJ!!#S,`a)H!! +"6VS*iNTYm)a3MfB!!0"+&'S%F!&J!R!!'8!!)!)8!(m-&!!IBJ!!X%KX!!&`!"! +8,`"1ZJQ`5Qh`MCJ!!RJJX!*!$)'FB5'`!0NKi!!*1ZJQ55Qh`MCJ!!J'! +m5'`!)8Ki!#e1ZJPk5Qh`MCQJ),!#3!ceR"KYm!!(m[&*YlLBJ,!"'d+`!5Yk +!)#`!2Y#X!%,4VIc!5H`!6P0ZrrK+E[riE!$r8#!Zrr5`VI#1CL")H!%r,`G1V3" +D+d$`@NU!CJC`!5Y!m&SVEI"Dm&jJ*MYmrpR`M!aYrpR`M'B'1h`!C2#-)'h`CNK +S!""1ZJ2Q@)p1ZJ(J60m3J%jH6R919[l`51F$#%+R2c`"p%+R5(MrrkPm+&p)E3# ++5'lrm+Q4$'i!![r`CJ41ZJ'U,``r2!!$5'lrrNKZrrT)E[rbUBd[,[rk5'lqm+Q +3!(i"B"amrpa(!NB!"e*')%l3aa!Sr[!J6G$'d5M[NP*(F!!3,[l`X%GXfK!Zr[! +E31q583"M"KYm!!M[NLm-UB0-ha$!6Pj1G8j@rj4)j`-i+'i!##iYm'i),!#3!b" +Q(K!X!#'`,Im1CJi[$%kklkK+!&L2CJ!""R!"B!!""JJX!!-!)'B!!0j+,IbqCJ! +!S#m-5'lrP%kk#&Jl32#-5N"3MfCN##i!"2qbC`JVE[r%m'jJHNSYlL4Q-Lm-2c` +!m8kk#&j+3&b2C`!!XQX!!+jA3'FBDJT53'S!!+*J!!#!98"U!!#B'h`!!HiN3QF +r,I"X,bh`ELm-6VS0(MYIm)a+EI#-CQTJ#!aYrpA`M'CJ3QFr,I"X,bh`ELm-5'h +`ENkk$+JlAr#-5Qh`M'C#F%l!l!!f4r3)6NAX!%jJ&Lm+6VVr"M`!5NCBMfF`F%l +"aY#+*%#hbQEQ6VS("Q!'!#`!#!!J+dI`ER!"d'`!0Q!5,`a1ZJ)@5J"BMfEL+dI +`ER!!60mF`%jH6R9+,HiSC`a#CcmYm'41ZJQS9)qTp%je6PErr%MR(cLJBdKYrrb +SEUMq,c`!!2rr)"qJ-UN5U6#Tc%+RUAZS8+!fS$B-H2rr!rCQ%%KYlNir2!$56VS +(3URdA)mJ2!!!)!#K(LY)m)!J2!!"b3LK(LY)r-iJ2!!!3!#K(LY)m(3J2!!!)!# +K(LY)lj`J2!!!J!#K(LY)lkJJ2!!!J!#K(LY)lk`J2!!!J!#K(LY)ll"+VIc1Cbj ++VI"dCbK+VI#!Cb*+VHqFCaa+VHqSCaC+VHqXCa"+VHq`C`UJB3b!!!"!!'`F5Uh +`J'F')'h`J+!I5'hZNMmm!0*1ZJDHUI4FMb"Ylja"k#!!+dM[S#*Ym(4$k8!!+dR +`I%+R5'h[Z%KYr-4)EHiT,c`!!3!!5(Mrrd)R3UHT%bYIll4+VHqdCJ+Tp#mYll5 +SFd*RU)G#CkL+3UFr2!$),bh[Y+Qq5TpQ!URd3QlrrNRYm**(lILD4HhdQQ"mIJ" +m!(S!1#lrrRB)B&K`!F"%28$rr()"`SC)`,'"CacLMJJ(!!"R"!M'!"rLM`U(lEL +$)!U'lEL$)'!1iSi)"`!!C`3)aJ!IiSp`!F#&-Llrr%M"Xi"R#Z+0#SAYZ)-JB!, +LMH*%8d0+3fbL*)FQKLL&8QlrrPL-@)YBLJaZ!3$rrQd!rha-haci6Pj1G8j@rBC +)j`-B*Qi!#$"Ym)`[#%KZrSC1ZJMD5HhZ+6!Ym)aU0!4!rp0REQS8"%$rpfGQDJC +H3'GJB("43'SbB'S%3!!+Cf4U#P*!DP*H3'TDB"j93'T8B%`%3!"NC`*J5NSYlL9 +R"%RYl`)q2!%%B$j(l[f'2@h`E2qF3HlpKLe)rjK#E[qL3HlrKU)(1d$`M%T!C`4 +(lHiT2M`"$Q!32M`"$f!+2M`"%Q!%2M`"%5m,5'lqKLm-5'hZ+DQ,3QFr"d+RUBJ +m(`a'!!&A`%3!60mB`%jH6R919[li5LhZ+'F33LhZ+%*R2bh`C%kk"XT8Md(YrL3 +V52"Q5Lh`BQFq)'h`CM!34%!a`!)8)'h`CL(S!!)$Q!`Y!!(`BQB-3Hhpe#Y)m'C +J!!#S%#h`BV!YljYR!!#F3HhqG#Y)m'Br2!!8UFK+,I"LCK4)EHmU5'hZ+8KYlLP +)EHiTUBYJ)R!!%#h`BLm!5'lr!%kk"iK)EHiT5'h[0NKZr`")EHiTUBX[,IbH5'h +Z+8+R2c`!!8KYr+*#Tb"Ym'C)D!!'2c`"p8KY!)Sr2!!%UHSJEI"Q5LJ!"QB'F!& +J!!%X)'h`CL&i!jJ!!M!i!K4%3#"Ym'B`J%*R)'h`CMm3,bJ!!NKS!"!I2!!"5'h +`C%kk"a`lAr#-5Qh`M'B!!-j`##e!r[a#CcmYm'4)E[lm5'hr%%kk"F3lAr#-5Qh +`M'B!!*i-,3!"ra"R%J`Y!!,r%'F+1hcrfI#-B!!!K$!Yra+`EIc-CKa+,I"LC`S +3,Im4X#h`BQB-5Lh`BQCB5Uhr&'C5F!!3,Im4,`")E[m!6VS'LNKZr`!`,Im5X'h +mc'B)3Hh[1L!)B!C"lHmq)!J[!%KYlLP)EHiTUBY#Ccmm!0C#TkQ)3PFr,I"N6VS +&%P52B!$qQ"Ym!!(Z+(!!B#a#CcmYm'41ZJ6i9)m-EIrCm)aQ"MYm!'6`M#"Ym'C +)D!!36VVp*PL2B!$qBNjH6R919[rU,``SEJ!3,``r2!!,5'lrlNKZrra)E[r`UBd +[$$mm!!&)E[rZ5'lrq%KZrr#TM5"Zrr`J8#*ZrrJL84!S!"'`+3!4Ca3[,[rm)'l +rq#"3F!!3+!!42`#TA5"Z!!`-8!!$CM!JEJ!-##J!N!-1Cb3JEJ!-)#J!!J+!!*! +$rh*PXS"Q%#"Z!!J`[!!-(A`!!3!8B!4#,J!8+&p1AL"I6qm!$%l36PEriLm(2Li +!$!a(!!aQ#KYm!!(m[Ai$B%S-4`!,CN3[,J!)2c`!!8KZrr*)E[rm5'lrp+Q0)'l +rr#"35LJ!%@BL5LhqcQB%IQGJ'%(Zrq*`!+!`8N!),J!$rr"R"(jUB!*qD$e(!!i +Z(djH)&pFMdl36PB!!"em!!%!$%jH,Tp1G8j@rqj)j`%B+'i!%#CZ!!`q%`a(!!C +Q6VRV!!*Q!!#B5'lrlUKd,``r2!!"5'lrqNKZrra)E[rbUBd[$+Kc,c`!!`!$U*Y +)E[rb,ccrr2rmU+P)E[rb,c`!%!!3U,![,[rZU(0J8!a(!!0Q5JJV!*!$$QC#I[r +1+`!&$!F!$@F'$!F!!fB`,``r2!!"5'lrqNKZrra)E[rbUBdJE[rm)&"++!!4CK! +JEJ!)-,`!!4em!!%!&'!%3Li!&%cI')"1AL"I6qm!$%l33QFr,I"X,bh`ENKYr,) +[2$q3"#mm9%9B9%kk"-K#9cmYm'`[,I"Z5'hmXNkk"BT8Mdje6PB!!%*R2bh`C%K +Z!!J[,J!-6VS#XMYIm)`r,J!+,bi!$%kk!!C1ANje6PB!!#"Z!!Jd,J!-)Lh`MN2 +Ym**J%(!!%"Lc!19))$%!!1#*XB&4b[rZ+d(`MNjH6R919J!!,``SEJ!)1@h`E!! +@+@h`EJ!`+@i!$!!53L`!'N*X!"`J6(!*SQ!SAdjH6R919J!!,bi!#NKYlLP)EHi +T5'hZ+DQ,3QFr,J!)3UHTL$!I6Pj1G8j@rqLTY%)R2ccrrdKZrr#TF$!Zrr"8MfF +!!)4VjPe!Ce4Ui&K!DYa#CbmZrrT)E[rXU5`-A`!$CXSJ,[rXX+h[Y'E!5'lrqUK +a3QF[,[rk,bh[Y%KZrqLTE!aI!!TQT%*R,blrk#mZrrT#TkPS5PpRNR!"B#iJ,[r +bX+h[Y'D%,bh[Y+NL)'h[Y%KS!"#SSdkk!"B[,HqdU50J!2pSF!"J!R!!6Pj1GDL +H5'hr)+LK,c`!%`!+U*0)EHp+U)41ZJ"k5'hr++LK,c`!"J!"U*X[2!!H!!USNcm +Ym&K#CkL5,c`!1!!+U*0)EHp@U)4#CdKYleDSM(!9d&ml32m`6VS!5Mmm!!1SKcm +m!!QSLLmm!&8!!kL65'h[H+L%,c`!93#PU*0)EHiUU)4#CkL(3QHSLLmYll5TD8j +e,c`!%`"IU*-[,I"8U)41G8j@r`!r,Im`2c`!1+L6-'hZ*Lm)5'lr!%kk!G*)E[m +!U)41ANje6PErq%(YlLNV52"85'hr'+LM5'lrq$mYrc!r2!!XF#E3EIm`2`!r2!! +mU+G)E[riU+01ANje6PB!!#m(IJ!J,J!)NDh`AQ!+)#h`@Y'Ym&j54dUYm&jYm$! +Ym&M34`a!!8"[#$im!8#HEI"BF!V3EI"B2`!r2!!HU*-r"d*RU*,IEI"B,Kp1ANj +e6PErcL"2-@i!#!!BS!%p3!!+6PiJAe526Y"4`@!#8-&19[r1)%mKEJ!)!#!aEJ! +3!"JLEJ!-)9%!*%*S!#a#U!!Z5J&Q"+!#B!+J!ce!!")LEJ!-)UJ!+%jH)Pp2l`! ++6Y&19[r!)%maEJ!)!"BKEJ!+!"+J%ce!!!j1AL*IA)p1d8j@rmiJ6c&Z!!i!'$& +Z!!`!,#&Z!!J!,U"%28!!%%jH)Pp3Mdl4)Pm3(b"ICJC`"U*JB!4`"UCJ2S"1d5* +I%"mJAfB%SJ"J!UB!2S"1d5*I%"mJAfB%SJTJ!UB+2S"1d5*I%"mJAfB%SJKJ!UB +)2S"1d5*I%"mJAfB%SJPJ!UB*2S"1d5*I%"mJAfB%SN&J!UC"2S"1d5*I%"mJAfB +%SJaJ!UB-2S"1d5*I%"mJAfB%SJeJ!UB02S"1d5"[!!3J,`!)3QHTlL"I8%p1d%j +@riB["ceZ!"ErR#eZ!",rYLeZ!!lrQ%)Zrk!GEJ!-rk&`!#e!rk*9MdKZriC`!"m +!6VVr2$iI)'i!#$#Zrjip4`!B,LlrJNjH)&p2l`!36Y#&5%p348i!!%j@riB["ce +Z!"ErR#eZ!",rYLeZ!!lrQ%)Zrk!GEJ!-rk&`!#e!rk*9MdKZriC`!"m!6VVqp$i +I)'i!#$#Zrjip4`!B,LlrJNjH)&p2l`!36Y#(5%p348j54J!!6PErKNMR!`!X,J! +82@i!'2qF,8ErYLeZ!"$rQ%)Zrk"9MdKZriC`!"m!6VVqXMiICMC#E[qL9Bp)E[q +'F!!I!%kkrY)q(fBJ,@i!$2qU,@i!#2qQ,8ErYP@25'lrKR!!(`"1Z[l#2Kmp4`! +D61i!`2pq6PiJAdr[!"*1d)G)3e*&394&!!"19[q',`FpEJ!8rj`YEJ!3rlBYEJ! +-rjK9MdKZriC`!"m!6VVpqMiI)'i!###ZrlBp4`!@,LlrJNjH)&p2l`!16Y#*4%P +53e*&394&!!"19[q'2@i!%2qF,@i!$2qf,@i!#2qB3LlrS&@25'lrKR!!(`"1Z[h +f29m!%NjH)&p2l`!+6Y#(5%4&6%9843!!6PErKMeZ!"$rR#eZ!!crYLeZ!!MrQ%) +Zrk"9MdKZriC`!"m!6VVpb$eI!"*1AL"I6qm!#Nl3L8K6494'6%p$5`#3"!)Z!*! +$#J#3!j*#H!T+RFj1ZJ!N3QG)H3!!rrp)E`!%5&G)H!!")MVrhNke%!!JE3"X6T! +!UI4CMbmm@N956d*RUD!N9eQ2,ca%394"3QHTS#"A)&!LH!N)*&*J$M,BCJSb'Q! +#3KP4bIrmZmPQlUQMUD0CMbmm4&*&6%*RUD!J9k!P)&$L3#30B!Bb'0@e%!"4b2r +iUD01G5"I-KJd',"B9mRrqNT#Crj1m#$m)&mb'$3BX*KAbIrk5N*RrNl`)2SJAc) +B0"L`3Qi+N!""E3E33%(`!!)`%'Iq6[!!!#![!!3[33!%)Lm!##pI!!4)jc`!*!! +Q!8K#a--S!#S"5%A)aG4%5%+3!m$"d)*-h`!m)Kp1G5![!!3[33!%)Lm!##pI!!4 +)jc%!6VS!R%cI!)`L(dje)#m!"#p"!!3L,`!),em!"%MR-3"1ZJ"m)!&-h`#-)Kp +1G5![!!3[33!%)Lm!##pI!!4)jc%!6VS!,%cI!)`L(dje)#m!"#p"!!3L,`!),em +!"%MR-3"1ZJ!-)!&-h`#-)Kp1G8U!DKa+J@S-4)"%J8kk!#"%J8je4)"1ZJ!@4)" +%J8je5S&U#N5"6VS!"N5!6R8Z2!!!rrqbJ'-')J"`!%jeX)GL$)$"5%!b!%*!5%" +1GE+(BKSZ!%*!5%#!`8K!5%Fq!%K(MX%`"dK(-JG1G53!*J(LL1+*XSGLq)$"`)F +b!m,!,J0)4ml!5%I5Kf8)NS*L"%5"6R963'$N6R8!N!1)!*!$Q!!!%IJ!N!0i!*! +$)!!%2c`!!DR`!*)r2!!"UI!!TMmm!!'Tm!#k2c`!!DR`!0Br2!!"UI!"$$mm!!' +Tm!%X2c`!!DR`!8ir2!!"UI!"EMmm!!'Tm!)S2c`!!DR`&h)r2!!#UI!@@Mmm!!+ +Tm"F!2c`!!UR`&i)r2!!#UI!,8$mm!!+Tm!#3!`T)J!!%R!!!"*`!N!3R*N&eG'p +&H(4bB@0dEh)J-5ic-b#T)$%j16)J3QPXE#"(EfpNE@&Z!*!$(%9B9&)!N!-"580 +1)`#3"B"'8N9'!*!&J!#3!aX!+`%C!$`"5`!!!3!!C!#3#!46G'p`!*!$"d&38%` +!N!8"!"rrrr!3!!!3&m!(d"H!!p!A`!I3&q!2d"A!"e!3Rr)3N!-B%"!6Q"#3!aJ +3%"ri%*!$'"!3%jJ3N!-B%"!Iq"#3!aJ3%"1B%*!$'"!3(rJ3N!-B%"!6Q"#3!aJ +3%"ri%"#2qK!9`!G3&q!2d"I!"p!AJ!23&m!(d"!!!"!Irrr`(rrrm"rrrr!Irrr +`(rrrm"rrrr!Irrr`(rrrm"rrrr!Irrr`(rrrm"rrrr!Irrr`(rrrm"rrrr!Irrr +`(rrrm"rrrr!Irrr`(rrrm"rrrr!Irrr`(rrrm"rrrr!Irrr`(rrrm"rrrr!Irrr +`(rrrm"rrrr!Irrr`(rrrm"rrrr!!N!-9!&!!8!#E!5)!!3%!N!F"p!#3""8!N!A +3!C!!!!%!N!J"p3#3""8!2!!3!2B"m!!$!3#3"`(h!*!%'!#3"F`"L`!"!*!)!IB +!N!06!*!$$!"3!&!!Y!&b!0*993#3!``!8!"'!-3"QJ$@998!N!--!&!!8!$b!CS +!m999!*!$$!"3!&!!j!'Z!20993#3!``!8!"3!13"QJ%%998!N!--!&!!8!#d!A) +"$P99!*!$$!"3!%B!a!'Z!4*993#3!``!8!"3!13"L`$b998!N!-1!&!!8!$%!@J +"%999JJ#3"!i!8!"3!-3"Z!$`99@$!*!%$J"3!&!!a!&S!3p99B)!N!3N!!%!N!9 +'!0)!@J%B"!*25`#3"3S!4J!k!4L)!ei`,[m!N!0`!!%!N!9@!33!DJ&+"!*25`# +3"3S!4J"+!8U)8&4SDA-JDA-JEQpd)(4SC5"bCA&eCA0dC@3JFf9RE@9ZG#"QD@a +P,Jd09'KTFb"QD@aP)'Pc)(0PCfePER3J)ei`)'pQ)&ia)'&bBfKTGQ8Z!*!$cJ! +%!*!&K!$k!*J"3!3%8fYTF!#3"@B!qJ"k!8!%"&0dEh!!N!9Q!%B!HJ$Q""&5CA" +XB@0P)&4SDA-J4QPXC3)!N!@%!%B!Q!$Q""C5CA"XB@0P)%&-6#"%GA"XD@0KG'9 +c!*!&#J"'!&S"3)K@dPi`db"KE(*PB@4j)'9iDA0dFbi0$84[)(P[G5"hDA0S)(4 +[)(*PF'aKBf8JDA3JGfPdD#"dD'8JCQPXC5pQEfaNCA)JCR*[E5"dD'8JBA*MD'P +fC6m!N!1S!!)!N!9f!3i!LJ&8"!46DfP`!*!&GJ#l!)S"!33%8h4[F!#3"3S!4J" +U!95)G&4SC5"'58a&)0*H-0-JBf&ZEQpd)'*P)'9iG(*KBh4PC#i0$8%J4Np-4%9 +5)(GTG'JJG'KKG#"ZB@eP)'&XFQ9KC(NJCAKTFh4c)#KjEh8JBf&ZeA3JFQ9`E'& +MC5"K)%C26%4&8L"hDA4S)'%J4NP-45NZ!*!$6!!"!*!&GJ$k!)S"3!3#6dX!N!8 ++!%B!DJ&!L#a$B@jZEh3JFQ9KC#$5AM$6,Jd09'KPAM)JBA*MD'PfC5"TFb"NB@e +KCf9N,J#3!eS!!J#3"8B!dJ"D!4J%"&0VDA!!N!9'!(m!@J$&"!46G'p`!*!&#J" +'!$S"')JQdPi`db"TFb"XEf0VC@3JB@jN)'0KEQj[G#"LC5"YEf4TCQPPC#i!N!0 +N!!)!N!9@!4J!DJ&H"!46DfP`!*!&9J$&!'S"#`3%8h4[F!#3"3S!4J"+!9k)-&4 +SDA-JGQpXG@eP)'Pc)'CeE'`Z$3h5AM$6)'0[G@aN)'j[G#"LC5"hFQPdG'9Z,J# +3!dS!!`#3"5d!JJ""!-J%!Np,!*!&,3![!%%!G33%8A9TG!#3"3N!@!!C!-L3!!# +3"JN!#J!C!&#)#9"KFh0hEh*N1J#3"1)!#J#3"Dd"0!#r!B3%"%a[B@3!N!B%Z`" +3"-d%"NKTC'4PEJ#3"C3"0!#Q!B3%"N0KEQ0PE!#3"6%"(!"&!Bq!!*!'6J%d!'! +"K!3&4@TPBh3#!*!&C`%d!(N"K!3&4(*TGQ8#!*!&-3!-!--"'J#3"c%"'3$$!5S +!N!H'!6!!K`'0J!#3"`58!'8%p)J!N!B'!!`!&`''L#P3E'9KFf8JE'pKC#"H-(0 +PCfePER4H-9ib)'pQ)(4SC5"KFQ0SDACPb3#3"(3!!J#3"AB!k`#+!6%%"&0VDA! +!N!9f!*J!LJ$H"!46G'p`!*!&#J"'!'S"-BK!dPi`db"MEh9XC#"ZEh3JBQ8JCAK +dFQ&MG'9N)("bEh"PFQaj,Jd09'KPAM%JBA*MD'PfC5"TFb"NB@eKCf9N,J#3!c3 +!!J#3"CN"M3#Y!G-%!Np,!*!&Q3%k!+d"J!3%8A9TG!#3"3d!$3#0!G1)!Pi`!!! +",!!1!*!&NJ'U!+3"qJ3)6faN)%p`C@i!N!3%J!!l"0!!633'5'PNC'9Z!*!&G`% +V!)N"H`3'3f&ZBf9X!*!&)J"!!$B"#i!!N!BK!5X!-`&l"!9&DQ9MG!)!N!8m!5X +!6J&l"!9%FQPfC3)!N!90!$N![`%6!*!(63%5!,m")`#3"f%"*`"L!Aq!!*!&""3 +!&!4j!(5)!*!'NJ%V!+3"H`3%6h"PEJ#3"Dd"+`#r!AX%#N9iG(*KBh3J%88!N!8 +'!!B!&J$(L"T6C@aPBh3J4'9cG'PZBA4TEfiJ4QpXC'9bb3#3"5)!"J!b!$f)"eC +[E(9YC6S#!*!&1!!'!%J!0iJ(4QpXC'9b1J)!N!0Q!!)!N!9@!-J!DJ%1"!46DfP +`!*!&9J"e!'S!Z`3%8h4[F!#3"3S!4J"+!3k)-8%JCQPXC5"PFR*[FL!SAM%T)'p +MBh9bFQ9N)(GSD@aP)'&MBf9cFfPZCb$5AM$6,L!J!*!$Y!!#!*!&9J%B!'S"AJ3 +(4AKdFQ&MG!)!N!9@!--!DJ%*"!44G@Pd!*!&#J"'!%S"ASKm9'KTFb"TFb"KEL" +04P-JGQpXG@eP,L""GA4[4AKdFQ&MG'pb)(GTE'`JEQpd)'*P)'&LE'8JG'mJF(9 +d)(4SC5"QD@aPFb"TEL"QEfaNCA*c,Jd04'mJH@pe)(GTFfJJG'mJCAKdFQ&MG#" +dD'8JCQPXCA-JB@jjGf&j2`#3!f!!!J#3"9B!b!"U!3i%"&0VDA!!N!9@!(8!DJ# +l"!46G'p`!*!&#J"'!%S"$SJV35"NDA0V)'9bFQpb)'pMBh9bFQ9N)(GSD@aP)'& +MBf9cFfPZCb$5AM$6,L!!!!%!N!-ZI!!!,A`!!!*q!'a(S!J@!*!$(!*q!!a%394 +"!*!$DPT&8Nm!N!0f4&*&6!#3!i*$6d4&!!)!MP0*@N8!N!1b49K88J#3!lj#6N4 +-!*!$bN019%`!N!2@4P*&4J#3!q**3diM!*!$lN4-6dF!!`$k38a59!!+!5T%594 +-!!i"VJ!!rrmS!*!%E%F%!!$rr`J!!E!!E%D`!!$rrbJ!!F!!E%Dd!!,rrcJ!!F3 +!E%Di!!(rra`!)&!!N!ErrbJ!)S)!N!6rN!3!!#-1!'a'[!!!rrm)!#-F!'a'U!# +!rrm)!#0(!'a'T!$)rrmS!#0R!'a'S!#!rrm)!#1'!'a'R!#!rrm)!#14!'a'Q!( +drrm-!#59!'a'a!(errm-!#5Z!*!%!IIrr``!*-F!N!3"p[rr$!!Ni!#3"G,rr`` +!*2`!E%D8!0ErrbJ!*3`!N!AarrmS!#8F!*!&mrrr+!!P,!#3"!%%rrmS!#8m!*! +%!3lrrbJ!*8`!N!3"%[rr+!!PA!#3"I,rrbJ!*@`!N!3"%Irr+!!PI!#3"I$rrbJ +!*Bi!N!3"$rrr+!!PS!#3"G,rr``!*E)!E%GJ!0ErrbJ!*GS!N!AarrmS!#C1!*! +&mrrr+!!R)!#3"!%%rrmS!#I-!*!%!3lrrbJ!+"`!N!3"%[rr+!!SHJ#3"!(drrm +-!#ML!*!%!IArr``!+6!!N!AbrrmS!#S@!*!%!IIrr``!+Si!N!3"p[rr$!!UaJ# +3"!%4rrmS!#[f!*!&m2rr+!!XB!#3"!%2rrmS!#dB!*!%fk!: diff --git a/release/base/contrib/perl-archie-3.8.tar.gz b/release/base/contrib/perl-archie-3.8.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..9446b44ecdd1f6a9bc310e3558195a19a487215d GIT binary patch literal 17673 zcmV(!K;^$5iwFo!2$3rS18`+>Y%O7OV`yn*Ei*1SE_7jX0PI}(ciTpi&adgeq9fBI zahC!~9k!!H6Un#6@$n=%-i+h%1A!)q6|UeA#cXE&_Wi1=8vrROyEE^_vxoT-5d^xc ztE=nys=MIa6!AyD2EpKia>)vojuz@8S2oo&EhU z^cSB$zxyZetpDkg#xV^j{Y&Lb>OEu%(R~_t9gXh zRi<%K>b%Hig`a416_~uzrHNyD994Rn74&q9%d7yEyfBqXLwdRd!9|f(2JJjN>YaoK zS~PNSsdv45Jo0e#U^v>0cNjo-(D_FDo5J zWmQCzy23D?I?IY;>FM*iSz;ig(`?~Lg&6A5+)rmlSo@)2?H&z((?_W>)6(01oIzw+ zPNUG=@YkRDQA&^LXY-&g&9shr0Kd|)0gEb2FfB#{9K!2i3x#0 z%rJ?to10V?w(~eQK{Sm_IItYKHBIYeBD0}ko&Q-x zP_zmCj?#*iM#H?Yv|%)zn!=>;O%v_1N7_!^1CFx44`cxDK-$@)-UxUP7lA zMFi7InVBpnCkY}Tm}F!Xa5E;T#O@kb1d7fWN*?nbk6DN%-C&GF95UFfSZ#<WKm787Z;EnHL5p>v#AtCy>QEJa zT0&h4aH(6%V9O?ZOtW;EWHr2al{dOVQl(ZwMnQwTFFmFZ1(s>$QgXqu-fG&zxw7$w zHiptu>e8$!R5cC#BBZ;048&&Lkqb#>PVuGcFy9ez>r~ihMXZ^LLHAHE*gv#%qBJ7U z4$UKL7NcA-#*R2a#kmk7E-u~92g1dKrcqH=o_<)1_$>*Men>*~Q_;rp=mH|GOes*J zt4|v1MLIM0^L%M_fTa@sVp@0GAP=W-`nc2!v24qd^G#Tk1QW0>1LX3W76t>`z!uc8 zU$|xzDDx;coyOeMGVaDjYne`~5`%U3!GXG5(_ogZwIq z0-iEq-BE>-{74sYsy6&dyek;^`Ef~$+Tm*z^NF*-B9q}Oes*aF4!!ad60#Uu#%`HB z#L6_pXV_qg01o6gAa5e8L-2~O$THY(QamDyfjVGtUq4zE`+$NASevMZFKzi^O(gws z9%gmDxIH+839;}AORIAbgVx)TMWe|A#fsb<2FxOB78VOkfk;WXtI8Dh+I9_(qB7#8 zQ0kZ|ys;0|x>mg-7FzlV#SI39r7%kJfD9rs6^W>DsBt!fKCpy*DD0&XFGLnBQ-z~O z+~>|E8-}N!!o!*?pMDIw_RQY8?P-Pd8%pdj06YM>VhCGJ>%!T10Eyr(NtWh4%Y;rr zj?-e*D0YB|-K|`!IP*iN`m3{GFG!jk)65sRGckc*6FRi{$pp(0u#fA=q~WHNar{cM z4y=1dF)WM-5M;pb5_?#KU&plA{TT`6P$s&tdpFOhp4)L&2zC@ zGkkL@l})G6u?*l&z;xWtG`0cC%$rM0q8m zS8+5ce6*(F%5LaQTfc1EkZ14u^~U5BEjYDa%_-r$R`W^qhT)vJw1Dw*sKAm?$BbZa$%|$k7ZGDQ;QMW_%Zq$zPIVk`*Na400SUB30LCb*guV`y(a~Yek|E zRr2WN$(u8MdUEz?n3ZsR`(sXxDAl92Z@@pnY3iqKKXnFI%lYXt0YrytJYJ^JRg*E7 z83A|B!l7QJWONdMVEw6)_^KTJfId%p8S<iBI*D%n&E&;h!Ll~UX8a;pW z^=LF2?v6%wsON9C-~OAv?~R1q!-y8|pg;M#Hx4&8bK+*Sw>q}~9$)eYOch?K;*Lxh}9IhxS2rQ<81G_tIgG36R= z?^qqzvl^~DeKiX&j_Nu!l~>muzSI)}oE4z@%uffvBlv>d#a>xNlsc&weo+$g zJ)bWj7lSqzl;~Ty=3OCP}}JN|?V7{-6##M_};8Uy9#LBHlit9Y|26;~7~UtQ8wU zG7x(y`P7)YHi>4(aln`eVj^F-q{CNI9MTSkXr1F;vO?wP)7HClFg8QuQzVD`1vXF2 z%6T!eu|-4Sgxq8$8H%Ow7OQWNqU2E#@wQP3Bb4L41_^#X|N9?){@2BS&P+aS{f{1x z@9$m1f1~kd{P$_Cq^Zw}mXaE06{Qp@%BDSOSK7OPAs)9Hx4Kafb|403Q*Z%E7@ImG$ z#D6=Zy`6RZcW=D=+5SJpr@Q8MJ+`-PIZ{L$BzEhh`{4#{OyYL>)Fg(JFjxPXY4RI2 z?;a{!i+uwXI+aZ9#v!Mjg5k=HQY$Z?uXOk^tBbPDR_T-v0Ts}0*tF+knKBzFed8x+ z(J6T-7Y%Q!6*zZ7K-9g3nyclO6G~#=C2fGZeA(g6F+D*z^dN+*e$K84YTM%G3`Z{v@FUVMx z>EiNsx+j`z=~<|ha*(9F7^~sQT#xl4qc}nUh7xN!GFGdA-;p|Vb;Wd7()fBhZCb~x zT6V09I*jOGjJChvuxme-it<+9JoWhXd0WHW_Dx+~k(Q@;*tHAKJ}n(*RKVWc%Tilw zJH&*P8rD zNnwJgKJWkhf7$<$uTTB{-yYz9_x-Xj zF>w{*N_Oorncw#{Gd97XnIQ~23XrDP96_lUM?k63g)0FiG>*7DX@ZDXvu&oCUeG%@ zX|)ud`OP(ZPDO97J!sxs1GXLCKN#&Fj33X@}a} zP>p?uXZOPm9+EZ@#4ixN-l@5asLcWM+Jme3htobF9WD{on;por`AvI!1*&x)bTLEs z{t5uVgPwpA#w5t-s$zJ&{pX>-{mT%eLj~Xlx6aNVbIzuFzakABLI*_UA_jWEH=zumH z^WPoqc^)F}I}W#QvK)40^N(Gf9j4hOKR^%rYG>#3hBqaofR>5`?U8on-YM-IW}`c) z*a|j(WJ|=#i0a0viRj~c6ClTKBi7z7ohN*Q)tsI~$yalLQ#0ciX3Q1&P4+oWW4_Qo z-Dz9D#6r!Zin5w*n`TfN!}>^|+m9=eHU;9IH zCQfFDdc(b4!tu_dc(=u`4jhYGJd$@hT%2o1<-I|e^_f)UOC_v*d6~_S-*5I5BHC8( z4s9svZ}rG+1=3x9$JT^fJs9vu%TeDoX!i>pv)?rL%@tfDIYs*M*Ur}BhAY{0s(76r zX1hb2y^h>rvOD|xecGEmvf@9~N5ng(dRLZB)`&zN_;Ai+3PoX!s~w6!S%RxwT+Ome zT2i~IC6#>E4QO%&X|=IBLaN8H}8`Fb>>mcPjLSYpgm z>tBN`?SL6pOQ%5fq{!-u%60g~XmvNqQe?-(`=9*OGXK;}Eb}k@!ZLrH7nb>#{*sy3 zn}4cP;T=Jde#LeI$Mww4;LPN93a>dbkBRG7EQc|T^w?0G9q)kuqm~m2ox+V}#qwd9 zupHRoJ7e2{?WlH0I~)%sVmj~q8w6xV)=MB*jrVu<5q9|QA^&PR2!x`2BeKFekkJ7{a(#Jfj?V_iW!@D!dip+m5$;d%G;)q_nQ>9OSPSBDlw9G7N*I$Ieu`A-WxT63ox9jwmE&LccvI_QR2$ACQUO5j)kV(dj0_0K&uMO(_>n`pEhOxaU5N-DA|meuWDpb8E4kuF7gNBS z4MHGeqq}tC>bb_cZzfOb|F>a#65X>;;p^^>c1rWJeoimx-sSiI+3>$d#ID#&-bK{0 zZszWIMCIigMib)i=mEb9dzTIDE`<`MHrAmpzvRqehF}r@;#fwTQUvW5U;=IPMIFKI zeM_F08xgEqydQnAzj+T!?%fxR#{sMJ%Kyr~iu_vy@-il2NGNL6?7G_BMXDoM*?v{( z5Bw5d5p4A=H8L2vX0nHR#X%QAUw^0Vr9RLb4XdrJA&{N`thLU36ZF@{q;dMqxzb7x zf((7+7}`$0v!dU%D#%Uc$F+#Uw~53ZF8k-QNy0?@c9;pjQ>)>{?l|8Xmxzvlj#a?% z9VR7_K|08F|2if6fC*88;QwcP*WR8~lJx)Pe2N}I1T+vJ>NsTL1QS$tBIE_)jAOD& z;E=Eqh#Z)hQTMaIb?e*V5Z&EbpWSDZofSBzuhrF6)!o&}Ns$Y3tqF2kva&p^VE;>C*bovU}vLj`joiwvE`*D0?MdhBZ0a2zdXrmB`R zOAEZrA*K>F-2|ZqYv9p6KAM0n;=z<{Q8kHQLLMD7ic@)>~t0`Qjddo1|7SKz}rSS@lXX5J8 ze5I$$YbTTki#2W>jwzQV=Mtcj6P3tF+ihu!f>~eUz}^*E<8ayf2=3>K7Gil@xCk zH7zi(6-Zbt_nCBr3nIb%yWteYdW3)G1GznpCR38r)4nW zE`+LD$U8EVHamRBg>;<`T#-i>llf?@Q0dwQg;|w+cDH~UhvxjzN5pam(itrDqR1T& z?&Xh*2_KnFZc+w4i^Z%&p_ohW!C!hqWx&wRfH9u|Gd^>lmPji&0oy4u{kvQ)gO4B! z2xUCafNy+DFEd6LbWj{KxMe_ug9 zw?k$i+z$V33VJzPgf+op;uFerDKC@=6K2lWW)Cui<|Bh)jQ$OEr}p$sqgn4l4xB=6 zMq*cVK!X(=uQC)~GMrvbbeG}%U~;;95k}{DWwv+`4o1D=#fUxg&KRABtV_Pv9Dx-Z z;T>ME5axX98)Ob^-RC&+_2$cuS^Sax3|5-+3#A$!NmOZV17AS1_Rpu6xeRVw5}?hF zdaJjO-sYEbQx)66mw9LuX&#C(kgkXg;v30Wa!Vo-qVbLT>~uu18nPf04~N`-ty^>R z-|4jWetxt6tX+Gtf!h&UZ*%f$<~w2|EK9ONgKR2%4u;BidhJzvMFPen=)Wd{D9tC3_6q4YQ$z``!%smg7>ag`ClLw75=T3-K4M^l4qe=cUZX z2XF*y$;>%o2H~5*CH@-B z-oSw7y|VbCKD<4JCJ<0W=G{B^XRyFt568VTEDa5Bc#m`8-8`DmyUB10rcU0>-1pGX z(sm#g(p7Jy)sA$I5n@7x6%{!XbOCu-48q?-SY1%BX!$c`B5kO0o>!)rCMVT8J;%3l zzCk2FzNS)Wg93NqH6^#LA+0m39cVN%37GPnJx`DFVDj>!+}W;@u8D~z-Li;qq86xU zFbGc1W?}z#&6G4exG_}nxEPaE70Xck4l9U}s3iMHgWxXM zs;Re}_eWJJvBeMkfIB$y{EjMp=);@GkJUr8*M(1zjyA#8Q+lO~kGH^KuGGqR(yWx` zHCAiLH^6iFFR>f5Q7R`aNQ}%J?=Yt2R>}iK;|7zm!hS-3DDSz=*f6u@*>JC6{savY z{zjtYq!rldM=(lx^&Rp9Hd}a~NcZj?Evlj2RcbDAlyIN!9?@QYkxw4^A(oB`i%zWC+>H7POBnRa<>+MC@n`gD!mfher+}Oe!^^t>tDF7qB zW+%l%xL|1NMeYd=l%lt~^s-n_8PQgD80SQ66*4TW|2{xfFpEQ2fefe}eE~!AONe;HKIq}XN>K!H zBC*EI$lsSaF1>;$Tk=Gjhul$=XQq1Es(n@O(6WRD*q$+4>`1aSW9h|I!i?#c^>(Mx zYO3-v&ZTtisQbL$>^Aml-Bw#2HJ#t}eI6!ADD6j2yB^p#L>QIRqlTLai|9PJD`S%0 zZ?x-sP~Iz5>+Cfes@C3n-l%WBsCD?{wkyXe3VvV<=umI))&ON1q zv<`~iV-i=8&k6F8>;;~dDVN^#m0#mGel7C%-aUSSRHGNNSbT5$E41KQ`WoMzC=kRv zS1DC$jSdk8i_7t-kGt1;lEN!r3cv$1+eWCv*39(3hxSvk$hE5i+6r8_W^}24bb<^0 zW(x`+QW3FJ@doa2`zQe$Ie%Bt<}sqyY@V5?SK-X0r&Puab|%(i*8W7D)Gl=NIz*zM z&BDvv=3kqwO-F`uB0i9mls{_TNiEM<+x=~mKqkP_OX{X!Do)E)ye^&4svc+}OZe>- z)s>O1NmbbwpG^mNC17j2Ll1yuuX@)mfi~Fc;H<*6mT|svf~QhnJ&8?woXKqUp5Fvb zueiVSKQ0whDRiiD%hz*MwrW^7824NKG%QmO$tAv z*@OR;cFT4aKa(y=GU}1ZLhHtq458YTg@TnY)acm8ddlM*YzNF_ea04}uqE)C`UN2+ zBE0|w+e47(we5mqMVU?)4Age;(+x!z8qKFIxA>YekHupXx3~z@S3{tp&#D|ACD4xN z3IEtdGUqLKFOh~t2964zd2|}T)x~Df1IklDWp!EGp5>+cWJ)+{HhwLU&cv;{7LYYSsIaL^FRdG|XPa6l_dYg+(OwfAr7wC#J zA69g`SuZ?o9X0oFNYpvn+pBjvH>7ylYX4Ge?|-q6uqFXnebt-sMSJvPy?I!k)*1&# z?fR->WyE>&B;s0%ipw+eaj7&#gAHr+RvTuhv{@hJA8KUT7rhTfa$v%!1m`34K0>!f zihuxhij(T^z40Qn6)w#fE);i_sBs1)dlXe=@g-gx*vc==m853h%%Y3=`E&-7$ER_~ z<7iEme?iT8I*u%!UuGkLB@^w8t3^D94rd7XaRBRe4bQjZvpD7rsz`S&UVAOO-3ttxEMl zNj-bfWiyJ(!Cg@;Xi*Ypaf37q6JZ}6QdCvl!DJ?le{et!X!q`!R$hA6P6&IM9fULJE-cRcHT$_DQ#ZY zv?Dz;__W_&%n5{CCW?9o0b`e4!kUz35e zpoerG6oq{@N92eXA%hj|3Wd@jXZnq=<(rr zHRFCu?)7oz_~Y^CnD(^pHP^7qMHFAd_JLs{eb6#rEc0GEi|sNg@c}1d zyLkf*XUp@3*JJb0^Okj8gZcc*4^^Y%*%8zuU;D1o%|!N^V<#~`r+%kzHkxHLEt<_l zp7rCC*tozh&0}`+gf5BKs6B=)gvxQ!y>mwuX38xJMvJ@;bM3ti?*%Xy8-8|!|Ht;; zW5cNE^WiWiaC~%^jJD(G9{V6gcQc!MU8Nmx%ZV!~%8c%qkXN$AALGn%N@VG@?0{;v z>*M)x9^RB+d_)tr`^Em#+-hA=6!sHj4)eX$7iDx5~N(m-9CeihKq! z>+4?Oj}wp5BqPcs6X<%Q(_8B>86%UVmy3}JIXWwH;MK~6*Ftv@x1 zERMrajcP}r;Uyy&y_5mCD`+9!>&HU_B=(X#8VsqJKApLkN@bBuPC`+v`3OCUPI~n7B{q#*Y6;_7nA^JLV8U zcTvx6hA4;1Hi{Jtg$V8E+fZfv2`ppedKqa$%vEY z(ESJcifdcv=)~MbT+tFzZTJr@u)KDGnXO+EnUmYe738=gYNy%2ptjQU&vf8yjqY7) zs&lMC`|;iOmwLdYoJVGGJL%X?>rR?Z?&G3T5_()9xeY zb`QOTwtym=Z@a^=y!YV`!)_mKX&@^N2XZ3{Cf&I{c^H6hACTkS@?g=)ML%Jz=!Fq( z{*eXrv~+^^glOvkJ6=Bd3=5*&{%ZsEL|RXMadqM>-kCmJQvBSw7xg}PDofZrn1x59n)1;nQ5Q*c*%Uh;=lF$KLP)9{B7~y%MTtr z_}<6=Lcj4_{I75FS3FL;fK|mYK~_C9kX5BERVr1>535_H6_8cM?sM^FRR=0vd8Gbw zbnuGur-Pu_d9IqZ7j+FIdR!1k+;})wPTG0ZY#nwQouK$ccn}0STz0dmG)Ig=s8u}W0Emvy!Bi?{nKi=|wtZp=U$y7N0 z#17{1o-$;M|5V@i_MiG7F8({d15eKyZNV)vUn}bPPVx8?{udMv4tZqu>z%!J@fRTlqu$loKJVzGcVD4ft$XLv$&S@L55|Txq%u`2o99Zm#?EwWU zjv~4)g{70Xl<5@5AfM}qi-a=69W`}OJj@Zovr`wL?OwRzkrxt{ZWabQy19)c&UN&A zGXv?$8^KuyO$9Rbyvqu@Go~K|%pul8&)f$ySM)i$1GoI@9ItB=p#y;uVKQiV42I4y z@T3&%6&u6I5;F-RWv)PA)I%K!iN=S+m!C!)y?3ZsN7DhHzS8w$KFMI@E)MDCMin;~$y{G43UfuY)R~#dF?S%5=Q+NUR}2Nw zbRz}N!r=^M0UdrrQoi~AQal8SOlhxpt^Lpq4CO0Y88#7Z1 zCkGJk#`H-51ST^B=#tN^cfl$aIMAaj6YnzaryDT;AYZcFyI@8osNLx)UP-2qyh9CI zH38{{%^Zx3gKTgy8VtsvcV&!&q!J&V+Y8S#a%UweySQYLi~?|U;Sw`$X&5@i0_{za zgLI;-Q-BYI7Z?y8di>VH>twME?Q0uz(y@hkpm?36)P|qsXErvsOd(l|p-^4N1x%H2 ziH?sa(EKLDtg_~uoQ;u?Q`Bxm#7nesWatQ0l%*DdGa`=I2fpjm!hw*qii2uMiW}9nWPXrl2=_$>78& ziQ4vDiYMV&Zr9;gpOh13AO2WdL6vw zf{6e5r9-{A6=o7cJ=w_^1PTlE}R zVVZ-q8E{Nyt5+qah(gdDFwF(-kb<~J?j*Myp8XPgqnHfD7a-E!nq&*TWos2T_ugtL zP2Y)A>6Jngwa-rx!It9-XWr=<m^f|C#a=i%&nlo)VQU*&ZZ3$T#*@nzQ93@np8;W)8 z2I{sAR)}_)Lsk?5=8+M$0)@Csl`!#b6}-ynS#;C{P2u6!^U!E$dsI(>dyX5q=9qRe z5nwMG9q-VW#S?R}qSg(%)>CsjL`IP{2?7{SK}=7_y#DCLkq9{m ziKm1mOaVtSL7$MowHX}6wBgLZ1UB116-1hn5yk=zFzWX%sjW;PnnL173>{nNRC+oQL5odRlUM z9OJflxUWj6P*k~uI%OSff(1fJuWS2aI#~2W>JS+p>sl=F_!wnG@QV@y26eww8^MhXlKd-Cd15UcmpXUh2BYj#98qf*aE&3H|bl z+Hmh-C=Nqw_XBEX4Y=;`6oKnFl8h-WK6gD4X<&|XUvbW9&WXvEtI@y?2p1zky06tA z;cQyCq*#|^It0da$gY>}qdO$AapWdc_Y1a_TsW7iFSzjzNZ&5-topClRqdeD0+O{c zF!Usx=gN8dh45zh-K2eT^sGZay0IAJ1kjI$8zCaYB2(Xmz#091fu8w{yh_o!ZGroZ z+OuY>({1c^WY`)yOq+43)L5oxV0VYOf9weYjI?cpPdcc@B#QT1R`$yU(56{&Webv> zI@8*C1R>kuZ{h>mHx87S6aJRcJ)T0euGuYI}pl6ij6)CY>C<# zpGr+=!?Jr+QmefBO;S@`f*y#~YlfNco&3T_1B$ zWIbxP!6p|2%k#O>gQfuxD&VXYU*hTuS!;Iv*7yc!2S+T@}; zBNQ%(Dn)~gw>MB_)y88WP5oltI}3x{Y42~n$uS0Izv!QVg2U0KOc>i#Jr6@noVz-w zFR^sca*FH{?1zha1k)gQi9ZMN;z-_tE*VXJ=j(8yZ>8C1v*`jsMuQjqXPCv3e6Mx* zs@-_@yc_5+Fr?Q&N8nPHFMDoKYtJyId=I0sx`ATcZFSsKBLhc=i=m6-&_^#^Oi`I# zOdb72%qEEu6G)60i3r2tV3s0i1VQadr*&}DtslHn&6fJ5)^69D-B-onKkod;J^wX< zS-x%j?+05YH~!OoJpU~}xQ+k%P5#J-LvUKvoj1{S^oH5s&ACR(r2Ar7^lb26tB>XF z&*A`UlMs4gr`xXAUfhs?;0@Ks%BuJ6+Ar$k*2=g0koW$|%Ip7kSlj!#-c=tTB&K<@ zUk8gxeJp*zF!RYtYI}S2!|qF*+Ck%GU6MUo z(Xdvt3%aE%$;zeVWKY_y+Wuax)8%B970IAw2d&oO6CegByuTvhL8JMsEyjdwEe_rwU)QPCL-uQ zGfFFSGUu!y*fU4~%u!iEuNSpnSL8jk{7lfe{9{!@hgI|*qnVCW9EIibuxN=M(5lhG`sMDQ(90l{;&gpykH zqVo)m1JYnCULV%$WPwyxy!XtW`zsPbBO0xj2lb{Afu946<8yod`!AjUy6ZnDX6HAI z|649q;AL$6_u%2J|L-@8{~OIJo0IU$g#A@t{97yBEnrIcz`#u|!t#8o!@Joy zCUOIEWHC@gHZdRv-go%w$Q!FdCg^Z4wtjIwE$J#Wc}4`89*?L{u@NauECnUO6LQT? zz5TM@rc`AOFz=Qx{#!O7SL3C^;uuh0QrU>XYGov0d-I5q-ph~FJp)pq$1!h5ZkOC> zEyi5-7=v{rr6lxALy2tXA;vl^{{Ve_@X!Uhp)BlOBkk5XvOFkxLDF=J?#<3PKmfUw zQVHfx6TDNVnQk~4zjWjk-A~Ap$6DZ14`yPP4!Uob1p0)Chl<%56k?$YwI}w*y1)w7 zz3m<)=a5p8-WiwONR!dzdzg*)9rz4Wy)K^+{(b3b-T=&c>><=+28C5$;6kwH2~3&F zshl{k_!gc}oJ(qQv7XP;HU@je$0pGwE0wUlHj9hS2$K|SZVwIY! zOx{NtRbKk*FbKx&Tv>=;O2w1{q*`6Ksl~Y{=dm%}&O)9mJ3#SFZf_uBgKWxO9&96C zcQuB}XICxV>ZMz~^q-`cxOym5PPBA;s0^A7^m{|4N0S1Q8N)L4W|zJ6w^v@3Z=thO~+P*VkNOP!o_4 zIef0ieP>6$Xr>_TCN;TX;GNn_HV8b=LfzDRI<%K2o!bklwg4+zp!i*stB`yJ$8sJg z7M2%kNeb3vl`lngLqSk=9#W)>>22Fs*kK^f^eTmq!(ykfZs%H;PB2 zM!h#-6M=Pzez$t|PhS7I`+t-03XG-c<@`_H0Q|!J|E+SR9N+)@zH;mT@oo11lsoFG zP@q`8`pzXnS>VQ6e9sSK?(Xe%RA=6sFCuzfRlB*h{H|AAs$BdYlGX^e+U_1!)nBIP zy@`4`n_hsbz)e88zS)}S6x~IrI^m@%msR;e6(I;Jxbs(n#0Ti%{DM53ALGl ztw~jN78BL#&lPZ2`F?flL3Qh)F7D`(9Ip1J3z$(<_tt&vpY577sr9aRZ6f&UO+dom zl&b|qI_|t0E+&1xNx|OV@>BH&7_b5xDM95hkGRz5$SX@+I>r8-Ox5XPG8iL3X)#zs zYR=9UT%nX;%SH!yOai*ZUhx(WW^<92eCP3UDC0@9TO?Azg8gC| zvUpFQ3XB7{$2j!PR4%=f<}&a|0xul&_@cOJIy_ES)AZW7XPdX|f!LdH5vF{ysZ1qR zm7b)joDr8J7k9*!8kY`3dcmatgN;>gIQo#+2`F#GdD%%WDr)MDhR!7<84x)&A+lmb zTml4uhm$F+P{x?JATbu3U%+~^2IB2k(`@{^hg)dO!OnrOiJ&7 zc(=D^qaHK}#uLZ}?0ByuXETe!EO2FGNE(qX18Bi28>5V5K1|i-hAwm%c!Q8}4 z6XZxQ%-_NJ1uf|JIIIqmfv#$!Gd{3Ke>%g{QoeA{({h?Hg}JagG7gYgd(K0pRhX^0 zQ86r1$&p7aJ%e>A`3)44`pzYb9hwUxAd-Lr%<%dk$j5LXq7SAo_N_3#nx;~P#~e*w z5Y)jy!sp}(o{EtGAu>3SdZFVcf809+yh zt@M_N%BK0aVn7VE7!jb>jQy=+_x<(wmwOnuPfG6+MBIdqV$Z@4m&;`ny#Dbo2&#W< zLG|6r)34KrA!{Fj3OGrdDqe!t8eVI0FhN+h>Cox7gbyR&3yyY3n8SnwcYJj(_j;## z@_ICZRp3efrwj%`bb4tQq}<@nOni=fsM#Db{?eIynR^-%TKb>KVt-vzS>;fK$;@904FCfC z64o*dHiX*Us2wo&aKD+twUa;(KaA!@524VdGgHt~dsPRBgJ=wq^DP4s{nT@?!(?ib z1Q63r+hi${M;~aP zZ>h`N5`mCSa69y_(%Vp1VV3TOUrY&jU^0r%wXHcaJpY|G;AD%}h8O1PQzpJ7W9=Ft zZN{ViNX*{^QsD%*t0S@I2+{z{MkGgK23A3OV^(i2Q#6`l9s%zJ5c~ck$!{jC=p|1) zVZY5JHuKk!Qa{Foln$Z#dz)W3OeS@Oj(} z?F?By77gK_9JQE~pjZo_JB_Fn%{QfMq_|zrDwP$Skl|0$8Rt2~fd7FNB&AGN}7Z%#H1@n40P zMcdndLuZKdxluas0Pct28I}1xB4&Ud%g)56EU@CdLq=KQr`M&z4<{gVlPB#s^g>SLH%`EV(_LG3MjPByD+|A%?@%qPCu(V@viQd0Xew%c+ksc{=Y| z!O12MIb`47|NpPL|DS;WJP0qt$>7`F|1EDlc<7w}JfQQRhn3s&pKtM(nM5W4QMz3D zp;#`JisfQuE4_`n5|yEK*Vfw``f534Oc_DA#&|6Ts!(j_$Snb~A$&n_vwJ!Fi_dZ6 zmmnD}QtG+&y9S%+bk>_)f2k~~5|j5gM6X^=XLufQ%J_5`O-=ThVR~fr+}Tmt;%0OW zHuHsXh^%V~P6f3t}c~q>F?-w5yDKN)G zH8H>lB7M{sv*~5{lWCebAY?%W_Rqtj3kYE-C{2p-me`8FDGYwk3hUxjl1f`<$Y zlb5dsg+j1is$fv#=P1Ys?v+hLbueYzv8qD&S3QB($*f(c$XA32s|XQRtI#bn1#Aj!%h#=Rk zNo)`sdYIj2vrT=!q<%k}AsBw}B&6d=4F>5@ANO1m5TqkxFwj9Qj9WEe%ORdpyIzbW zthqsdMo7jbm|6p{45KP4ABsrOaeND|$16tEv{5)7785&3(JQidsjGLhfkER6zP`gor5YloBpow^7a6&0E9Xpj#O`Rk)&z|$Y^zp_1 z^F3ppKYj81#om(_`%iG~<(uHkWTgNtAcTaA~v-?lY z!KyZUzx&5xm)|z%<%`7jh`FM12`2NTwWyaT*Nx4d}SZ(J?o#o{mpH@}f z(x+8jO$)nhVn?X9N!C$1|9JN1^yvMCnOYpk1`j6XUAw@CI2wO%PG;t=TAQpYhpky8 z*Vg3AY$nxmRoK=VUN=uoX4@n$M4I)wEa~J#SN6aZYTAE^+e+** zFFW3;Q;2b(*t|&^S!BeVY8KVH$cQA-=qQ@$9k_^9qOITJCKK=a^YD$8Ng<$C4ktgw z3tlcZpB8x|E92jFgWXIka1<0Le7PZoAS$>*kDri;JeMRzP%d$1lp zKzE$DJ==pl&#Ttl)D?c*CP{C<*%^tHcOYim`k`v=E2ksam>EDQM0G%tUttHe*(SQ! zI4Mw?8nAnwraR0mBBA_hY|9JV@;b+YOIx<)I;rynI&3BrldPc6D|~M)RKe-2$c@N& zX2#|Wbn2VDA;JXRS-P}GHgVQBI%#;Y&yCZHPWP&nc!47ShU1RM zs~ViX9mqmtbJ+16A52e_iz9););4XcI)}LEEVd@SyzmAz=?sY6&&+FOxAt9bi>xuE z0Jg5Hx*7GogR^On*pJQ8txeZ0YZp|G4fejKz4w}OP{1vfV8%5#Jc^9|{ZT{@$O^OtfzstbfO`_$TMuH+m#-F$35PE&>1__;aR5+ZZDZ#Svedwl4KGZ zlJg>yA)!l(@UsnUZ%x5bJhf79%puzfXnLF zG+x9BZwTiKqFcY>qsR$i{oa zg~dJM6B{$Yx7E0{x9y+z_Wu$$ivbw?JZ3)e?W-jHM%34hx_ja`(Q?kX1=DUdLXtg@ z8mgNh7Uk`TJj8XL(WdCwpi0lraKjYD;lLW$4EQg$Ftso&b+{aq*KmB-gad`64{9AgHsju^9o#5p5I&`1JH~+u2f!;{jEfRgt8YBx0NOlDs?f0vt|7f&8ZE zvE`1L)zy-nc9EyVPY%MhSwc9Z6})MLHVzUMtp$q`yCb3D3j4$0^p_Cgi`XI3pH?v+ zYV_Y2YR=N96?oY^AmMl_K8mz{^ssUAaW@brcJ$%w)6px?4n3f1ZNs;=Nlk%w@TIDY zY%qee&r|4Kr9aQA0!|X!f93Z-E)CxtZS}n6#@9x_s{@lSDVSTzXF%tJ_`d_L_-#n& zl74_j+*I{9u?y$4=+NHtWlbwkO3_MMt?qii5)Jo#Z zWs!-uCC3iLR}Tles_rB_>u;lXpZe)6&loHI9FN7V z9n26H*+Y)lr#3m@!<`w>QUeZ;gNIff=t@K)TrBS`vBNslGD4wLz~xgTpkiFEtMz>0 zgyWu3$LnC9PZ{%a1LT=)09X%lm;*Z|fxygs4Ff_jsTz-2X>}Y8NVP^RWV8Ds9-2*4 zaZis`kWvZkPPk@5o(r3&Xbp~tdH_yQeD5J=Y_YKgP*6euvnuarA_^Qc%`^H>OL!DB z=_yl^{dJ8kg<7AaX~p@fI@6AA*GaLq%rL+5_C|L1n;xg4=uK=s1_|7~bW&3QNjLEv zpJd?357=KjL4rKoeH;89=j8yJ&_aKKdB9WhX$T*+W=(ZIU$jQ08SIj^2O35G4jOjP z^IdWl>u+{Ol1g*$(XC)kGlGmK6FPGS$S_~mZMlqda zSR|QEAwc;_t_ zf!NQyPL@U}#;MU1LPg{dlp;|51{A&aQj|E+Wp5vs9kmOp_!G=~qaK9A8r{`5>I2NhV#k z$VezpnsprTha~nw++AwAk)YFx53nDipTrv=08XdrSvy1&D7pl~^$NP{13X(FR|&AA znjF+-Nr&JMWhqQ@6u9MvY%wW_#43Sw0siX7D;0+;1^#eaWOU9jx($m zBECPMYow^OdmC1(d|^Qf6ivIH%@B|Y5|tY56%k49*Skc3co56lu0rXhr3s^R611ck z$C!K`gEycqMaHtaPs4iPkOD*^hyo7~RY}hY<_ASfEwNO-T15&+L1rUv_7NkIJUHAZ zqpL{4gh;qk#`;Z@DyC!@XE{fx1+3_h-fB< zM{hpAJw82nd%-H&RqW_A70k32e{cI-%)9yk0PQ0;b7E*dLHz;xg?_D;e)>u`<)Tx`9XcZd}nScF5km%nDU%$#BjjuY}jClinpfpnT^n<)7gh8x(~f zUnt{*n5$bgbm$9Tm4%Kg>`_w}1Q8ek`|E^otHaw8Dw&|>#F906?_=2F5Fp9!roY(TN!N;%w-$zhnJ#To%rCg2xQs-4fy+nwJ2A1X%b5lHM1G3_cbkVefyNhLng zAEz3EN%Tytq|kvhpWTtR(H#sv81=Hjkw_hZuAWQ%Bu2nEGft*K*LyH(CneLo$lJT1 z7xh2pA076B2e8(@S&g*Hb*oz%UqO^~6}!$wtl zLCIL(rExjVK@ zCxI%Cer?tMOa5*j>i<)#@0aWUKi$Jc^Ze&mlS?4+VWD)F#gjEs%v@yM6$sM(NJ>6)CMfS#(3 zDB!ya-AbDG`Mj)ZR~g{Ked;?jOW!#BXg7_*L8Z~aWyn2>ZBVe3+QE5?Td0r!G(bh zUJ7#4DG7~+j%^;|P8oDsBb zs@`7c5pv|NIT$Rru?`&^31H-&WfkQvsT)U;Q7f%@wVD9J{<2Nd2q>kNP7wosLK&IA zJd|Rt#^a_=v7gt6Cm)9+DV9WBN@*T)>8dl${dJ=-v%3mwD8u`mL{-#bqXGv1gW-@V z#ftv0Nbfsvuynn;{MjdyAz-!WN5_xZ~ z!Z|Xo@CDQoasH9hv@0Pp?8cM0%1n>5eAqZN%xiN}m*vgQ%XJiO929V$YL~5j=(rko z7?rk=9*#AZ=KxJQi|YLjUGlD-Z(;q8Xpc07v&o@Af5rgh5*K$=r# zr_019DASY5O23h6G+pPuYd~#097PAE=v&A$<(Ew3&DI5yxxD1ksJU`6eQ0EKiG;Ua zWzvz^2%&t`?upoNeh)E})mS2@TPu>K8=oNeqUa`w6K`s%$tDF{@5|iEBR}MkKxL9} zzS42RiEx{DLa?FRsR(Ih>qW9^xY`-+CO{noQciJ>+8bEJR^p!Q?*=-X0D8j3NEj5gKV^)!Rt>C|F4wlE)FR z;9SPAoRqEh3O32T(@Pw#%&MDaCuaPsL&RG1Sn5WoaI72YHsHD&P8Ue0=4Jjj*k#lY zkDQ-0GWx~#(y`EoMHU(N3r}Vbx5w7yx`7V(4a|Ha&Lu~#gBINj>aIukt*maO5ZF2O zdtQ&xZc;=Yu-6i!2l3N8HxMN`mPYCi1X57|^G`bRm+ry*di`V1BujgkMCzoF@&OU#f9QCG$C8z1T z=78yvSh?z$FT=CG2ZxEeM>(F=51?}ROr({#Rh%kW5iOFwA2`qwoVbC7Jxz z)_K?E;iyr0KqKLDgTBW;c`&L*Wy`B{HSAhA@&AH3RB_0p*A@9ei2Ljj#x&pz=>>Sx zbG&LcBcF*O@WH(t&Z^3c52pxgF~BYzj+;jsF|o7{>3GmPD#3`7z$JL-C!Ks8(d^RJ z)~O5Hy&nGNZVKK_;di6XAZ)QZH{gc0A54tk)ro~E#EWl{mcHGXHX_>sexS!YRV_pY z(s4nNm6)epN_LJwUU0J27)2+3h({A0NU5gMKu?m+rB>KelrnCW?po+NN_$J8hYLC~ zqHR8LokNqb2T$3hs${~QQ*p+`%5u;8C)$RCn>js{&m1Ad(*SMn`@w4*R7V-pIE6rfF3pp15$0sn`eO;Z`;{TmJRULeLh#*u7>bN?5`ZbakrN@yL3O&Osz}iXdLTq#ooFbhGaBZ zNg=0OCkjeVg47=_5t*MW5k=eiY-0?S8}KxUz=(DOm2JCBahAK#)B_JXR<`46iZb4r zH?1B-LR?sbq8B~#a_HZO;ZZ0*yw$zp5Uw&sLh0F@3huvh?;{OWDx6N}d^^oj`;l{3 zB0_%PM#)0rI&qDsZftLOH&`M1HUIm6kpFG;e_R9Z7k&Tp<=zW<|MU6FC(mCz!=)#C z`%ixD|NIhvJgXJ)|AY1`>8hJ>cx5j4_RJe?pYvqaj7BP800;8ELrCMFe;;&Y_V&$% zUC|4md$B(Lqq-8P2c?xb z%ms1{G?g%e9!RF|%xi)jaz$tFUekO6)n@mchPhOMr10^%zxm?x@$tze?tl2kXJ#8J zb=II^cNJ1X@8S)$VE-9=lLh6Bj6{?PD^fF*hVfnI?t)imVIkF%LO9Dt|9 z*m856J$P}>cQX8oWz08v@0JpTeCe#oxGE5zKc%{xVq8eiIosaIq%7^?ynlnpSvYfM z6nH@uq#R6NsOerhHPpA0m*i-q5;}ZzVsnxxLccge9-+rw3`Kkce(m z22odxsq|&^F|$Y^=8p5m;fP`0D05`CkaxqM+=7RcpM~{8*1Fn$B`e$B(Q5Zs;?lOv zxB~*F!B2C0yRH7j{8_VcYN_!w?e6Exzx+S~fTTv@)NRMB-iYNRc!}TWD-+xA4t_lP z`tj)N*o{@*O>Sw`q1{sTwf{xl57k|3=dVcWn;QiNkQAdyk(S7{~d+*wq zMsh3+pRe#Mda*YG2M{317kr6iNw$^fc7(Lnp51+v0Y+lhz>pcRtWEa)?QdPWd%EYw zAbXvh=drReFjG~1tFErDuBv|7*?PRRn!vl*u~Fy4gQv6+2ZY#cn}mvq!7TUiDc9!CFTILZyjZ{f;-c>ubivMXge#&x*5o)sl&b>y)d zO0@*4P6RpQ$57jQRcHut2#$am?osBCtHXoW*!?m#C)SBN<-}A;Clz1sq`0oK@1y68 zeVLs>uYR1P!O;$>qS^xvtBXV50j>6Z0MeKaj%&^MxQ!g8`hYB2&=IXZ-HCjHu}0cO zSsv~h^;2seLZe90B!=!sZ(#4S4X0S;3=2{QgZcNoz|@FUc93XkSDFk|1~ez5d^L0& z@F!=QlcMTc0f;!1a>bDx7pn4wbWoQosPrmI8IfBjRBOvHk>vpRLe|)>u40$i(>J^C zPELCJXIFdsZ)nD1RJMF(yd;ei`zsaq;25WLY#ABWc-U>W5Mtq$~5cKOV-f9 zu{tIO3QrU$ezm$N1`1CUD1NniC|-g6Q(Xc0nlj;)4Or=B2_Jh9X3{Y_mdHc-hD&0p zGu2B8ijPd;F}sf>w1b@P2(u3TJDz#U)??2-U1ijGrLG$-qf;Z}0IUdxzDsIaO6p(sCC~-b6Z0KTlM+smG)$TQ9ZQ9Gz&}&LQ2nt!OrzMUqOiuCT@6xUp3axWoRdBjy2F)Fro~eN;f_D_Hj%KFnyCa zd;4I#hv(_tn>HXZ%)ykK$Hc=QEFy?IR+%-T4Mt={QCq$(Y{lY_lkjqgiNt$fx zZp@siJH`fk?rnqkdB7VnDw}pMHN*q0YXOfY3TDz!9WrScH2J-z3W(POxd^~O_%n>U zg#yMd^*333f(f;EI(M)MpU@Q?s|=bHlmlab^7^ml*!z0yePitXXzcxH?0r4bM-jBxKx5wU(#@>&{-Z#eHr?L0d*!$Ml zpTOA5+NiPjjj{Lj*!$Ml`*Q4kYwUe|u8-nf+mv1OP6WyXp%~gj!j42|(aCf>2+myJ}@T);~Dj z?~%NfNd_Bxm(jO&8-SxtSGQZ}7Jz(raaq&W9I!T-ZS~rbhH^1kxrz z__7{RvXz5goH&$z>D=y)JW8PG%kA!=E$GeI zfxX_EVG09YFn-n6;N>np+pVqXrJOT3ev+O$=Va@vO5p;m%x3VN*-ZNFgw;#+u7{_k z&iI55)6W)Tx2h&!y$;`~;93Sp#o4-BE>#D^#DG7iN%^<^TD+N&uADxWF(q4*w{-s; z>XA~eQPnn~K%LAZBuZbl%P#G>9ZpF$M%GzphM55P@YS;LN@}LLxoakN1DSzl)|zQS ze`P|a)Q1A6G1VHEEkm#+oX*46#*)-JgK?Fm=DP7R9En#ZY&pX0Ag1-sMC~Bz3-h%> zs1vX7dvcZ}eeN+$`i85VvKR4BtS%EhcMXG}7X(QEh`pS|~4)Hs# z^-$;oJk$3vEC6=Zl#jW`Kvv)5Lg-sj67VN*VRn^Wxy%3CLO3YyvfYLlu~7t zCl=jD%}h<~dUK7YSC~KJyM_~ffKuRB$n9n~N9vk+;13rvmI$PweAT3+i%@$M*+Umk z(fS+(IYhe$cTPC+W|7HtK$BI`ZbIF9r%3|pq{&!bN~IlRDN-T(_L5{SFQw9(-c2Y9L+xoxC5i!%CYzhF z-*?7x4`XVA852FnW#^2@ADR#HaG=WCa1no@tqD+w+{~F~aFtQQf*qCni|~%S>tKK*#hB1z zw-n7uyE8n+RUQ>_uV$T>v}%l2B0F-eY@}>M29nNz9K2x#m1y@sg`tD>+^B4wKdu_3 zDn~BSv)J@R#2JC7$;i|SLR8UEC_M`nQTky#1&>idqkJ2BXTnYkfIlH5L zbKFPr2Ni0M6WV%!bGQH|M8O2b&a#9t{M7u$+@Yr^;o_Xexk? z%7%F`-sh3EF#g6=P)nsqWw!X%)`w|9GBsxFwWS{`ivG+Sgc&qDnr1|&Y`rbBM}d;7 zNK%aey#WAiYee22QulHyElU62_{YK-d)FS6tRU;=p+bZ|DjOzD5YfFoT+#qf3BbUm zl)iK_%RZ5x3Z>D|<29HquDTuKV<_C(yiz*+%fK(m((;E;N zxF*y|lBgA+R#xWTQt3=5H1he3T=Zczq_m9;q+m1T+AzU6utH;G0H1Q#aSw=@gyw0D z$Xa?eCs@^^r_$@Rj#-W9o{tdiA9ZqX0`3_0CGw~o49Nv8(V@~SrG#^R3IuyI%r6qG zh3uX()8nsPE~Ssd$el=Bpe-E-aOpLYZBn{N7twSoPYk7}Rk0kMJY@8wTEGt0Pa+=F zSfeuAw9}?6E)jcIz5R0zE-xD=AL(W3lY1O8rO8C6c?JP2Hglr!T+{#nE00;yOXatM z0)&lqS|TAfAN#~d%=B+T<%8XsEbp5rV*w|rB9HpJGJBV)E<1APP9we$%e-^Z;-t@< z64j6gA>0iMOq!vRXQ+20%r>HmBQ4mRA39&&oRV%z_rbC{P@L6UAYa_TA6hzMvLxJzYYo_d(R zLvW|W#d?$QX|S007uU3VezzZ;dwhg5Bpce4GDRfr5DL?!_Gd1U<}k5tss z68@=ZT2o~i*%gh%iag2@Tob<1&)t*LAI}cnzB?~V{}%lJ(G5(x_=8dG!MP2>o=>UI zM#*O;a@1(`hf0`M@<%3b|fhynFKdfudpPW~t>{mE4Suam> z5c8^Xo=Vm3F!RmPvKP7o&6ms)Wy?StDb;4V7$^E8H3C>qs%v|15)0dW}}^F zmvx>(Qucsx{vWgd{t@9{`S#!T=Hm^z|8KLsx$(H&>O7|We_P+;zrM=fgUA=l+U&|} zu<&>X7bHw2{$2TjczC%B(jTwRTTHqP)Ev}5igxqymUz})Z#`M>Y>D=h?pCYYejlCeu?adm_?qqF>0Gixm_`?lpOX+InmB$pdE8eIqO;WV}A=4em6=+@=rYVu3$^TPiH2#e(@2s1V4Dy99)+l#PjmV;M<-zcT-76Dbo$=BxNyJ zY7SD>y$1X@3(6ZNUBKCike$nA*b-)#FvwC^6*;F3o76t#AsxRBM0vQ&LwY2$n0laX ziSTaH_f;B`=%%Fy>L#1lCnx8<^Rt~(nQMTvhPc|PoaalG5;=_T_%&aE_&|oP@x?&0 z#Q{2|dlO75{>7Opw0hqjq4=c%%6Xqs0dUTrGRINO@>rz77ka26i<|??viz=yF{uJ2 z7VSt;vC)DRq1$=fh1DTq&@bE_$%bThiE7pYw#~6dDJsc^5im9DNv8?ZPdw|aw>H+> zPeps93;%6AvD=0hPH=iG_TLAJy~XsTCpHngoS5EFz@gXYn*q5P?7enpz0(rycDMbk zyZPjg>%CQ&3G*7_Z7KhL4id&+@7@04p?E1UHQ#zTvR?{ueu4+&DpmLH#o5{ZvGns5 z%{Z{w!N*P@2IGIgtGG~j83*4*_xZsfL4|xKLxVa7RGsbj@Hwtb;k3Tqdh8HH1@NA<<-A3-|tIxq#Lj8Arcx7?Z<})$LILi zo2vBg_~h{5HTDEXC+wCj*pt(93ITLJ{g$AQp;vU7p8W>Bc_=dXgBwRV`T<{jOmsJP z(O_nc+S$%Ahbjcl6gsc0o?x@psKx1=9U=TgG_I{T=VvExFsx%12L842>Zo_LvwLb&042# zkL+&7htT^vD0CuPPqwzAcNYhH#=A}Ho#Zct2fK>s9rT|0Zqs~sv~!&KZg1y2?H#`Q z+tL0}6uc@vOxy{=bg)jcTcF{8-QNYyIKk;aIWJ)n0e6&@bTNjNqG;eJLe~_9Sd8pR zIT9W)X%0?~>G8~)xe5bjt3i_}(hu}R;-NR6m{q7rQJ{aT!XmdOqG*($PzJv*w2N6p>8ox;B$Kp!<<@B9t^?K>afUsUP>3YiQ={gHU||G_gyG+o#( zg;$RRPJWgIw0#)+H?$i$S$W=GcIS^%5aSi5y^c=J z_MA8Q#)ZQJpYB4Wy)Nz4X|&8)i@yFna$8*2PxY*_gzP#m==x9R_b@;()rYC<>?TC@ zx=eDyV6QI@4)-E3lAnsV)jKZaVbz4K;ho?yIH_AU%{m(BDVQvb_l}HaIKzo0(o{E? zqQ;`2r=*mY3=!Q{ZYXOhlt`m93Vd^Nd>*HD?V}5u2Dv;qK1jfP!UHC=;+Lvb28`Xb z^Y;me`K<{7%Qz+0vPMtdEQ2pOU8n@Xxl7O9?$zb+QVm@o&O0 z7pm7e2xd9f(s+E>i#L2ajym{s|8nQ_APxafB?R3v4H{q^!p!DUHik3Oljep_21KGY z)>Mq_C6&cH?iS*TIj?3?V~_4zHgP2V}dU z7Z`8h&AWsBvuJmRlaho04EhIv#Y>^ev6-QkE}Yo0X|Z>*dvShnXh979!8#sxMN|$C zV2fx|kzSoZWlb@vp7EAgm$Ib}nE6k^nqP(7VpUsLQ1>cpAbIc1IV9_Y+Ow{N&{DZwKcI z2rVyn-XH9}-A@8Iw+iCqa4)SA{&=XR!rsyDX<9vp6WAilg=+83`AP5ije?O}S6ip4 z7*4O3!AZtXg+JY00zXrVt)AwY@X5(9-t>&dX#}*7Tr=;{GixGfD04D^Qn!EHLyg|% z;<-!53D!DilxU)Hv9RLJ7HSAj-vL|Yf}{M-GWJEv+@@(#d?MPL-L0qH&BvxbN89kj zXw&S3A$m*CFf}GQtDhc35`X3mP#)rZQ8gm-NUSeZ%9BgPx5V1%CBMT>o<*Z(3wsS_ z!5~SHQ|7#dsiHtFHKY#{rWra-*t(qn%-Q}Ax&%f6ia&BCCyUtJ)76JJ<)|n*X)Jq) zeg@z)d!oJBCC<}~y3KXf&dr)Z=@Al?KewB@^FD)|bF1m?ytfIWKzgqUf&{QA9>m)t za@3=G+Z#0ymyc(K)N8I-WgG7xB-;xFL&eo7JW_~7{T!hB)$ zJqqEh&RR5`n7EeNNU(zz1`#O&(}>yqnOZ6-|GpMgS%w zUcT<_Wz?%54lPmp__Pi;f&We$A1ZGkiV(M1+G%ufTH zfRXvLz~?E%civ|~!;G-N8U7#(+>2L*Mj!*42MiEw$);^ZdaBms50WVAhn(Q*C&y>U z>9iFg3ieLC?&QDTuwQ@SEju5D>-$=w%vd@Naox!9Emb~tqK?vi10AA}IHxgeFua6y zHlp+BPOIDQblZ>rzyqtf6VO$~kz)@Z3EwlhE#lrgscl|DTO@q1M7B{9+b@#9HZOT? zfyA|6CTZc?_DkiX&B{e<=b=r>L7U7!8_PZWCG*azoU=exB`;`;cGR6k za?5_Xys}>?r|g%=C;Me`$$rT^vR^QV>>raq_6y~XP01Vk`8i|%_=(-q`vr2t7D)73{u0?;^D?`ZKQk|DW=_`f=O;-063J1&P-4{kB}FZNety%>&u#j7 zc}>4ePSbnjGyNi|5Wid=({H&+|F6tVTK-}QNxw)k(l3>W^xjEG|Ik^tYVy(l)k#Im zUoMmAw=AOHvWR}mBKj?h=(jAQOR|XG$Mn2Mh>L-h1zRfC5xA9)ZNt2|})1__D{(ce-N|(9c z!-Mvk_LC96JZC)zqn!Ty={e2@%FtTH2aQjZS5rCK)Y2%_o`bBxagvb)FjxcWLZqC( zYeHM6QV8feqZzdu%WaujcQ%=RPTeJioVqKY@tRqmG#cybz2y>C=DlUNi`3aYMRK@u z`GvAVQF$QtPEcnRd;5p`=ld13Z`%w(512vA=$%It@ldNK54W^$vgT7h@d5;dZ)YPY z$JPj;OlDH9HO;`PoX8eunR!lA2gqa=`a$U2Mt!B|#zf=N9Eh*g;af76H zbwA0hx#Hm?)K^x{l3OtOZ>_v)g51J{3nk7iUd;#PFOfm_^RnmaI%H(c{g23)`=Go+ zrra-;B^L|L%#Qp2OlI7ITF#d~e;#m-(dcv? zqq5F-itidy-d;yG3{$=~SiZ76)5$9O&Ig+2KSa-BFO^JoKY4S}(xO&{a$o?*`N=8B ziqfhFYcttTNQYGu=YhX&1>gH=s zUwTAS93{M|P}*>8K=m343nQJYtUdfE>p;J+A=;y#ybr%Ts_|OrK7TIU&>2wo(~&HK zKx>(HO+1I^L)vGN%zo$zK!6>Ws6;nOSMZ0hM`0a6L84S7FR*xrPr0DUh4JNDv_`I} zqwE^t4E?DaQ_H?ugHVDC6yf0)ZW^}3Y@VKPe`v#~l>3bnO95<)lm}}p=*>o`>Gp@V z0SdXfUlVY4V*}1vi@@5Nwbz32i#LHQ4r>H*R3v}%>rWM^z>^9B{)~(LUmofIYM7S< zR?C;P(8&MLSpE|Jum5}g+(t}d*(er#4A_8-z)Tngz;EwY)s^a5q>?!`)PpB`n${B4 z*(Pa0n#Z;G>7~#_^&=!3qo+CV;Xk3U--lihjrqmt=^3mMmoFbaR3yal{(C4Io^W|c z0tw)T=!&`NB~AbUyE3@tWs-NEYhDiN3Xq7Sqb*d7a&6sQd(9<12Q+<^#}z#fX-V1X z>pt&gVtCI*mO7xix0cilV%=BE5E7AUTV_7`f4v|7fG+*ktABh4f9vC~(cLm!_Yc>4 zxExd;R@Qois-vmveA!)za$Ol!D1!&21WZgj|Tabj8tQ`_UN=gJpf`-AtWvoW{q=I(hSq&ka=huh5IEndmtD&+$S% zn2#0-mON>)gn}Vjq8TBgn-Fr)&B-6#@bLwfB9qp=-y3`2Y)Kd!L4DQ37Z~l?7f?KA_g6e-OBE00dvx!q9}&nZK{++u zSG6$+WU4lq1CWPYZ~&sqs0?BSxG!A~nO)~qYqj~CMPf}{dl4$p~ z*tE=_Oa|7yCsP&;OWtdryU!N@2C2`e^SuQ?X7PG@O6R%HZ>c79?{=nBu&0EY@apD@ zXmVzkFLw?_rtGKu)=b<9-JT$5DyxhAgle6>Sx>0D|1=qOZ;X(4yy;u`k|V>tZPiu} zZpI)Q#AXs9YcP!w%dEl*W0pn38a3*zPpR}&kD7!M{VH!s(q5%zPaC)Y2z{-cNzJK5t1aqTOEl7B3&2H+qG3cm0AJyJfq%d`i)t&hQ1#;AuS@(?yG(mKG&_U)0J| zBBw$t%#3U*wzyGZAYDw@WYqjuF7xUA6eu<7UhInlkb!nER1z#WkCT6U>}- ze4VxFjp9MN1@>lgHvLmdttQ@rjVmGj+lvlvO|p^Pz1RY2A2>%nwB&S@;Y zhi!Yh1f^q+jCL+L`pIl0OG8bES6b`71*pm zEpn7~^AxB6r6s381t=6h1>tgN`ia;BuK+D04p8_qX)uR^g89ko@Gjhk{ zVng8EuD|hvNnzkar|%Xg-SaT9S26I(0=rdSDqFaOUCvKc7#^?kE)M;J=iZVfwJ5@w zi{QnpzY`8T?;Nu(7R6W@xaUnjtcDN_R;&N&2&+`-$ek`;FXnUFGp@pRM|>4~L6iYz zTIxGNan5t-R)TS{!5%Dv&<`*rF-+U+yFLv<(Ymhh2iD4)-T-MW&N$RCXk>0;E!`tB z%SDzuvm()EjBmFWlZMtfr1>s=hi?!uqQFOSTOdW3k2opT$Ot?i3FGExgO;JO%G;_{ zxOmi8pZb{hD7>RDRv1|3Qj)s0we-j=R9lxU8xi>TS16K1R#z!fQB+W7J*%Ee=I;{1v6wJYL=VHa)jb4MiFYJl2NP=V{2JaoO^)F#bYIuV6bXC z?t?-V%MtEHscEgL5JF6EGFA({`?u(1o|4H_8<__hIZ`dQtt{(IBlnkoaT2RbzsyRk z;%&OT76m0=0ZL2cUI7ZlH&odpRA@uBye_81D*|oEyXD};rJX@5nivu5ClsnkEip9~ zlT5DiqD6r4NAj%RMQILw%jtW9A)sKqNk)oq0a3ns8Vi+Q% z7>Yj6Ee0M*m16M93{w!=)VT_dOk}+&ju2T)isLA&PjL*b!xTh`TYrj|WU8ITvF?Q+ zRnHZXg2C$TxgXN1)!U=AyXMleOuQC7uE`{_;;~I8o!IeBx+6p`1=|D?_jS_BLY#)_ z=oIM@DaS|lAx>sB?86+>_@Rv}GEH8Bj?xnJDL9{WM2o#l^S6BIJ6#1hXX&GbF-B?C z1Ndz0#Nm7T;=8ONt9dZa|E+q0#_D_Z>}ss!m$tkf z1$XO3NG(yti;yV3U(Xq*LL2r1wJ~KyA#g+AE&yMA&t8C-Qmu=Cnp3mLphUB?AhdNt zRS+lA!V4lO6}%w0*1wCu$CdAbWtf_GL6p^@rBb^JMle{h4fnuUsaB>0&pynvsOclN zV0gnSw|SPAaGzHyqS6U1TB|Gw(TSowS}U9RoA19yq)=IXmB_2gD$ZDi>QZo}C`N3V z*`^Q?Wwj{;yxeG0gp9J;6oWNPHpLK3i%k)X$Y4_hdZ`Yo4Kzil+4h-2V_=wPio#oK zNntF*rc)F}n{8Sw7zu-pg%!IlW?kRkGEz6T;Qx*7dZY0q@`JATn=1|;cRVhNHxXGdzHDeVif>3-T zQiPgXLkhu~OGu&qj#iMO;7YC+h1X)e5JFt47cC`Ppo(Icn~S12_W+lQ{7NXnVAXcq z2Zg;!v~BQp~GlNj)r|lBKXKShJTAE4-6fM#x$LmUg?A z{zU|S5o%i4F9nVZ`Xbb|kT<6O%$W~HWA~$7MgD@Wxlzm?U5R`D*=*sjKAF>tUtumU zE5G1WUPflgOkRdwd?IIzN1=JVq!#8hUJAOxEM7vZ@FZSBr$_{jp|~v@5@QM%0M#>i z8Ekw47ocrKyA*(qLS2fqkUd}vK$?1A0r1rzrM6cTIvA`_=M|v~*CbM%ivXuunw1V^ z31dagx{SuUi-xcGyT3@b@K+bf>BX-gl9!cVP$VxSvqU5>LoY6pGsdHkNM2G4QzS11 zT|p!-p%rblm-SLSs%r_n66MRt#-(JDYE0bMz1R7ozc(q+k(MsF1h((ZC(bNf|1|b* z{C2xMS+FKv=(Jo`7kgeVhc*n<%fXAArwepia%wI^iRR`~;>pQb zs6Nr`EC^n#-b?0Z0ap!6cWrzDueKB-_tIka$(eijvWbz!!2`D@e%NVy)!5Rv5)v3|4brD+nLogstGGWo^Zl`?gsd zvelitR;ix7IV*~@LR(BlPzsm0=Td@}73{5#tG__zLW9)(J;Wt-nwuPxW-5hCxa@+NwwqE>@4h2oy&%PFnm zKDdNfor z`QVc0%rKn)*BAQ}LOkBw6!6(;ZEWDDXm4)OCw|>(KW+)Jwefgs>q%?t$p$=XZEdvv zOZ?Zjzd!u%LHU6I*@W{bKexNK9qAP%X#A`mL6R7R#oQM=1W`s3Z(TpQ zam5=qxLJh$v@WjYx9vgL4E({!4FR#~4i|ON*$_LkK(wDd+h`K<`N#{S!r?oXzX;*$ zwYc*aV(3rT=3?Z0geMaKTmLlqFu87u1AYS(+)p!DZG<<+YV}_- zsp}5iVYj@yD_)AhpnP@&pTR^luFHz}OCs$+TN(p;c>4C}&Ed}59=vHx#FMQp20cAB zp27sAr$;--v8Pb4%SH(O=UsaPvs&Hq<-zeTK^`QfO8N5e;5EHGG+u)GCmLfAHu&#k zf&b3&ACNrw(QcP7p^ePV@MX9{DC{1VO= z*Vlg$7t?`1nYi%OnGRJy!ia=4$b*qHy`d2TLPOv|Z|YFngnun6$V;j(D}--7YEGPK zrCEM`aGa=X-JbQW`oy_KU)X1hdxrSye0wRW2V#g;sV)V!K6XW={mUs8|Uthe{vf!r7Eyot1;FLO5C}5DP8t&TmxkBG7S=@^tgrqI6=a&7`4fz`9RM<66f#&`RNr&xnM{6fF5-4xF< zpr0q|r;l|!_k}y95>G+1ow)(eu2WVv2G zesD^?K*iHHEMd=wnL#ZE4Rh{Jn3DpR?l`a3h)LlWc1N{Fof^0|1LM_=`>9$3LO*#^ zs>Hy7fd_%Jvwm^;%U`gUVHE7TnEhgiU}VR}D_UjV?fkHRb+&)CdvbJ2<;Vwbci}e_ zq?C9-frtB-*omBgd?25k=qG+zv$;9JUl=O?E96hAi7SqFE>CyP-yQBBD^^!E$7RzJ zyQ$5Hx1#rB@9K2tZ0G3eU99F&Ni-zU&zGI8$LW;@KE?ix`X3%l^^;gH1BKLn?#63) zezv>Q+mCf^`GN5q>lghrUt!NjwZiU?-ksR*jDgVHHbnLV1|fm6ciht#nct^sZ+7iy?35yOhm{8&t<_?^+41A{w`_xJa%4$t;`Cx<^I zcp4vG!J>;jKW5~zQJ@qGSj`1bH%AzUebD5gT9k%#hJa0S=Cq3aW8r}qb!au9p04(Q zwd&%~cZPNGJ^)Eu7w&veYsLp_q-+J>A)gWB-2V*A;N$_3EvRSXi*G9c? zF-AxfBN`p{%-+Clz-r~rT=)kDbg0fA1(b!^eM0OYc`{iCD$&BMq^=UVp&J(|$Nt>y zQqK`1IOEXQ%jM7=yRh0qbz)@XVn(e18vOUL`eygt$w_bj>}qfSv_`$utn*4=hqWX4 z0Gvtfax^{CG+@njudmUPR5mEQp=tHz;Ba3)GhUKT6+6O>UW2AeimF+mgR@!$AUWqS z1^~SDCP56E0R zSTMYYGR^w*k~K7Ntd5C+!V?9GU#%{Rfx;67ieIfBidO)JUsV9Us;S9Jr?0gmeS?mg zkRW$vKFpLp>T*)N6EA`!f@c$)U#auToAOKq{Wt{1#(8#GXQkMQv@uxl7NDsBksVyR z9ATE7s-eWDOQc`Y+9zik%^MWbhIUDs(gfQ#g9kdZ_-D_!*n~T}I6OZ%Jm{Uv8Mo40 zGm&Akm0*okPt147*Cp%fBjYXccL{mh!l)S_#OEdCaT^3UJ&hu9eJKu%d>>u7}9-?~r7 zmkyd#PUQ4$x@Y=Ej(lGx62Y=b@2?>qhtdia(I<55kT4y|h3x{0h>@979gq3ahV1K` zbbNKypfCMzeCdA!ikWQi!zwWW%C=qgg*pR79L%AE<9*sc?d_cHzB|~5FPG7`b{prb zR$^;br&8;LY-`OHrEhAniTaR)%FnD9&Hy%%yY}}tEv}~p}LgIz{5IcVOd?Y*aZO9gVsV)OGq`EE=TZu8^7(s zdes1~*ft1IeamHOs)-6KVTH&}#&wIVV>P{be^_OkPHjCKOIgoqrWFMm7+J4s>zAs5 zhQX+tLQC1)bPW)YIK!$%lb*172%1K=lx|mbg;7=NnX2SL#h+c>Qv)0>JyN{Gg>R2w zCsIDz`5W-w9t|meuZgwY-Is*824AB=erXRmyri*xsm6G%Tmk`lrVK!!=d(p>4HRkK zyr5u>R{Lt`;z|k7wQ_v4q3YGaP{if`b6H2IZ_VtF9MBqDpvq>|Ty03U>t=2a?Alp6 zjjo)fYMFHtYkF$p%!L0pQ5RfG)H#)cu5zS1=^~Xjm)jF@pr{X^7tpFsX2c;|^{*Yg z7I*MLTfjm#Zox)y>9a@Ai6$zII6JX}t zAayfgN!Oep<&yC#9En#ZWVvkSHnG#57>FH2d|~B8d1WObvP;lrUmhI`KD7KRbRg%wRy zCLb*r>qoQie5gFv2+KefzY%bqdjpZ{*QTkTCDw%~KKwb6nXLOj`QKmK<9`!)VpP`p7K80;6vcMVt| zVHC_l4CTO`;UUp*d{^hQu8}tw0iZJhg+71=`PT$bMo8La&|xed z`H*QdaMwcNl&`%{bv_iP7tj~dU^-^20d4w0kS+Ri>>1d6ENBaV6VSod+7LF7wz}|cral@dr*|Mi zp>1eu@W!E-xboZw@F%qO#~*yaTn-mEH+bSn76{l)9-r?YpZB`uhWsmwHa5`J5AU5_k*^pUX;6 zDJ;cM+LgsK>=o<}Y>jx}UBe)(@sY$2N4=(i>H+|sgRAasu0_p9!gZJKa z=--BaDYsiqI*1-5@aChyU)+r7JSA{%L30M^HbaBPdq6{IGY1HhHp%UinLCw5fK+Jz zMO2TRJKCMxaf^IDOULo=o6a1H5D|Ibtd-j!pWct|_&7~n$hYz7mN zmPkFl7n5xF&&O^i3#U{3(Funys*s>Hi78#QPJ`h zC_Pq`w9HMJ-Zr-yLk<&rhi!hezrOZiaJyI>o98Oj89Qk6)`Lfrcdlk{v>SD#hXyQg zQ|Mjf1oF2UkBP{yi%B1k_ZPFKD7RrUo=j2TygL=r-?XmTP_JTS5ufsuqh>*M-#et! zbdl|`%F@q9dOe6rg?1@-GuS*Yf)H1POR-M`kQ=D~=-dz%*sc(-o#CnXY2wU86_!Y6 z?12Kszv(pH18dlriFU;gZW3jLV(w;Y--W z1`}M7>!>z_N({kw7RN9LcnZmh(NwA&4B_5E@APozNAVG+F`cM{auN;v0FOS$AQ{W$ z|GwDoogbVWlUNcv$G!LaXNFE={e7N-18sMx-c$+HXC$wB^S_koSt{x3jXQM%hg@?O zbAJL7YCxUTzoQ3;Kh4ep8q>)LhSC|{HRgT;Mxlm&LQ=&0Fl%v6 zIb!VNTIKTjFU=!g?y;4B7ziQg+&SxF;i3=P;aq8@zVfru-r%&F>mzt?+NAR<>HLKh zP%DR_x|6HX)V(zin^pb~h{#9=YIhhq$hsC9mE9 zmvqHDSO%d>&Of>UwFCMvh8e*qycp4o=Dg|XhucGU?DU%T>VmSX5xskD~+n^-V>M zu$+-p!o(Sp!zRihKbS~1VLC&9u)u?MwwzaYcFxY;zJ2$uR%Z)D9bLK|5qdy@MKQd9 z)ePAIi%{ME3TRS=L8~!Zi%fv~{s5J6kh2{a(6MPoIAAw+|GFy?8scJh6JUiU#VshO zA2_(c$vTAxsbarb+|-50H0HLfbuio4MCOq!Gp$m*9kXOk7Pykpk{OB%o$I% z=l+K~A1zcLZZQlU)=p9F!B!MigP%Tl&;h@Q)1AYknmI5Rbb_RsLz0CSCP$1G=tTh1 z8=E4~1z!4gQ}t<5QH{}MPwzBe^<5!J!3ab9VOoKZBBR@6!ThWXYrG!b!A=ssNnWM3 zg6YVeGc8m|-G@53pyi5Yv#I>@H63=)*VM>WpS&K7F7jaWy-k^aW+RxReUP_k!xPm5 zcp-M6v4Pbws3DLyVhFk-C8!te76$b+T5?OJ<|=t7FG6N9JJc z&vWVD9r@pozn@wR<=j?_V%QamNwXF`e!bkB6SeRZ8`U`2dk{5@U;NFzgKi%}p-|sX zlSLgC0+_j=1j*XexkErHf@g!d+u7K7j2coO+E_Pc6aDEn)v=uRlUAekShl8jH}z+s z2L;)?n>|23*K|kiK+Fp@z=$;@vI|jL*g}n zouw1PTa>fyI*VI5SEl_1ZbiwcJX{RsR=wjeXNnNChu@w1GjGrp)bFH9aGm(&>&4B% z5X~4Q!=;}Xuom?~7rNo;lZ_2o5eiqD19O48&N?E?!w7-YmXEM?LSfNG9^Nztoi+@J zfU*h~17MeVvP{M}>4T_t=fvJH|KyyKW(29`Cs4U%&CqXdHd}T5)4`vzB69ZZxxC*1 zX6=giNQX$^h;gt7;0}Px79s3GaE}*8=WvO?8{Vf!JffJQ{72a_sWQ=TvfIEi7eL1n z3xZ^O5s#gHMb@ob2Rm?1oFthUfMJ=NqjwKFZ&8RETZUjK{u{5%tRqH8+h~eI*JM^# z<~|k!d)gavaHqFWy<=$&h}IZ0x(Y}#K(6mIyJ3J1$Je20O6|(XsT^duH1n$# z+Vx|LCb>dNIOKro4XaklS6cQ7Glw@1-SM?Fv86;Wsg*+M7wEYO%|ZJGtSSUfhAdi8 z_u~Bp8v^#Dmk$(oS$Yrl)W63HFWCXLA+`r0NxKc6HN4HyMt~4D7A(zBHy`_C_Ruc96ATdH z-3N!>C<6jWGxT9arN?Cx3`s}fPRWSuk==YC-l*fiv$&`59ftxY&|n$3a=!*UukwGy(FmJYqge+v zk0`TwMMa2^>0J#i`MdD^;^A=SC^{PxTuQLg;!pT&MB;GbOugBHH>_%&(GqpzPMZ}p z?khRN_Mi$puNaYY%E*En7M}UKUK|Xkg7a8HVw}=U$2v4=SJD{YxYMj%I&D&Tvhpaa z2`huLC_i2G+ai4w(-g-jS;puxKpcva zKn4X76*JC9#t4O4JW>;J8gP9a;$R=M*5=v+=lZiQ)4wG<_cvCk&4spd=tp6c0n(T-jI!7C3Nd;izw5iWNAdZu626uesVDHiX0%N6QV@{YB2NJpn}NQeyPzrf^N_w z^Xrs@>~K_o4-^%-)j-1xstH53IV6U;frrCj zLDozpYew@bW@jd0jOO0!1+tj?2@k8W&-*T&7Lf_epX#$yV{(y^7-}C`lC>id?!{0) zKxX|4&JK}ih{P{zY`aR!Fpd5h0kM4A&K+nTQ}HnAuvm8(n;+}Y!HkoVuiY_D9 zN*{>)MwnT7Obx#gy$99N_LM+v;E#EzNRb_*>Z8^Jy;Rcsi@j6sjsPZtH$dLxNL`#q z)*+o*8?l};O99m%E90xz@!(wzd!*iGrrG=?wR2IXT8a>wY<)N*VA)%0qlNOAw6u!{Vc(>4| zj@KMj8EBp}{y^%kuR6*ZPCSZ9RQV*NtkdBQk8m6Hh}RRGGOT^7)^q>VqkWh>3HIg- zN1bmmQ{%vYX^$a#aO|_R)8ueH@z7Qr%tO^p2YprcJRoUkjzXY1cY7xb;9ybhmGR`v^$W=6vBc zr(;olPmje9?$n()HDy1hgo0gh=61!K^HbP!p6?$X@1Fyk=su?&H;vHkws_v==MvZR8Ops+ zcaqYSP9GLalqQ6c+&AAga|A(xmp2>I8BKS%k{tbX% zy&FCEHiDtJI6k<9WpA*6S#>9Rca%YLF#(APyxDVSAg=qcYLvgeTVKUuv(SU>>h{=k znnSPY&aTHznCjIYJ{5;9tbkMd)Q;;$2NqjUGaB$%)#`kR?t~oCJ!SPB_U}xh(ik&0 zN%gofo`z%XIS_5e(f{T-Dmx?W6y*}pcj+`H>i(1WP^8=iON*S^8sc$?=>2fE$;r&< za8j+tN_QPn4J3QpRk3xPn6X5M&R+Qm{wAk|Sw+hfNkpbjfpW(XW9uLDF<^A;N72#V26Ugpvmy=#p}UICDWpg(D^2 zq#I_{y=m6TRn@z`TOYdeo6@P6A?O@wwhr)94nzdSAG8tl*L(webYAa`{>gTLrIMYy zB|fmsb%gCu4wrf04L;!MafpV)&^()r7)9KLuFiUeH}H>oJNEAT$zH*^^$gtB?zIyZM zaECYNih*&7lw{B<=`T3ppxlM?$u#cx1NR11Qd5mrdo*NZP->+Ay7tLHB4!D#K#I>Xwi8|$|1P`Cx8PP<>^4J8?7s2=|uCdS2tX9CXrr zF8yET`oOq4_x<@DhCna8#emaa%Sm zM`ZzO9CMOA5|2$}2Py3Z(}0fdbO3|yZPkM~gau;LCnop%CWs7O3=QgYq_M%|_6x$I`-d+a;&@FqTX zWO#*lmE+^%rt$x7tJ$hp-gso#zxF}v4d|r||7UfEXi!o$tO_W5eb8^G$_x=FgK=3< zuRgk0y8v8OXR&B;+T+SgBSx(*H+DYzo2b(t>NIxyKotb~hi5r;bj0W+)^rDl7}p29 zGk`v0A)?vLV@yFVD$0ntZaEzktNvJ={4s+CP&ANz&0ZRFMT}#xZtKqS0W*C9Q@`fOJ6yJ|LHHOg3wHlSZ+j zk?qvKp5Hor9|Nc)AH5-4lRT-COns0@=%YMGcZ(TGReh$6(|+vXA+q$ZK*35|9#7?D zQ3vvDFX~gCeA>m#Kz@13p_OeT(>pPACeDqkg3#{R9L^>U+^LbbtJdY~#%_$2M^=?- zV~2(wK8w%^aM%bXtbJ?Xx++&MmY+P6l|g5>0dDrNn!fgT5VJ)9Vvq9I%;j+=v~Ws} z>(_=u?_8pqNTdDLsWlT>tB%~8d6 zD%s~_NNTAsRSVQtnTl=`E-vW*93A&EVV={?)3cM_X+^L6W=MI&`U)pX7z@p!u$0JN zC{Hc%{8W-4t@w3skE!55u;G)!6lAMJbx?yT{&WL$iW_$tjoZc4qkY@_P7nL8Gxned zrk-Qgj0PC}6149vZmiTgm`Ep$6+lyxb`MX>oL=4Y&a;3@&@%;Y0#9X`WZVwC%y$_-81T4yJJCaw(9Ut8~^E;wU6CO zr1R75o}B)8cJTJyIXlw(G+!jMou?j0X*W2VkwxDL*?)&hT??c9l1QURwovp};(lTZ z_Dtg=bKM#|D=6=t?e866hN@`reRxarKilymK8WP}!4#wiNVU%ow+DAO(?y6Oo|raU zwIN$VFcqM>3ycY^8;WBWHdRw3IhbyHp{K_wHtWdb#I{C(M~IWzJk%+|dAH?GBj0i~ z*ODn8MW;40NC5^YQC%`l`z%9Xxw z(6XH|aLxW??#QScXqodXbX9*bz4K##GP#c&GZafUHb!xPGW%e_dW1Yy1N$gl{sndb2xf77;`jiHrR;>zBGirs28l(+# z2jh(PjEf5h{Ga1WtdfleD5t@X4&M%HM+ z=s1|J4pWcIRE(+BRxjms7U5tKDifGGkO5W3oir*! zNpn2u3WkO3Z2$D+?EK*Pt$2O$wzvMbi@g(FJu)~&X#K?v#=FY$>Xt!`yz`BWcv4%L zag~fvAawHM)OK@o<3h$q)Uv9qe@Y1_RnMBBC;_r>amcu}iKZ={+DOZjFuA@f4YFyw zkO|g9F`Vy4&sa-NgxWSFCX2yHnz-i_Z9vzQNiWGeW5ZQvp&}&;D;HAK>w=V2V&*ZX zs@|-UUZ8#G7?Y_eW2h|>IDSrw`)H{$S1GwJN!b?In0F;Zdl8WvYN`(gs||^ zn5pVmbLIjcy*ucgpPc;&tn-6$M*9@@9Oj;&!S|h!*Vg5n(>b4e6Zd3+=WL)-@&!mc z$9pG7$W!{KsB(tKK@Byo7ZXgu1VU&wy2E{N6ZF*K!bQpb3d%TkZ%w%=PbLpQ5ZsAs zd<>XPeN8JG0r&aCk7CQ5OzI{s&Yq zr##1e3B)}ufyyF^ut8&vdGxE!JR5kZD*7ItOGM{>Iut8@ZcWE2P2IwfPlm?QxPeE) zEL-VtdclD&(y^E%MAK%QC%`rvttgLZLuURS$}8#qvGC{8^u=M0)aiRC7jL)!`tAb# zKHu%WX~Ng${@w+4{2K}-mj{N}R=k0LuGhe>dWU9OdQvs+ACN;iA3E*U_5gJZXTm2I zNO5n$rY2tKIfP+8!>G^M>&1KynmF!Pe!ycS^mB@0HTY(bA<-TV!tE(6!2y87#(L7c zbHS&x1r;_7o8CwA4sCqkDCFOoL-$qv1<1v|yFChiYtBcFp%YBt-EfZYbZK}9s2sMZ zq6cIC8^}m9m>V+(OC7sYSUsjAG{|k=KtDD^fF6vXA0l$($q~3W4j(2ZV%f2fllRDM z(c($ryihYvX2XzsoQd;ER4?$~&E^IXfe`|l=l%qk3QaE1p93eHLz6V) zanGpqEjy%P(G3}R^PtO~b*MQ>8z6a?SCqZDX$TidL! zo|vMFJQdl?6ZbJLo>7LP_hat|Di;>w+hLW`izzNb7Yv<+oMjnkD$e$Nw3vXd(Ch;Z zc>C4^KDza8Jr>+fFb;#o$YseL_ZfgkDF^YSp`iLf z4lqLBwKI@;RiLd#7Jv5eGh6my`yA%v8|Opw0;=%ZgZ{pD$HV5{ezXL~uCI;m8!`&f zmo3;uSYxz-W3*w85eAcM@23~x-4J-5Z@hf7ch%d+3v{j?Q6NwlMJdCkL?&u1i|7&S z<`lDdCp98@4?X#>?HpVx2NTeaIDGFz$l3zTKT!OBb3t9;b#m-_v){ZM8VB(LMsj-= z-ZekcDCl0nW1(o6eXQM>H-XqY6m901u?YmP50J`&9e>L(gf3(*<(Dhk*4|%+-f&J-&dAbl_rsHWt+|u|Y%Lg}oj~Ru*HnHd~dk-ndB6 z^oXD4lhP==YdQ(Hf!~9s3mxLlUkNC@L1&NyGIjJ_QadSCIwoE6)%C=%TES8Ti_+!% z$eHnuM;^TLrps<=IDlQvHgLvRYgaQ$vy2x*Au(qf$|w)=um=qlT6Ksq+90HLSLf;W zFp_e8VkdfP{DhtJ&}nRHTpx!Gp}33a37OPBdhDHQ4j*MaTvqTGo~!Q-rSYQ2-UgK> z?8_^48M{RFTg-->utcppN)sP^7;d}Q*N9L}riHrTMKRkmHi@?Fz zQEhK^9@nBcXG|EP+$ofAmn+!kQmug73i*{$l1?t9qUv$AmbqcC-khIay~EP4E_dV) z(#fzi%3;C5%&}xyw+pH)XQM=04&7Av!U<;1I#GYsL;^2{?qD1CIG;$BslV85?lxch z3)uSv+c3p|;U_cPJIVE^WGzU1BVOb}3KduP=V`B2WWZ#nx3SY7Tb+KOSBkk@DR6k{ zp16U^MMT0+O&i$pEk@LczxvS8I5m57oYgOWmA|+BaNq<@>{>J|v!qE>2CK4RROON2 z9MawdPbaD0^r2K2i)-*^!M=Zz^J4MnspC?dt*9&0fba~3{R3YcbnQBvA`Q1Ni4&Gu zlMC9B#vqJzM433$2Q8l6-wck*q@Y0c2F|J*Hj|=bleS2+^GSkwNO#Xuuo8x`a^Se~ z$f=upGfh}BW+bVgSPtd}8r~FbJi&DnFGg(87}Dtxb;c}o7el|HWERssF>g7ynz>7h zv0iTLbmEx8PvGK9-6TX_-<(K_14~ z0d`gu87^2?%Nkdi2@}^hpby6`Ux10|9FT{;`&`OvIlJjNE^yVk7-}jM+!gsIs*9xu zQC?U%Qc_mPYp7w$&G<@MyiXflnlYu0Du%XJb#@PAbiG*&eVWTkVrhdvhJ|o9c#)&C z&1|NjJ9!+%-RN z^pTl1Cz#L~W?Z=Ke`1wDRF7S63`2JaVAO*{CjkB&Zx07yyZx*QA5(wWT-;uBO4~ht z4H|8LYZ#&Y&HadW!!_8%;6DAu2R!K89?WNKUnz+~F~}vcYOY~Y9Y$zwM#xaS81a|w z8K!Q;3+RGDbLxZ+hJ8~#_MDF(GLK+%-QgW5Pm{^^tsh)BM^5n3Q5puo*=JiX^x1gW zyhSS?yK51oAKv{s*}h)%K~cdIT=ZU;I^0(STl?Psb?)DK zgWs5(gFN`YDSq&RA;$53>TEuJBC6xtkDVvm11H2iMh%(!jLs>^7ey^Q>$hGM^wGwE zL6vwx<$UEN;GmUt%fi&`4w~X`u$sV{S^d@f00T5{NaxY!(ZM+~tE?T&|0!;lK%s_z zpkDL@EiE7MjP{cjZ$%p-gkqi}2jl{o>nHNt_Q0LO?qcFK(FFh_EF3(1N2K$SKLHWA z!?KNp+T59Khrm%IV6HpGo01FBdNC0_4Ag_YP)MKKu(@jL!Tu08@)PEf6NDqsRt^yk zmPDu;J=mVQpB7>B&JR8;RFzI)Hv{TBx<6NE!@>4=F&&JWx3gh0yzz8h(7{0TyfFpb zR73u<-S^Oy82)VzuYE=E2*wN#;ebO19hUI+^^{;Sr9ze4}L zcjj|skjd@#>3-wb9YepP;Zlx>>x&=I+9#?%ob-D8+reUd9o{w%(O@@4Unz{#Y7UIYDuM14}j{?ALUYwsC?(dywXj|k|(?m`!WfN4@n;_6ig67A?Ezb1mZ;ERM zVjrEw7lYsKrr`$|l8Jl0{Q;!IZzIP;v4SzTnm8}ef5UV%lNnmSfrIe)jlOTsgK^XU zt?4lA?kIp2(VyXV=Ulv7^!s>)LUl0WZ`ArvWLv7i*7IrR9X;6qV^!d(M=U%|2$Op|EhEMm@~8+wdwg zH}b*hbUs9<(x6~n@)ezs4NP67h(;R9qJ2Zje(-RH_7H@2goI_@Ea-4E@*0N^{bSJE zi7%j`oX);>wWg5f5=LiZ)FwrSP-SHf8uFV77BgfPd4r9NU24i!S9U-!&MQcxPv_k_ z+6vJ$G}cp{-7ABhbPKx~42)E=I;*Q4TBuD=6vWRNRN}WVv961~&>YB6!rsO4)!XBX zt2YOiR0W+Y_55V-gcGGotE3zeee91Nscp3Ez|ofNPy8nFAubrHQkU=^F9{{ucSCu1!NrNtfWH3sWT zV?aZk-@48RcNhyc0lgpPE9@Cz9O~+4fXP)jW%_);@$IVXx`MZCrq3VmaW2RNj7*N{ zzN8lupGMNkF1-ew0R}e0(B05x%pm+>vX5%?O#-_O+rnYwjy^OvWrNc9W`4j>f#{N z#k?-J_A0$OA95)FY<&jDHYn|cd&@D_I`INcWlAJVG!7IJdXUh}2P_bV;SE}JdDqUt z8-h~wk@p~GRf9Q30~pKxC-V_TlizUe71fyUuhkhtLzu{uV$QpvLN$elms42j{wdLr z3`z|RH)K5b>7za0SYL^wG&e~T6O23hB@s#8W#neqOswo3UfE$a*DJfK`5|m5gIy?{ z*I(%zB@;DV&SmZ^l?)9f2Nr)hS?v0=yMx}zA=Go)CMqs2DN)iSUYW?uLK)ckKGKqi zh7;JK>$e zmgf=rP}Hc_TOfklr=c?%ix)TJr`OxpE^Xkd6~#l_vx&|$177aDFq}C9E9@TW6jDLEEDi*omo!b|X@D%}pyQJK@(Nijbq8y!GYOg7y7hYMK z@e8{XUvIr@Kh4%9IIS!>EfxbAjgwxHX`r$Ri4;QAZDrJX@FHb>D=!hT;%L(c`~IVa zCyw$UhV$l^wY5bZ@~gB@8STIU!oVlke+)`^6CMqV{QeO%T=+Uemo^v=4HwRFjN!}2 zFF;@U;r3krtPj-RWSz z5=B8cxwlXZF>LnT-~*^ZcS0v9!vL%DiZR1>xNsyN zRBqMxZ;Vq--j(Hr&X!X`XO~6ImdnKxAk;w({Hwzr(9QCH&i+4D|D&MsucrTX9=F<{ z|Fs^s+fO#Oww?&Qy|VMDV;2c>l91a-~;RSgwI=un25skZgzNwCB*kqu84Km=eX!mxXwJj4vW}2i1YQ2*P%OKsJ$1V$VZgWYR*sCEJWW2 zL$NM>78`hxT&O6LU{)YHwxCK1s>}i|-7YW4LW){1J-XgzJ&Re(~mDxix=meP8<`RqwXDQ#T} zUmLLmNG^&4-gCxkkT3+(t=cRrQhX$Pg<4}45_W66Gu)5 zO~5of-@B&cJH9jGAiB}%i##G%DL5;sQ4kfpqWL>}Ns(E1co!Lue`tzB%n#4kxTzGm zXc>r8p_6}gd_Sfm2Ry66`WgXeU48O-(bG|w#!a^s4wgYVE*&c7GWqd$(r;5)n2`Xk zIiaY^j9!!+77a6a`4a{-MK_&6rE64^O`|3hBC(i-SrK%kl2vJ!L(Zf6V1`H;arRvu zsSC>^I*LwJhvkH~H=`EW{tzmh+uo*VU{zEs9+)mK*751_aNr0XRZNVw!pyA$))5$s z*KZjH92?t$vD0SgbQC%Lotep^Yd2OUkchQ4t#manlRLQY%Fw(<{C_~@*q_SOQby1p zK+8G)h(FMUrCUm!EkIarf>p8|ih)+wAxLiqDH1|glMY?{g6DPJ5@`N|dGrS64nIfR zD3*X>UC*B3urH4QJ{bW58Ef6S3z{+I3&qQqlnpP4Q1Ry>!gjgFrFt2q> z--p}Z!w?&IR2ENmbdbn_9G3ddjd%P^K^~p-d9M+4UmIC^C8kn9^27&y2FdlM>!7 zfGF6#IKO&*@#f9`*;Ol|IdfpmdA&f}dPMYff=x*Nf~wZ{u`gg>(b%Iq97zA8%sRr+ zR~|QzNp%V29cJPq$DNr5V1z5!XCke%}8I8OB_ z2k2ahR4vY>c2Ao%t?lDe-F2oRv>7jd8c6oWS(k z{vy2NSNKi$qCEMj^kk?B2jarqT1?S_YAWbHsb|mR#6nJo#h(uHz36&~C{aq?xEn&I z%jeTIbp7~_xDECcyxsLV4olYC@M570J(PP3TT|5n4Kzro$z)N+4FhON{f@H29Yb42 zVu#XKJKd-YkfIDU?*3fqgfIh{<*>7N-K}p*{-@5p_v3!TonelhG@*N$C z#9#iSTS6B`e2o3^7DIv;6cxs2L@cKJPPF#@;JLS`h(97jC90HN*`ME0{3G)=K2SMl zY1tY1f%hARuZ)c><*2Y{5Ppa7K$+JO7%9FMHyp`3UR98su3(rXM3=$8hF4Jy_sE%M zjxo#$_$Di@uzKKd_q^X=8EZdoCE-->;F5DpRRK3gV+iM*f z_UM{rxFOLqYH6dXD&UWp+F%1p`LOGc7ZYIEQaiIA&{rBNhhR8zhHekE!|@`FYbG`% zXp9``hJuRp#&oz5NfqdX_ErlT|0DY3QD!}uBGnqDGf-Ex3{@JhVN)&|=5)mM9|+K8 zjp&8op=495f{}*3kC&(hky9gO7*j#p11R7F?H}H|`q~^k!hN9bT#*}b?QdmOfu!~a z4pOZH5$$|No73A7#v^L7^7cQFdSp zRaE1}Ov);JwGlyWSWtM$fr3MMb|zUV>pfZ(jMq^i`0|}UagCRAe-;;)AlNe{dlAu| zBinO@d#-fP7w?9AR}8h9;8`Ybl5-fhuOK~fTHU}tB@%sa;a3E@Wj~j~v_!&GroLe3 z7h@TbjyM%`YP_q6vD0_Q5&c8_+3bTt=mzg4xmN5g+03TSIC}q`d8gqN!@>E+9gsII zoa~%6QSjax<+>3vu5POOPM3l&(~D|nbua;wKfkM$la!Y%Mz!uDyGZs9#-7-9u)Cpc zzm%hI4Zj7@Q|oFI*7Ly!yvL&}U~JNxKq#>NkS2yw3BOx!o4ioJ(`o=fq4DdO5{%h| zGTw=l_BT4;*_EXQ;v;sB-NvB-6JHw%AV+z8v5(vWqD>{)qIOkrw3WC# z#JxiTf{IZfBm=3v&|iK7C72-9uCP+AlTuxp*P3YIk=ukLjuv?J{^;uT?Bx7p_vEl= zDVV7xo}h+J$p%TymNToIqJcMYEt1Irx+Nu(%GoUuZ2iQI&4euD(J`g5469pUNCJgA zS=IPX`!piw-SKTLm=y~Mu`wiaRSxh*LAsoRu;}us1)fY|(PVTQ-^q(xVVi`h#yP0# zJ4{rlWt?&E4$e@S6~3a3x5_0Se$vFKmqNB?jnXpwF-Eg}-!T23%<|a2MQiZ?c=q0?@ZiE{~ zl=4JPD$FofI}7wT6W~%B&cKav4nb* z!5m?L5?^5mwe`n#kXTNIU_*k-S64`jR}zK{WYP>z3l?r`;L)oku(%DyBq?%*Cr6|- z6cr0+7ol9|Ull-!N>VS5%q?&>qUJ>2WAf9~N|Mt>tP}nlpS@ZJ9aWB=X4T9@F{))( zIJIgHhDOG!M&XjnfQ@2|(wAZ72~f~)BTbhSUBXn`^If)l$)oOJrUlX{851PM+J<+< zF99`LW>kF%(rOJuL|ZL2*^F|BvF@X)-J@sSW#CFyS{#{)L#wjME)k^yNYeUIv>>hG zZnj%mks?C|c@#t`yH)Nq&RVyGsG)Y@T>_dg8mTebiiEd$w{``=8YuEAOWJ6ukWrN> z)2t+~?Js5tD4!`*mco0N)IVF%GfLBTAJ+ElZbJQSNg-LhnZtdN1{@7_M6oE|Dtr}T zT6#`oIxB*TnYwYfkjF9z({!#!R?XowR zGMbe-o2^_pWFqhS4j>13njYi=$2c_)RPD;%$$e-?a~dlphF+uXpmB1#NUm3!ub_37tM9{QV*()L*=KQ3yOoMr+efOi)|q5RoO$O^b@K=2fyb zh-z2=)vH$p5u!O2Yg$44)fOq+jI^v>DSMQ(xtoO;iJ3&Tmm|kG?cbvoXH`xs$-s!n9i)WTNeoZr9^!WO6+Nvfu zT70?rAH31xLNYg6@zVvMwARSI|SNX|_0m_~Fb9C%(Yz`SNsl@hE<0nvR9e&Wkk$N-4O z3O?ge**E2ZG-69g+um&(c9Rp0)BJ z?Ol{EcL{l;3oRR9dJ$jM9!7h#m=rgvg$LZ$Xpo0i79>?)_T}cr(|m%40-4{Dn)3ZH zQUWY(c<9Jq%^XU(}cCzz5tQPZ_KrP^d* zt$fa=@EaKLWSds4+QW}MfUtMq_@oHRSl;o^7H# zewH*!x+uo_njaQKG9;H(?Skm{9WW-cqdXS|>zSL~&%}*7)~r%7blPXz#)eG1#7QE#hUa&1gkyIvJkRf3`y_Iu?nynwEZjR0 zHrY3gDb>nFy60G0m_}Wb2a`FdD~uur5ZR+hAw?9@Q3S~vMtq(-j0U3BGXDxveVliiU=95ZGs>&_=Zfn>$7td!=Z zpL1ZF)j29&PQL3FL$=yksHze@*-Q7rj{3>0Rv~oRPg||*emdjeKC7SPvu-gYtA&NC zDAAMsb1&?uf6QtXLRVXx*5e$-Sx3pmomep9mfxs*iMqw9SW+x{n=8u_M6Av$)cOPo zTa)Uv3Sg!T`-){Vh0iKF8ufUSij(0*tH7#dN2J+p2DkNKIpZUTC|TMXUmWqy;}&lYmBv+|p3A=`Tuku!r6WvEN-3X3Q}A?b14E{v8i zDVeoeiOT(Zk5B*a)p>;a*?p%y4;~jURO_a#t-?6$5b=X_jqR4??INq88~)xRB@S>I zk-Sq4D+bQJMep!j|2xY0z zjk5fp(FP?3ew2OEsG-wCUz2c@s0Z!QFdy%Z;qUUq^4 zvQ=#7Z~3`cfVwiJ4P)xtAVwFIlBMJz$-0-)8kd3g?}&{3Ijt8@KE!6m$%h=Ew2`tr zD3U0)9l<;rOv0utCzQC2u61I+VoJ;Jpo7}rLrQaY5i@QWA#qcG1oRd!aQGDfp*4XfMIOu>i|))JvcDd{n0yNqQ4+vA!)Q1^B-Gi0Mk6^{7jG;lx0 zT7Zu{e-SQ4Sfv#)G=oi3+|sfz@6mp|p*gSp$1v!z_8*(ec^2?0ZI7WDZI9Zv6!RW! z$E-bhZBIrVmhjP1;MKS{B}j2KynAtdA~MmU9uE{PUCfpM8hYRI%3sW~SUnNCn2vXk zCNFZ6+K5wsrm}0x?Lc&!S9E0qW$=Nf;k%EXgXyvpk5YSq7{Do3M=*rdZP zi7igRslejpkW$A5ptABYBp?%-X11kD;iej@S}6@pnwff>N2{9(YIR2`K_neV zv!9tH!h-mB+ly3X66PY)UX%ce&3M(CY=mrMQ35n(4kWX)H zf2Yi9pHdP2O4G2V23*O{PP4TPLz!+&A(0B&R>WiX(k#Q$d}Wln45x6VI;v8ccjGL> zPpMve8ID;!$%l>}u?FUhrsVbcWHw^?xfJzfSjmHve2h))PlZ{nr`Nuqck-s8E&{tn@hU(b#LmP>}B-RTCusLR*%hE$vYNd zoy7^-wXUz(ej$Hhg!ZdtMANFWm0gvTpg*aU7r;m>>v0jpmDAm6LAPv=C)14?*QsQj+5#HA&VpZAW@D;ns#1#8-lDC4$>GQ!qavuQ^?AIaVtGvy z8Sv7oQG`a;z9t7HvGpu~Q()_pgPpaZDS)bzS{vJ_9B^x6m6g5Coh~r5&-4pP+EOCnYq(ch)$&7WK!AC{(hjLW&!CH_t1BSSwMP? zBbR_ID81(V_rf#GGdhQA^x8G0xJ$pNf}H zhgu@+j(mLcsw+k?wZ=HTK*H%T=Wx+Seqy1QM&4!*?doO zn5`i1Nkszg$3Jrhn12xt*+ndz#ni;Yf!jm9iQy0ZLDL)H6|Rd9g#Y&S`a$4gJ<BsJ^_#fBFu6sMqcJonV=me8+?hNP6p$n~dgNZY} z%RrAaUUV<8tU(VR{N@HZHP}dSki2bIkvNz;<6QU3Qp7m2Vvm2W8(tX#RTVX z*tL5~w6_uke73;V0_2;()p;#)Qe;eHAbBvBxQ!=BGJ)D=fvFH36Cy|j(JcA{ZbLFD z8Oq{3a3}6K2X@OWHB8q1vzbr#<~Qbxr6aI-hacwyw~ef4YbwKMIet-df^_M1;^Jl# zt{v$Wm{7Q!yx=)OksoIR#wt2v@Ps8PK{wr!nL(9of91sW(#f91rITZA|BT78>yP~a?a*iX#&9}F$H&U?E>wxo(VMQKZjd98N>ko9eG>rOz!|$5scwTK zKqWF;G5RAstiK8H3UE9>nEAJO$xVM8%`*uHb#fy(0*FEMyvdBsrZ&;rksF1=C1EYX zDFsVUx#cvG8u$EiSPt^An$BP`IOFCU3p%@>k}gChqKOwD2=mehvn(99Y}n}D69Z=n z3g5yVM|jqbp-|j`-AUPSDg0qW#qKIr>dEVfesQEXQDL_uSdWs!rjy$yhJXl&lpadY z!*8OdvWRxarOPl9BbVr{SfEh~d<=nB9BWB5`#Ojg=@fXIX}#%(G*~4FV|8)eX}l_O zEy}D+$_UyhRuMcB**IzS;%eo9w=Hn&owy(aO-A`gJxXbE654cwdbEtXaSE9&GLlHv zYW!$fi{mSEqE@-!omJ^?BwL-e=7=gCbWVUN$cbCbZ+%|NCeDo1QqK*w(Sg>a6cMwv zWkcA)1s@qcHw==s`rymx%s2sSQI>=)*wp0*-#m>0W-UKyuqn$=8d&B$ORZ_z6l0N+ z4w$xZaPP;;EPh!NzKX2uWSH8&7mxq(F_Qf!=mcAI+@-;1Wq?WI0rP#72 zhar1aOJkqq3!22T(UvV}tqkyt^(;<4TS7|axcB~FIyy8u%~td2x+>HeHb?*U#r}j4 zk2g03e0EwJ8~7>On_Kh=e@~vYwl;*=+U#s~HnuvQ7QAh3wx0Z#_^)q&fB0WT@6qXl zt{qB0ajMkI75gNZef(WKbhci?rjuV`Fp>FY!Urd^(qDXiJ;s z(?BL)Ep3=j(L70}-L6f;PW{&{eIIUrAI1Q&5l88zf&2-TvYxtq%-;C+Olwjcf0dJ8Vqc zp|_Ycg2p5GUweZ-_L(C|>#Kmi0%pqGec_ z$*<q$$jKubn2IOyax7nBhMvUBTltcb z_9Wi^L*GXK^VDp-3UXuL0x-QFUYjTd3cjI@F6 z^aC+L7SmCT>;u_QHme6N><9*u)AgmO#&wW+w?VFaePmiG&|Ch^&DgcBkBm|7mPCnr zAswm{Ir(-H7qmuT8xhz>%8jQ#8?jKbCo=&K*)KPx9DMuEr;F^Z%Vd+nBwLyk5+`}` zBwwK9OOz!dC0(Wzn1=#*-lR+GYnjV?V;+)kSXrtTdUiOw``P{+v~ zi+V(l@mI^iqcnIW<$9fgq)uAm_wVr2SH-ZbjQrZmw-|0LEf+t{KqZ&$SdWmy_NxL2 zQ6;tKcL6Lr^`=qr3|yz5xM_!v+6urMWf@f{fSAklsj*B!lH(29Xo85f0kcRghqlB2 zRQ;CYt=Is>%&R}!*J82Y^sHL|!@lJ&w+WFU&tjB_STQ^!n_a=;9vSz?I5eHN%T?rPVL&849FLiEzW#T9%Rd=A^BKr039ozxRM%Mk3uGRrH&>1CE7H0Aer zc9s_}UKGX16JL4@6_a7shC^hEI&;?|;`1U|rDWooSFc_b$BE`dtck@*tSHLuU0Z<` zrs!lD^DhfGk{OBG7s4;ZhBk`U_max9$-2ue842iEg2aT*8G~OsJS&+8A_N-HHjQY{ zjqm&|1F$|r$<>vOqZVG2wJ1Ulxm?Knovi^*hatUS&@}E6k1vmjBcGU3A;ZnwVA3ss z#_66#B7`&-)mrX1p0$<&+d8W*eR(0VJJpvL^tJbVq!s7!)FXX?ym{?wHwQR&dHGVZ zW^iH5HTFU4mu#uf{a2EO2eA z>a+^g$w$buYUmGtl73RQ(%&d}Gc>jW^E8Eq+W)OTh>bI=mk zj44t@a8@sAsr*4ZrPXdakXZ_xa$kK8PGap)bc*1tR*YKD+U-sTuH2`tqJ*DXs!C9>s z-A$b>+Z(~SuVtCh-U42J2B5(0D1j)`qkPSo*>Vt9H(Bd65i)~MOkl?Ds7cAM1WyWL zthk?x)l4j@nsIf#6$wxj$2QMK)h>#E-_|)uV|nvrykM;J`C)N9L!?=?FHYg!gUD2t zH#E8}-Bi2_VpzuqDqg-Iu6=`QvA!|Ttt@UaT`>hK<T%U7eH9U~L)+S|)-t^N53z-8R66yHDhGR|!Nq`UdvK#T^MZKR z=&H!}g18x%HZH?X%D8*rMqM0Ls1UM}R!=*5;79B%YVQx6Pl7y13nN;MELKm6pX{Ui zp-0_hR;(xm*;lroSsdYJDcrDn4VcL1Rv==Ac-vN@l)Sbw6Ww;Rk6i1ZHtA` zq!(gOo)zA8ixaUf#$Kfx6`7RLuu52o#^={0x<4=vCAtCJ>_v5{J>>)J7R0x&wwLK& z3gTK#F5GKKAoYTKO}IGrXO&)DD~|=@+Uah@aDiq;%Uz-GClXR=I6ftd( z4T>w^->2QH4ze`Fa6Z|Xl1E9YZ~0AkB?|X2LZs4I-AI)nlf3VGCG?4d7l*wcxzi(O ziW%rr9RG8OBz^f1owyi0HFlcdm&T7J zbMD2g74#evu}qwKAw*+UO3mk2h)CMS^ogmNiJiDRDIcrQ20jxlrKYj^q>p6U6@Hr= zOJQTN5rxZ3-UOKN6S82VYyCFtscl1cO@ma z0l&JFigEdQjGnsNLmD-6ZosN`lXDt9p1UneKG|%n-rC|(d6|&+OmeaSBEr@0Gvm(_k$hf2J zQa(sHY8xYxk0cpqV_9vAFirYB%emlrA%RKS%Qe_6oZOJWWUVqTG|NOvyU#o3+Li@x z5A)JNyT3=AAqGX39Kx!)z6kuv9G-Tc{i>+FY)UI)2Ax95_uN za~|*{7Zt}@!Ymd@f@s=Ms~ns$viK+mEJivllop@Iw}|;|OS_yj6((07 z&`{a;kEVj_ee%|mRw{sbPiPuIkriHbV`>h1d?DC-;-fnxgHsx=z57pY|82M&n^7YD zYU=&)2`w>+X56Td54cKY^3*s5oN9b&rP58>O{lx)em4u+>Wxx@P9~aWq*xXL3+O+? z`k|_nFn+|W9|^eFoL0@s#mO~&B%ot^{nFD^@PdYqRPYtrkY)8K#jCv(InU^kijZsb zh^_$FMi07GS4e;?*wqal<{jZNCQ7|1U1!@>!mZP66+lupht_i7c69%*AKbX&jT_u7 zLVsESQIEV)bOE##DyQ%BxR$lr9)!)nAB@}(rZ!$qSAaxHHQNQyR;cDiEUS^CQ2;U5 zHlK>4FZRN0@ZR*=7xYf>g^*o(wB27!@4Q)a;7GaLgsCX{p0S^Q7DfI$ z4g7HC20k|mHii6i+Y7xyW51Q!w9Tb>kL`NOt2SYE{D`g}Lgu`7h7)hP{X+i2kn2|k zD5uqED-SOvG%u+x=OCpO__!eM>RH3IbW0oynm5NMPX*^QL9cUAR+qMzQj=~7OP9Fm zm)XnSUE1YEuvhHAczs2o3MX=erB$UMnVfAy4p!clF9)sI&LW3Eft^AQw$3p6q*V|j zYwOaRxUYM!m!y@!gW$CEGie!KB3Sdbx6Sy`j&(t0e4nEL>|5Y*hBlkcEI_RdoXp&5 z7EmWr8S-f9i^NbF%YoAi+M(|ZbKvyqLFc?*m!8G1>3P z(T;_S;(jzAqm#H7U5I>)jbsGf5)93FC-V_#lQu(Hp{Xg=Pu^#+5}?(O`-wXcEV!um z7X5G@WCL~#z=0Fy6ul8eEZw-DX4!z7RvnjBU@H!tUyH{UcwSXvw_av+eh&Yye7)?w z@0Y#T1+$-f!)%;$Wsq-T62&jtu;oi0l*O>G@5FKJat;%&ZNOooku1250mn{gX^?qi zubS{}fs-W0E;s!^EloQ3;Xu?>dpd$v@`acOcGCGB!>Q==?(D0`o#w#@%HulLEvI-GHE=G(ExRt zZhrc8CadvRXXZ>Z(VxZ8r-KFdW^;Zk(a#<4HV3~QXUFMpv2HkaZ^i$(PHrRGai*M) z8bc?TgmY&&Zw_7P2{)KH)4Oa6akdO^z4>6&gw(%_%shP-p>j6)KCGdjFYKLce~z+nHvZU#VAIg9rZ12hwmD*0F$f_ zmm}v)MY>ds>}6-_zMQ!Ct#z+zUaW=$%sUV_K??W~(uK?EX6GGzm4J=iQXf0Sl~*69 z6O^~nr@+UF{^*98P|;jD_EVWZ!-#%I9^r z!~<)&O+m3)+navK09R5hRwvgwx{(NSfyt~?`oP*)RyjO8xoBzi%degivnEDrccG4= zyoDYWX+I*E9zlDTjl5F$68D63+1g3~*>Z*N zUQYmJtxWjxNiMiWK7)Gd(!>|7Ct$OdrVQ|ur6~h4b7p1LI&D(P``fc%)7BIomn2Ho zQkgM~`HN%*QttAY(u^YO;}W!t1u}`0wLT^xm#=zRL%4k1Dt#|Np;m|1W)58l7gV`E;H9znX*p`m%pQh{v0o0zNyfjSc)1 z?aeLvBx7~E^F)ZP&CXV5W3%&k3!XjM+G_om_^)q&fB4_}qq2A;U?&#DVD`0$7^-$@s1= ze58Hrg|6`C0`C|Tp*If^H*m2IqP-!GoI9#hSG@5)0k#u>)DwLafx-;}a?}+wf3}!W z-_Yc$))2c?+8sI58^FQJ+yWMUqMxbfPuaZ}swF3>jS$Z7#;)+MWu+0m8qTn-b8q5` z58fE|2vmsJXol55UWdtdm(J}vDJ!XOWFDuqS4vqiUsfcCH%ArY;mny2 zMq@m}v7hrC`P8474;3#~%H;>lpyK@CX#ec$aR2!2`8(0sYL(U>iAm@Vu(!%Q-QFyw z13K-{OpUxq{rS=NhQKx6oJMnp!K$_A{35}D@;RObXeVI21=qz_Wz-v7oC)-+*Sp2>;fBHqd6#t|Hoqx*luGC8c-I1q0h&A9!_&5AXm;TF7cI|)p z$?O2Lli`1z&HBd1?{)aPS#RNIt1dQwR~=12olbp&UWsQKzy{f>S!vRRt#jb-hN6Tno0+&8*v8HVIa}2$MLsh5n`jBB+V5R zTZva2^$rt!l6VE3)7G71ziQVvxW!xztB#wUdZ#1nDB3pS26WYitfbh8y)$Ylwqoy~ zGqz+k#go_wLEk=>^%Tz%11v|cU2nG&HQlIhK9<8CtLSE{zPTk|#q0T`zPTx1Z6%tp zxglT0YPr#_Z+7IXcqO0KH`|hLxQ;l-}~I& zx4##OeyY2<*xc4(t)0&6p!hhGunxU=#b0Y>xfp=JzuZR{@rXd5msv#+j~MWIdDjVs z-V|ixqX_-E?2eQ*b7|F#mG6(N-UHCEj7L+c}98k}Bjju|59{5u}Flr0cEd>h21Be_nsP zt5nN>!B?Z!Ot6+g8poz2MbhUGH-^OILG%zXSa2~jMhiObZQ%5eVZtF7uRbAY0?=5p z)Ke3~kb2bx>_2W$5gq%}o0_Sh*UP0+Ns*CSY@N7APpRK6J-VFaC^;d3(2V_I`6EElWc%3Wi~Re*{8u?hpKNSiQvXaTG@;Lh8yb1?`{S zA6@P3AMT&;U%fv7(f*zWkW>(HKJr4)CqW{S2be(7iIypl+l%Sg4a02vpr4XAdejp30uRB9zuco$bp;g5%MOI~%Z5&hZ= zLauoYE2A_NR+3+VR$VKXA_IzCc4apsRev&D%w2(r!=z@7F$I3K{kAE-Fm~{bHfcTl z;?FNdTdv6hMV|PllAcCCf;PmuKHE#HHSv99Mo_Xcj%FbxQAk3{kCNIvv`qB?nz;u( z0ByXLeJ7h0^$Te_QLmi2@IWs1684W<`G40|EUcs-@OF(1yMskQW)yA~Yf^MXNb_~#t2Hi>n-7r8mGeCb=>H%y8UJ~$g z;fWV72^zls`OmyB!2UnPUejt1>+bcN0gfN-?#T9pJ^#y3-Y>X6;~({1-w%d(_N6i` zY6bOoxwT2Ln&P;)wKDcQeboa2)9pKB*J5u&)Oav9)|`6c7?X@MVdxVUvq#P>O~jVI z5JP8iG(DFCz?C}~_)~9SS1x^PDPLYpCpmSu2KV>!xBdVBlKp?$`S0kfp8pE5(P;^> zwefgs>q+bJlNO!-w!fYK{%4*4e*RhSdbtcD%nha@^N`DYpE7UF*BM7%-{$}4&;L*T z$=96!k2l(nasEHq-0HO3TQL9IEsz7>=Kt6DQ>TE2xd;ZUY(Hkp5k8kQh0IQo(J4AO zZGCFB>i78fn*QCmmQRY1YSX`+WyDQV&lu%N(OPXW{L>X`6+?A_)FT8YxD3<`!)f!#nL28W=+<(pLphvRYBRR!>(M z!PtoW5zJ7q2$Ph>&jotSHH&E1KSy5Oqk-Q@{qH4Za*pPod{QaGHkU;mqlhQPSd>w= zwxWNR){0Ra2mgKS6t2~fiddyqt;bZv(|8f7vOTqw9C^j?9WLToO0ANzU7~PbJxebl zCfjALh{)sXB`8tDxrnEkwMwGo7ZH=~`GcO-SFsV#m+h&n_&MC3EFyJ66_M=>oYWao zW&29gR;x+Y^Ue}(PesY^tLtQ~Hoghu&nNZ!^YXX#e^pYk{Xd&xzHkJ{lK79!jjcAu zf54Z=?TyFZ_W%C|`=1(j(bc}$?36SM{DC`M1a2q|fRt)eO#I%TQ82Hs7b8YPTeAY-skOu#XKH}X!JS{&E`aK2`(rbCBt6xw)T$@&a=|Am9 zpB8g3Ruztd98z?LRTGSdw;#!na{J-X?Jp?c!ZZdum}F$n3qlvqquEP!$UmDDcwquV zXHZg-b4)u0yrmG#PBM|$$4W5^z>*KF=9X&U&c@CFCWGdc+N!Z0kp z_#0DRht?AqM0YUv121}RlL6Tjy(koHQY_r#ACzhu1~=+-BiiF1oM)O|>z=oxK>|iM z#v+d2@Pmd1Opa0ld_=iCC1^BU3AnM&KP_SHfi&Qyz@gjN5IQ!dDUgeqhEpS*0yXy| zFwFoda5%yZ6jC98#~2_Bd>C#41Z5_^!ZQ$W;foo;n)r>e$5;xk0ix+FU9M#llQ&-v#YcHoxLB)Jp}!qC~$n}gSK=x zA7K|PLj0GGD?`*x1}=tK4E)7-DEg==sU;1#u0$;pQ~#D6-b$CR(P>vX$+WWlc!`k_%m;9d=UY-7Ycs(0|6`^g7Yo5w%2!5 zv{zrmi?6vzKe6oM!<0oAA7`z*^e%V7{d$st`cg>-tk_o)4k;U)VYi*y?XkE-! zp`>@%X{65mqO`1iam{da|I)Js3z7t(JYH7Xu$0`hH&aajU#b2^xnHCmhW+D@YJpLE zDy{li6GK}{{;2Az6<-%*sVSgSy+uWD45Q!!1IPL|5#g@y{b;sDCYP#(v)!XPySGbXM0ACxdyh!#X-? zW82XcPto4hJ8hUW9wkExjI)$z6CGh7?QioxYyQ(A+}F+jDB6!(?P&hDI~@Ph`8NN* z;{4}vhuKdTYA_Rik%*r{hvUriltnM^(6k$!n#$cwtxjLs>Psh))efJc*#VQYtel=s z-#fD8L`c>qoCmeClo<2C3>}Rq>FhLeN2XG6459=aRXz)^)Z2Bd`pSmoauOBF8emYa zD>SUe^ClQ||-Q1!>3kKp%nQx0ODlFrs+m8itbo}tiX zauMziPJ{8g*-0H$P#gd0#EWawznv9Jm9)~!&JOglSmU;C<^w?Q75Zicd8H-@Aa8&^ znHp8*JSfP3RivzVv^}~W94q*5w*RNe|F0hZ**4^Vr;YM|^U3Bn`Tw=$KWcybq)vgx zhaNf+@GKY7{JFK+ifwSb)Zj0?;#x8E4XkPl4Ixe z6!ufSlZ&(6eRFFVf1cu4$~)ysif|5H6BfzPwzbIiGO_!)8BX?Q+*gu zVB3e*Nt3cVs3<)K}$ zqc7F8pU)g%+Sd!rqihlS=!FYs9Q7IJ0fctZ^{$v^#d_Xfgm?V#cVRNsbG_tQtmfDt zkwqiM=*YBRK>w3Y%3oFfZ)|PAo`0*;ZasPO82*Ry|MBCkZ}R^u%6~cTmidpRKg#=A z;NJw!WJ1aj2!e3t2EL&E%{5Gax_p2rNcm5>FJbP^-6>kBUI)On&Q$!(9r>=P_W38S z1$gE7lvjdUT_{xJFSe41YUWB(qqu_<61!vX8X7Vb$L?YRwW#(7(`_&G2uZFg+zZ?W zP_P0_KUc*I7X0fP-su~=@SbjQpjoEgOa?dJc-$N~DHSmOVi(630(KTn6FAI;vy*-rC#|6JQo{o$xrejs)A($UW4)w_f9Ug_CWT*cuXjxV{D zuB&8qg7Gf7bKrLp`57W#ny5nJCSkV_mQ#7DPGAHx&7JJ`-NS?Z_wdWOlq0+PWb`rI3@|drh-o=wX;de}Na7gf4o&&haj8ic>*oJqI-)9+U~n-XjTf z-&6ia5st`+44BiX5`BL@GK*FfLIkr6B&4r1VPqIx9C=|5Q`Fs(QSH7cRocys#$`nh zQYw@Hs7}S`RIG(Oap2ZNUk2+AN1v!GHRMdWqNnUYz)>c3;QA}%`Z_C49OiI^x?O!R znO)&=M*Vv1+=MkF-s6YEgX6#1G;7ZV6$F(AyswEaSthUA`0r#dRHwQ&_OfkLhdGXQ2Afs{}(zTF z!~@GYEi!amgDFyh1S$e363tbKuD}ZTdaJqswB%`t^4Ez8+gm`(=r|A9PU?HuuB7h1p*4Mm9=XB@%{OsU$X?z{Hm@F49 zgwM;gKb|>r?8~cxznF5OR{J?BcJx%LAaV*rKhY-&C|;#hoUQnX!d4nK7J;F&@0{-( z9-izw%JFS+=aoiSYheE~#E~U}sU#rJgy>lIkK+y)yye8{iHS?_+L-glAQ&DAmIPqz@#N6wk z11)mVK{Qf0aMu{FfM@@vN*_MQzJyM5Cn1JWQ+X}%6EGlF;1>~MCgK@zq6-?^fJ|D@ zO^sK^qn9w=XRvzg?_Qm}{_FnkIo3tC!kO!2xtgu0_Zose95v4AZ1m=Ae_zaLJ7Dt= zqgi;=NM|^toda(fFoi7&2P|m}qJ$X+$sab_yAAICAW^b)8>Z6bPhqxccF3V%`#@n{xE4xntvTFPjlL(|CO&qgD`1>+Ui z;BW~aSZsgiS29JBe{KkwsT4o5ga0G+Kb4T+YwCX+?eGJzNkPv+LImgir??70h8wJf-A)Xr7m-1c=&!!?D#sZl-GP6+3;tz)XSVoJ2 z={ZvJW29#L2+5ThXQN##d-4^{;*rdq!5x^NI%BWDPxnth8up(T_Ph$*DCz=tv~&Ta zGj;de*?eSNNQ%vpVCbe@t<@LPl&2D2ws)UocXZz=o-79O(&FI+^(_DVdYbEdl*_{M z*smwzG3sey6)N?#?c~Yzx=B8^d=cmpi38XT!FEaZR$aE+ermfgEM{mU;b2B=6b-qW$OGqV*xp~-b`|MdLbFS@Gd(m;*$=+sIV?q1I)XdXlAYawjAK)1k}dQ*8~ zA+;R3$k{F)$4cJVapwDT>hx%+yhz^l_y&kv*AII-D8DrvX@hI&S**n9N)#f|Q*t1z zs@TVrfo?@UAQ!VJ+|_uD+-$!9?E%_Uj^-$StLb^G+*G9IAFt-037V)#LoX>5*=}`1 z{}dhcs>A-Qjx2IT<5nxHL5Jr&U80xTGmbs`D&G%9#l*$Zl}T7$+!2=}Sj#$YhoXkj zPes}gb+gEsd&omC$dt{&W;;W=AslxcH2rbIE*V)}Q6on$)}hbs{-IzM*&tYd+#skc zSr79Ct0ul5)``eV{6bXW8)$q~@j5kuo~qE77&QTN4{!173cZGKB5pIJcjSbcv#Lz3 zR>u3E_MO4V45QiM;bxe+97HR8H(owo*;mP^8|$rRPI|iZQ57glq46Tsnfk0K3FN%)VjXTwfDu%}e97x9~k3st7MPLBIhRx*FQdMS7?>F1x@*>l^cqJNLK9O5W z-Vh}zv^QXzF&tWiaX-RjzsK7k|kz-Js{r?f5|BB&+XI# zQ^xbpZKR=RwJK09NLZ#z6W=HW*9e?lst3)2>T)hiY4Faw8I8#p~Vyy#m(xm?*?j==f&j zd+3j4-WEnp=F7rVK+5UPvA#1brh%!x(9HAua`^@vffu0t=L)2>H@M9fwq&-XmvUcE z(_WXYI?*Ci_rBgTqiXv9-Tx z5Q%i7I|$j03v-vMf=>n!Ki-Es-5VH(z>~%5m0EmJMz6pH`+C zey_9Bw7Pf&^gEeoqFSNc4RrQ|tTi76{^Djt)_!@zAA%nmSt6FAbO;5v%O*Ig72a?0 zM|itl7<&f0OA9Rhuv>AFS_~u2#$X}dc37K>%*8U zqKq<9mDKBVvYK79o;th|%fSfCh%sBWnq?+7#}AuTD3_>ITZgGCu3VQ z`9fGJ=koQ$Nbe{A&6mbF$JepF*8)C$SZ$p-lsDsSKT`1Vd75;;qx3>(nyKVu@38k@ zvV87NWACLz&-X*x_t7xO%Kn8vxU;*J7sm&OuPU{qrmFQSQljYK5SFxX(f28N=-id6 zovq7Bl`U;A6kRAvowOig zlzOyO&dmh|wd59En2Q@_v%l;uvO(RSj_*h(mSxc1mL^1kwqCf@IVa3_f9#9KD~ZAC zSSiI;5$ju>b1tpDcr?Y8(Q9bc^(akz-yJyU%6#hz+S6$Ocq{Kk<_0moZ(`u4KBQO^ ze1%5sn%v4mZ}}z#y{j>Ntf;fuTa%rRP)BK|nF|z^RI34?E<*1kIvC>!5k+zwKp4w} zP=&TFUqzN!L`r!Uk5ZncLNqAdl3_Jb(iZ9^1$4}4p)NkRl?XMe&_VW?;&WDobN5`) z1V=ZU+mQ#FI{6!TX$K<*gDUXep4f<{^)zA{jd*N+`~; z_o*r}Ei!4x3yGr(oY2p6xFT_gkY;q!OhejHG=h3UYNjGlWgl#`t=(JJxrf;UDcexG zc${|*d$>cU#2w{AA5$s)(H>6k7wuV-nPrRbvqu+X^PsHnpeKtAjxgiCgn8Oz zo`=f%GC4Oorw5@N9gz7UyCF(WQF78E)fJJwSrUnMz3~&@94h!j*<7JBA{xA%jb(9` zv5{sD=VM&(rP>CsWv8BjgbG+hRfm0a-6wSkfy0dS#e31c=F15oa26qs5iCqfh7@MH zdZYiil-$sFi!mQr#%zBXy&E%XTOFJ*-zHM1#);YPMOkbrJwA}7@K_n<0xSvcClFP` zn#H|_H!IGc>0)vM@a|Bb<>F6r?6S=0`ovawM*u6MQpu|j=hN`78I(_!VMV(|F&!=j zz(wKp0t1(PDvOVK@w7AUBVam1fmUa~?rJ5PwY#|ZGGyI%mdz<$tQpBRfAkk(5-A0S z8X^1BOukvQ6%gHn(Md4{A5hO2mm(O7W8ChQmbvh*7N^DW-HOV5hNWg_*n{39vzOh4 zb$Nb_P2*0~)z?yl+GswOC(~K(8`)!KfZcoSI{72z=q|py-&n0U9C3%I{2n(t;0yJ< z^pDBza{~C|dYdda_v`3;a4a?EzCCA(Gh3K}?tL@$$*1|wJhvsGg<1k;e2a#zDgACT zJSkG$c(U9o9_9E|a6sF~ah-y}ViwM{Qp`v85qH_b;s)Kl# zHKYAi(l0c&APza$U1bNa7heyPo9LI(R#N(4$n;hfSpzm3-T2Uw?}vh}O2D&LclKSS zUgbPfHBBNr<)^(rP3+ClfyR)gQJ(m?fsaqfzss=vCfdhB#5(bdgHY;$+x)&uwX0_} z=9k2-huu5Wcxm2Aj5d1wW{>s7>~lt%1AU-xVVNT@;v(JG_z&y8i&=K(k#lr*@4@SW z-Iwho`z1ReWpf<06Dqr+gpn)$x-y`!#UD=}q_eWIMP}Xc*q=5qB2y(7Y^e&_DfyquP)CwFvV2L3@ub7rKbYcw;^5z2&+8s*1-VZ79r&Ht%pkC6d1dZeEv=2>Y& zztaj(snlsD)4>~dYx7myrfsBCv4WXQoE2i4OtfTZQ>-F(gp*N|&kJ<2s-BE@N`yP5 zL_6tDwpNEyEAd?JgG=qin>XjDrA|54kBK-bqtR(mR7M_u%^k!?-|Ro1YyXMKe^5i3 zpZb%poBws|G39^V+T84P+HK1J{AA;s{QoL{YQEygU)_2`P=hu)W$WpPHv9NkawiBq z?*Hz|82GD-&XYRQ~I~_4F7G@zfPZ?yLBez@I#0GeM+x7 z`0q0!^^Ab~{QPk}3*IEvaja5uYL(gwCM8ieiJ*bf+Ms_2`0r!$c^bSVwF*iW{C{$- zR%M3vFy*<`zy!+1F#UNdJdg-Z(_RDsf)QLhXS)8Q@&Tq3);VvP>aBA3R{KWJvn}J@YdAe z^%I?4kX+I4U^6^Ihbi2^?i}|H#4bgYyE4T%6MnEDvc2=Y-K%$?ZtkD;vgo|v!-nSQ zRbBYnxyuQ|#RRs+@-1fcG86i}+xcPts&{^Na11pR?JU|8cj99L2g)idR6%0syCG?D z?qDo~;QC-@ajXtEG*pSu=M!s~&X2ARj;XlwgQNXS zTAVW@BKBtQs<(e`_Y*(U#KFpV+Q*LMvGoV0a$S{U3qJeueFo@i^pQ;$Y3INU!Pw_s$ zOggx%8FiFI-|ilrW>t-13__O)r%a9AogSv=%$^(p)W)BrHD>2{@8l?}Ee>8?7OVZc z(~HY=I@!f*`JrYUwul_q)7wLb!r9~ibLxxg?Z{V?ulAP&8K7}|l1&5Jc?ERH3ABnQ z+L)3CcZGJhQzdJuGZ_jvJm{Tg7XcgNv47*i-rcI}Uy|hB?w=o?ygfM1r8T=HwS0Azje>?wQa{iyL|24hoSJeO7Pc|t3>yyo` zRvQ3td3w_NrvH77zyE!DoUzO)HSP~o;*8Ri4)=K)+#*9u`(LZRrKv_zd;7mpceAuC zQr-TIikm$bq~2CYYctCvrR_c{Ta3uP^)$pgZ-m^yPxH$DJ?qy4kpcYv|;`rz>3{70<*n}hS?{a#PJIXM$M z0`%4MgWZe6oilNIadvvr+izlkDQnjc^7@jlr@~Y7p*wdx%<>EH=s6{?Es`qP!1X>N zThUDu%ZCU%bL<1pVFP8DJ@?>qT;5>iuZvr}UrUBMi;Lb4RsSM%ZrpBUG#5WL8euRPdcn)RgR@`oC+_lJ;x%6M z>&6M`b9z1FPrt#_>leI~ivQs8EP$!@>E-F!{+okK0z}m`8gm4e?4>iARFiZ5GxAnbx*B8_=Lh29Pafd_O) zn0H1crSXT<-E5iwPKCZI(;dUXO?l|UChUQD$M3A7c?=z(gSX9bHZqQq4Q>{A8CkPT z?s>4*&BdpOs7{c|ekIXgicfc#Jb}X9jTbK;;uYs24*$}w2wlTeqz3LdRtLhg3fGTg zWvtN7L@8;FOtvqzX*}fjD^}uK#Yz@8ij_~wGE`e@9|%Ipg7NPG-5`T^9K+lj^5s)= zukVe$`5kcDIP`J;`!`d(6vM^4&Lw}yRyCQ7H5VRFOOcXudn@GJb#{SXS|j1HpYJ2 zKdoQp5953ERew`o6VWloWsl*(x9$hivmu;hPi%*k3 zjPKD`{Y`x#PFtPH4E~9K)!)-6C25xnlfP4=RY$51(8voO3JcC|YU%y%Vdxa&o z=08D*6|JyzHIXjf9!PbO4+QSNE8^9kI-u8n0(G;ksNjvJk{V!$3O4d8rAp8N>sRYH ze}CDoL>(E;XE$^PWuk_Do8|I6aAsmHn25$TX;j!+bX!0zpDVB?+G0brx60)hR2kP2 z*qgjud-%`Y-Ns<>yLh;_|E8xQngh}B^)K=8@Zfb%yjmZ+AJ?Y~7>UlSKeg9TquYsY zU|dYSe=MZlNZFgHW#~={s=N15Ym`O=IVk2pBT@&^#sYdJr;fRGX`?ds{SSNrqfg1K z1*+vRxRO`BQ04h)mbnI3SfiJ62j3iEE#G+Z_D;4^utC0_NCb#>FH*{`J&c;r9Q2#0 zJmlgc{@~y8`YCsa+)qlxd2knNB_`o_ys6G=${L`|GW7Rma}8M*mGGAjTks8g!p%UU^m z4~gSy;g@u6Fy?GCLt1YA;6t;_ilSnF?6>B> z)*t=r|5K6zKGh-sf?EPU$HGzQ1B;?%BAS(;Q-YS;5B)K0oSS8mGG&|hcXuPcr~Vv_ z+`$KAXbSWipjg7I)x7KQW#!?)n;w9}zwrH^@bP=MQWo;sWUR1whzB;$1?_BvQ4BFK zaINB4Lxx`qe7g=sSps@@_hkj1Rpd`H=9RU`B{3;vO=SHlIEq%wutcPTWR$3oBIcH_ z{9q#u?x}a{(kOBZlFP;Guu<~ikj%v^Q+U33v48SLg^FKY0q*YA71RZ#gfz7xfR?_E zeG}Utg*8E8iv!}`1nvw;*so(^S$EJ|XjNNoBG`C>C}9(OAif@y?O~;a>9D(4uCH-49~Cae5jt2mCOWl*axV%CoG#N!&w(kKF(zA1#weI=L)i6OATU{%%(X@T2N< z%Tf$rz1GKGe|<2Ur8OTOl}&x&;oEGMza6<`v}(ZmJER;^P+1JOqyv*O-*4y!)0dSU zW!8JN_Gzu6g#4P(@|*em4qL7u#reU>E*@IsbR0={?yH<`N@1Zy*bvXYfztb}d5 z!uGywr*e-WeucQk|8jE8{4waL_ z^z@{6a7kB*9`tr2o*asGcRrwli1iQB9c73a;)I|UT@jwXFMNFw2J5n;*YPA6mSvb` z%~8CGW!XX~jAX^ZwJ9nr4>4**d#V}C=VsM{NRvh?1`#o6vYXs_ko{+@*R zr~LZ+&-8V;^ScEspT16gy8C-ue%t%K%-eswvkX!R*&><`WkE(J)ba4{_#D<2Ie3NL=ubabhxl>=!~&KqNR zm&H{n?kMFVav4fYTn`NUwfHmXreZw19{bMx50U8)L~k)Y>Dg{8q|hn96?9mslhz$L zoTdt!-{fvtOR4vo)eoN|SD@&@C@3gZpe1h))rXxqLi{0u7UNojK?op1j{b!@I4kYtEW@@sjSj28o3q z@N4b2wVH-LKe;$PmCy#}U&PwZn)tJ*;*W*^IyKQn0ukor$ywE{UjtsX>Jt6$s@Jue z_}9Ng^*i|lA8;i91oldzS`+`22`6Q)NecI-Op~3h$1=wxy6gdQyhCa1-?|7^tE*-S zN>dJH%>Bh|#xK#ePqu?!qh??2P^cxS_!w%AmyYVy<)PdsNBkJ+UR3Mmy86j`?iviS z9&SC-wzM>Tzm^G06IRR0l!xh}G6}dy!_E+tNkBIZJ1!>E)vLssnfeSydNiaxf}Y;W zSGq<<57hFs*J*eWCu-bn$Ds;rzf(+Yv0E?j$~18o3lJ)U{ZbfmW@&>k{+_Wx9Q`T zgR#h^moc(A7;Y}T_?SyAXW0lV=f-;vu_Ev_##p&kt~SUDD`S*nuZs+`jk3t6SZJVa z6gQvZJ%^gTPVYU?jQ%x-nY~?C8)U}G7-H*XkpVUl7J1YP4X%mc=20skw+lZ@a)b7% zCMO(nxGum9rW7}91caW;3{i29=Ch^zpiM$HW7r;QXt;42FQ%BKTKRcPXKlm1TKY=UhxP{6uD#kdm(??*X6a`{-cZn#dX}M_A^7hr zNRb>Ci43vfe9^zsv`792+%C#Xce6zrx`?Lp(4E6jXM4^aYNPw1NXgd{f&{nG15I4DaiyB9+AZYc>``_U?LjN*(mW+{#a=Mq9BZABM?FAAxJz* zAA>m9B8izX3UM$uiCJVFNl^!)$db<(0nY3C$RPGyJ_}#kPgfrkBYdUM$QbbU_#|KC zj8X!4kwqnM#1g=67M0aUPoH$@P#1m5wM?2;7^69;d~su1h6ZPb)+`%E6IPF4%ER>0 zO9C#^uro$23FxL_7Z@$;G=ja#BHNN-a*8|;=`_mpL|l9LPyY7%8XZrDi~h?>`2GLk zhd=*Z{YjL5dGzzowU@^C=A(z-D}Xk<=*Ysqub6HjR4cP=T{T(EL;5U3X$DkIkw2F$ zI4;?E#KkAPqP&|XUm}rkiehF*??PmD3$~nsZ}7Z+rr6$$7AcY|2H?&X@|HVw#Y5mq z7fQOijB~AO6!KAOs+fn!w+OwKG}$4>UtIg+v40z4bb~*oi&DkktN1}aTL1c&SkRZo z)S6v?@0K3`#>19)_$cOkPVOd^pV3dRqFj?3P(B?AqI+NRd-PR*Q(xpKf3Qm+`OeA? zn{@e5&bmap+FU!zrkCQxz){Y)yr+@C2&Qdu5v2yk}5 zhM?IL=rM#xus?~)r-%5wg2y?PPt9gU{1Wrad-*V;M@MaEbd|RlJD7DC{vGLiF)2Do z&Kiup5aJjw2*evRWymi@+5jQ;^%27G&ckYCd*>-xC|#Sdwp?-J+*krc)g`zlO6p`& z)*o_vgm%3fl4BG?Pd?xm3BYb^mVl#@;VDl9^^50Mw%DRW$z)^y)qJ%6uYaxmy@|JU znUbvnB2v*t&<4nkvKIB*ySv-p!`%A*hJKu$;;++F{+T+L03h{w8j6}u2^{qz4T&dJ z0)-zlLNvtyEc#)*G$xn=F&;6XIne;f{K)_~>EH!^@BP_-Z~V5QMx%X6Dd6D)2Jo z#jUa2x#p`wrc&8_vD?g1m`k2R3O{MFkSm`&wmz zdZhC>V_T>`6$&5^n`P2dU#^AQ|3@i7wFmMWBjH#1VvV3*zg%Mg`Shp%gP+?!w;%l6 zVF*~(e%|1(doS0vZ`QbK3)!fOicyE!RAhKy;CK`|-XA-d7>C-OR&A>ABBR1T*NCuH zJF3P)*ZJofSClEsS}vf%g1!wqN^MiIVlbz5W=vd??q;aDq$d*qeChaypn<0?J6JWR%h_-;Qv( z@3P`aQ{m;`$+M<0fF;rFx4*|-4hgzK{vN!d$_EYiALuwj&h{Ma&x>PxblS%Ej!~(O zT*x+C|F8${m4*C39AXj>^so|*%~n%lwd_@n%GwF+b_*tKvY^hl00p42`dx#%$-@W+C^+?HQIU`XHfEw#uJK0m{jrM zYnmZ}78+JCVF!Tjj<_z|y5g4NtN8*pG%`(Za2|RTT9lX>(imZF7)SAbj$Ysvm1f~+ z;t$22KgIT#h6|~Rd?TK2uG?_sZ~Om0bpM}`|Kp1$fLoIPt+Ul>$^0MfC-8^)KeoQ* z|M)t8!|B+_gQKi891yOY)ls(%{NZBYQuYNE!^VnjvkWB4JG-!vI5@BBV6+-OQd&EC z(N&dbpjW47CvUHIccZVTr}+Kt?(Wt3+0Nd<`N7HY&LPq5?Xu4@{WwG4<%?tdZl#uk z-?UMXzpF{Nx}OZcx?g1Vj!q8_VRP|rfA??IpHe-weyNv#D(sc@OI`eAxNHEffMP%) zflXF5b$3^9*BB_bF3KgSP-V3L&#Gck!Ghi7stE3>gW0i)ME7b&^Lt#>9nmbptthR z53{ool+52!7wXKVTl^dc>To9?cJ0Z<`RT=Z zwO0P$X8%oD|AR?$@OAHh+1k+ef3;gJT>o2}o8Q*|uXq2K9(U0dyZjxd(afJMW?$&O zFSRIKw%h9mm>PK+dIM{{s8DgRj8@bYOK(&zR&CEh(^pqr@~3LuLQfIn;tchC7q(xR zQ--dPVv2jt+({uOk>6uBCr!3Da$ygp-Wla_w!PT6{wKIehDk%O)Y zHHy(Uu$D{qW0_;^6uYKck?$(?PCeGf=z>QAJ#_l+*eanOA!C&ooO=Ao@ur8qKeNE? z3$Uz)t4pvlZY_y-{%w6Q_T1_G3KJ^UaZ60!YGv8mx6jL$P-*fS5(en=5~gVEFXnT9 zsxE?rq6}C?N?(RaNg7493h!$Mr5ayKq%se+x+Nn0<9?5FJ6eqsbnB{0mS|wLCD!pt zDpJcv`aSC2JrK=R>a+jI@lTikU-kY+vC--n@_&ouf9Ko%FaHMlkM}?Bf0F)tc-tds zW&^z<=SxB35-?tkLbP?-o{EN&YH7m%fR5e}?p6jm)SwVcgdMbamfEl%o{= zdHBjGC<{|mM0sBanD_PRGs^hdqJP_HE=M{SQ;#yBQvOl#-U;#6WKab#2f-=kQwS-M z>fFb@Vx4k=)@4pt&h~F4edT0CDlIF%^yVR@O&L&nL(YqYk`9BA@wmqgC|~7l5zPEh zX1i6#Zr3iQZ$j;{e@AHv9MDIGbz`%NJwy2u`{;_HyACbw9vab9r;+moy!I%ik~5X4 zeV;OxreP8Y=A4SUAWjqyRu;3FACR@zYGXYrgRa*`|0tPA)#`5`5%st_AD~>{Smz-C z&OM6AhAyKtxC6w4I_dOJK6#Hs9H5HPqo8_IW}zBzGS)ezuJnBL?1-8O>~o&O5_H^- z0ptR6w*W88)>5DL>7*1(UU+kdQ%Z7WOr9V=u<4x|a47HqkH|Tb2@h(;3E@d}`s#kd zvO?^Fc*fi&F{zpe=((oa2F$%X_O7A0p*VII6K5)_{lRn_dJ`AP8e#tT0#;4h_JGJ9 zxPg&SOVw9q#_g-@TkJc4Cxz2%zcG_VE3!m2djhJ&%jr|E2aO%!`U^{q2Nj=s4$#;E z#w8k|kZGcZ%|C8xqTP}6nIS~qn_{{HsLLeGo3(OErOw+GW-X>g$)2|bXDuF7Et$8O zv$mLVHy?Rc`g&zB0~lp28g*OM z(CsM^4IVQGWA-P>WurInrBQa{@gia}N(L;au*pxclB05#i>+b?t-+Kaqsg_)r!*l7 z@JeAo%y%povfKxBefIr+^6Kb-U}w&LN{*i=-Q!p4;ptJbyK{K({P^_fV5gB0F&ny* zdLY?K$-g0P_i75qrB(R~5x(=88QjPBRkS=0<^H2TnA9(-Ax~r@Ip3ZqPRqP60 zMZ}MUL_X!ppB$C%NW#F4KlxE-KUiCTvQSA}HzuyA9$u|Dzprz?jJVI(<_ooj|Gb}H z%r8l=EK!Ybb`%dgApgl`y)^t?kg`S!Be#tyzVcp7zAH`|uG>`BCROt|zox&S7GQ<- zP>BHhoG=g%P06g^HzmzOxOUf{0_Btbe6CJA&JEN2{s8Hr@fu1MyrBnp<9DpeXF82c z*6yT~V#9f$ODSF>y+6%+bG67yG`K-|=Z$X7OLv1ZUaA`R!E0J#`p{SJJF|5l!KRK0 zfR*jJu2R)_A5kItZ;gY?zniuAX5#MHU{nKQ1!+E9-jvVPCS5};deFV}3&n`*tReSu75;xU) z!Tth-QR_9Q6Ij+h02H=*N`EUc=biaGqevdNyx0%aYqlD&g}|lu{>3CrVs2Gr>Zj3+ zALC_`8f?)_CY*g#EuVVwW`=|(?KW?h z&aC5%>DDb__!6&q$~hyPVe)f_{cwrx$PP-0p}AS-QCxR`KqCY;O?j%w337^j~$)#y=?ZP6hTr)lVnOLeP7d`&i-=2`y+0wLv} zgC<$$bxp+KnIa7;Vkl1YasFbG&N2hy&MVGKT~_xMg@=F&QBREIm!^;l{oG-GfJkF3$?a&9t}dxbo z`)^!fy(wG%==fuwQ`%ux7`WT<1*_~9`{+5aC!aat zG<#d(u>7BS^4kT1>rf)>*32|7P3#1>XFzSI*13Pc?CB`7&8x+Q=t-d;*!;4_V=r~K z&+I<~mnSrQr#(fCpN-e+VU5e$7*d%@j27j+F*Ub{Q2`ZHP2JO=efp29I>M&k0>h*23 zvT13ByUbZZo2Z2={mevTn=}NYTl!sVs8*N!uig*R7!B`tplR+>^R) zX;074r>raA8f94v{D`b7xvApaM=vQkozthum;I)drT3qCVcj;JrR5QRrj_MJR#*Rk z)r0?8hzEXT8{cjx|<0L(+(_X$=ngI{7iDB2qsnLRgao>+0yX>nVqjdYFa^(I$lu zlakbuLLNy)E=frc32(!E4&Ywsx0F0}3u-}52JCJ` zES*_4Oa3Wo`JdV(+E^%eZax^*CGwxnCon(FuJ{&OmA!%@8YPEnGcDBB4^fpzpmcB+ z$>HU8q>4Mf8xG8B^0Qkhx?94Kq#2Kr?}U@E?L&1Ro})m(sPf?e*fBXG-`Vgqa_Kv+ z))a=Rw)iVK9cpQQIO zNfT(Guk%WsxWA?MCwQd(!}n5uK5BE(xS+IL6LT$fmdjbJ3EgQ`2k7vjzwm|82Xe3Q zXj{&}-<@%D*sJYP9%@&bfLc+A*i~}IPQLS zT_%*tp418Ct0?z%+hckvxAlp++w1;t<^KK1c7>mt%l<@HXVe02F{f6UH?QxliPa|2 zQ+-Gqk-{|UsVUHC?OSggA8u*b8>1bC)9}O_rs-boOJ|r)qddFLk;J z;V~nWG*w*OaB8&VG-t35Me^wRB)Q0eXaQGg(JdvvrO9{v_BZ`jE43$Vn}>8r>B-R~ zc{;EkfjY9*bll6GdcW?tZ00x3dqfHpc~svef3qiUZKQ02YaS`&ku~H_5+PCgNNz2v zP7D=^oZ$(jzf$vlZ^lR&8GR!8AbV1~o6lY@KjkP)U&$Th^iVbNpX zD{arK#19FTjB{c)EXFW_jn+)ns*XVhBXx>Ddl^jD;q z@7!sn4q~s)d<{u_YcUy80VT9*trf^gzS9B#U0_T-+^gDc_4iG((H_&uBAt!Ra&6%k z&om`?jZd|mS4za|Pb}dmn3<&l_?I)c&9lb^HQm+c(0jkcOokp6%?w_#x9O^OT@fdn zYNgKQ+?qau&uRVxO6Mx{vD8_0o|z+xInk%{oj>pYx8471{(o10wEthS`S`ID|F^~d ze;a?|zx=WOe+d2CBlJI(rb;8^iA!MKgTE}P_ek){y*NPxjofc}UzlLQwLidhkRu5p zB$yaN`r*cxlV2c3@nMg!>X5#+AFw&LweCK9esH+oYHhfW_6|<>ch8Pbe`;;IkF}K1 z+VVP~#Fkd;(VaV(JM>Z#xtwdh`FH1dAvGw68j`Y`o#9n4HBTkR#06B{e@Ew1)140} zDNc?ryL-o7`fNU~ic2tbLfB&-_OB*sr&YA-Yzw9{#LGAkyFa~t&;LsvB)_cd9@#Td z`m{0{jgo#pxl#Z8vc3YpeEsO^>d9z?XWqB^6yumo_0P+fdwbu1|MF$G`=7QQ>ZCZT zanY`JTLUobw7gaa*I$#@@Jsls{>W7h(>KO3oZk?qd_O@}Nkv-nQMfqw^@&b3C|)`2 zt9xQ&X;J9l@{96SaRG?NsvZad4}X&Hsk4<2x@xPD(5Pe?{Kvawm~Gh6 z!O02l((j4Q{EyuK!THag(tqsvpM3rGV|)Iq7wXC5^*_)5Kl1$Nbyp(5OU}Cs)<_Q% zwNrpe^w}c*>6nJhYWEfUB6T~h(7@a6_=Psw-E?OoQVvi3qMKAS-Pw$n#tZ+0E&V~d zv(;(%1g}i$qwcE{j?r9lWZ zd8a5eSxwrPgAUQnYSO(K_XMeuX?SDp(b`7Ro+D!4f=#MA-fgUHu5GDLHZ~rvKYFM} zgm^z>@t#t)gg&PaVU=`INhItvCv${YzX^ctPD1`!qV`d3jK!v?1d{fAOc~nq!9YF4 z3{kV2Yn?UIhfV3jCiQ`aV*8*3m1&j$G4XsnE0w?_hHAzZoDT+Q^p5VpXg-`3s|1BK zfYD?O*!A{s^k1WY>zBQ?Vl<(c-?gl_Hh*hpVFNu_f4I5s_8_a&R9;aWdv1aS%_o@l z^=}?-e9aR#d5eit;-u>GGjeW9UUgq^524#9Eb>{I{ChDu^2N+cAGU=7Qe4lz?wYlcLE zYOYOewEC=<>niq9pX%YYDna$kY4dUKSY=vN1aqS|om!eFw4Y`3F`5qMcWZ5v=H_6K z+?4Zs(>%E>8Sz1_gc^6rwZUeidNF4WE!*JdV?O<9JFULjeRZ~bf~r8@ld{59=|(+Q zl#tT)QuR-h>vH;*QHv)xYY8rRV`}&v8lG_(CJ7=lSor`spk!tc2*(Te$<#mMb)>N( z4I8l?LVCDY0jZM=gX-coo86ENN!^JMYJW`{LBMMH)MhY|;?rb^0a0H_*&-Sm7(BQk<`hg6RYTnHGj+r4D{A>6 zzbf;TmYSbHe7lCNk%c!Nt%z%CMG*T)f4@FHJUl*nq5h{H*?7p=_2vJW^(Ie#R%{4- ze@))}ir*Z%nMgn-k?w1xp&4J|K0<+&Qv0jjH~3-0GUfB{@Kk^Q5}Z%HkS}c~M)Kl( zT9&gXKkJ{dz9cLF{j2$}Y4P2ta>GBVw_r{j|4F?(**$vRb%+1$?Cr47-Ek+xt<~FRO>W zxmxXTVEjtWGBL3DTO72I1Z3dOBvVtG8e;43qZ}(Ho6myjVV%-?qaUqGP0;OlFi5T$gydb8;yGpWB#Jw{vb zh0xj^3b;{+d!_^o#q3@k9lRkgii!eoES?UgLDIG`4*_SJkAWcp>7`=qCE3Xb-CcL} zF+NM8rVpwVUsn{Ruc`qgXJt8jTg;M2>Tu;gC{Y2-X-v?)*NSI(T_AqxG^;m^X}B1l zE3Q1X&AN=0^t3MjoFJ2I@Q7r!@S)3S=|n#j(W?9E=={aetMlh-5?Peu1JVdvYdtCJ{V@I z4Ee>j?vIC6p|x%1$~Vg1x8J16PfGS_x8HPzT9euBR{?$BB-bwr%c`;&7l zDh&^u0FyUUl(%<6Cy@ifsfVDs1Gm~b;#}Ovug+Q>y3Q(ZZ?{1C-$F*e5IX2s5f5A^eFh|O3}nHAJaGA=NT>}hq=0uUnSu`!H47i zxgx)cK0M-GO%Ai%MbzI9o!FE!sdk_GiBnfP7bF4n2K-4SzFPxKPS=8r#aY4)(qW+mYj10t8-0P3^g zTTrCtu^P-+?JiE2wz06;zrlFb`0aYD6}Y>!TKB8`w;A?>|G^9%oYxQ4El~9qyY*k) z#_D`WO(<`vV|CxcLokSB0iDI_n3Y_|j(kt)?$nhZr?sjdl_+vVMN)-M1@%s9&+j{u)kw(#@ni{x@kcedr7dPY~s^*&* zekImT@1tq_BeT9iOPocd1ssJzpBd3BC_E?uJ6(9{!~nh?%u{bRoXn=-u7C<=S`OK@ zvtbKXsEtpT9JxU7RBHp@v6n&>nH*79F+l<^(Qpb!mz6YdEb8>M54mq+!#N8vRYck9 zMFoerS@KTJKF67Qh#&?A@!0A zgZd5efr{DQWFlbH9yOi$juUP8Q+2Pu738TJagBGrQ=;SPpX}5 z2QLo&nr7Ct!{D=IikX(1bxLA0hf ztj`0wLqYAs!dF(4jbpp^f|m23AA6z7tDTB>R_7!w)7Z?zH};{PQB$#+TWP>~qiZHw zo*v-HX}ixm>n0V9OlPvnGAOT-*!@WKFz15UM3MyB0>vYe8Ns|}N)|GbLuLg_Qq93B zi1=BmUTH>}ay4X=@IQ7XL z@&cIPOxkvQ1KYm(Ame(#Gmy8`pPF^IKe<;E8MI*G(3V=RM}n0p+5Md09sDk$fAh&& zZCR-{bDU;YE?}a-5t$LztU9`;g@gztS}lfEFDPisVn4!eE;=e*2mI{Y6d=W9%XPfV zRD~DAyz21kQ&)QBkWTcg@;ZMH8)GKpVU~!fZoI(7&pV zPpA#^0UtazMlsFNymJ0hNl>$ET+NyN2x%o%J#5*8+^9F-AS;FyD}SgH zcQliOzF?B-C6hntE;!*_YDS56K5?Tn>=)avzom1NY~8n2=~x9yIszI^tdvj83!(u<5@AJ`4THjPqM5iT7Y_*RH3Mir7Fi#&!&5`A_D06 zh0_pX`vMU~THPJyY7;50$>#q{PA3icX*0S&?y(PpxmsFGk*0B*6WIu{r>uQ%Uu7(W zs%e?u)W<+qQs?SJ04&Wliv;iVY3D+1 zp}Ze-=!5H8|4>J^De}l>#M!TNI8u=N3j^Cb1WoZ=E(vpBS0e(3;=5qC5_>^jDWrj} z^AvGpkrv@7Ku~Zq9Yw1KHJy2qXDZe)O8udjfp%0dR!B|>44?nuWMxgAWTIV7)Tp_}x;lu}?eSuvYCfwX7A3c zyjNqYTAvY?opa%JsYR3)wie6E^>g{+@jCvI&qPyUKWoSBZr>)4lfO3D4M_|J5EB9BAan&+NA0XK9}j=0T?Z)KbtD?jXei+0${&N>CdHoRQjz)(E{xd z2f0dr)GTuU|L4ph|Gmr%ijDo_=g9)*D(?Y!LAP(w3DHdBX}L*23} z-i65E;kc-Ntq(kh15zb1C2H5Dlr;3XrDxaKjh;JW8dUvak0GO%y4U6zqgJY_myMm` z4>r=3FZ(O$UH6u#fe00M8TTePZEHI;m-h70`g+GeC$*jSSIs2i0*GRSRdnB}C3%p< zKjXmtUdhk+ivJ1f(qd#+mO z{--WDE7!oV2HB_>LPFnpetvMYeN)xBrHO=(W>k zPES6_$+mduKYlc5Z1uY<>Kdb4cwT(bF}mM04N{jGlIu}NTNIr7KCu?dPd{$@EF22W zqwNEg4W>#TrexUc(qROi=_!nD>^AW_M?a8SBd9Z)4&k4c1Gi*n)!YHqXgpS`SIQHE z0%mJQ@CZdx$GbnA@4YzPd6|-o^DSS?ZkIT3l{OttO2g-t zeW|0yJ74XcobT=&fqBIxjVSYUd8aFE*L?K#gr0G>lna8<<}51Eal9*r`K9(*T4kl7 zcC1s)uafR@D5_vvO?9Jgz9RtF z7MDaO<#;vh4H95Z8&JkT+R2{`N`?Qk0;w;&uZPn=MU(? z(W{rbnDFP(Vq?RY!C7dDU=E`TcjxHe9h(A36@YC8k|bcWQ5q zVmFEOg=IE1KTLUFJWcj@_V!K>j$U>5`5o(OWbPh3*p^3Hz1#ZW9nZ|G<=uxn?nSw2 z9N|Qpj9arg9CY(>tb~m>;JJc!YRS&4Y~%e7636eG^~s`KLRQy5+Xg z&CYgs0MKl@y80Z&ZuD?L=sE2=QWmitu@r|ZrI!BgZr~oSEw6_Z}%#oL5)!P2^Z4axq7uw!uzj@Pq2L4ND@xTzdO4Zba4s zv1x5qd_;a(CG9V(j%TiNuT_ch6A{-V30n%-pFQd{F6N};qC?5k4R6AY7;p;``rdE^}89p)9)9x&*-nKi7e}y~N z3b9dnPYvvgr(PFGMl*0}y2QF8yZI^-U%VIFOvrqG8IuchIab8>W&h!q{U^yvIv#9b#^zTZS>*EbWs z#Bmzo$g?%?W`hsouB*SF_h?@d$EC}7l#qs7qZ5$RGGCxIY=U7?s6_m-O;Q04QmDi^ zk7{w6U@v6`QB*a)u_imd*h&|S>Ye?$D8`PRYisxrHO3R0G3)E}I(HBfG$aB!-Ki_U zjp_v^sDt%#xUPGNme36K6_M{m`~=t?jc?d#!X|z^OFWB%ajWY=w?g4CD0Dpq7yu41 zz9!V*qLw6~*G`ZhbALY8n-9L{d*}bTe|p@$D?uf~GSuVl{uy0|oHv2lU$}F}kigUA zt_~G&5vkkY=3Xfs4q!_;FO7X)J3~2MKg-a)xTz%tgPZ`v=86<2n!L*%AoJj%VbLSZ zk*7T_pgl4NB5kE>_DU7x5EF{I4!16H*Wg?m(n^O3^WpuS(-&POr0oS%>N=cjFM@2A zrAq9&V?2u!=gsyV&&l_G(Rbm(>A+M{lv$I%vu_jJZB4kzNMev$9E8I7^^@ZA@&>yB zE6h;l znib0oTdrW@8RzR<))7{mqrE1!NHERworA;uJ-NjMqD$O*8WUhX#{JXt6hzl_`H}}q@>fg zF=G?r<8tDPTuK))z^TG$MNLJW#yb|iSK@?p&ao1h z>jgE1YZZpwcA9arc&IYpCL2xHkGPS++#&QZ9GNIk8`pPg+%yZP+>gImeC)--y8doE zK5n&xhG$9?nra58wWa>qE%K|qPv0hC-f22c3}k?u^dt(fdE1%=@z5FueK~ab!-F#+ zdCDA4j1Ve^_`0)6!De021tQqt%)i;5G z4O>Q_5P<-IX+>N1PIe|7#eBW-PX4COl4JaI`!{>b9zQ?^dQ`L`AVLl+v~i z&3^w7h|_2TY_|n^16pz~#9EQJw`sA%H(BW6kaNRunEgDU)SdDq|Bb1V?5xtjcZy9y zlC2|MX!j1*dUNgRU4*BTR$FUL@Sx+k$g(D;ax6d6F}0qX+OJ5xAhh(0VLqZHKorZA zX8=8{9{gKxGzUmrl3ixSxZ+FnkB=?9I?KXOsFoFyg{7*Z;xmnp5DpcC$9Wc@b5KN4 z!cV9coIIELbdAD_#*8h~FCD~AxlfN3IZp{}fQn$zRrje1CD3NWwG}zK3rcpanklW* zJppUIB~RP|-28EZa%2_0*8=&dgo#;`B`)lGG=woTEoL+IPRDcNJx@oqcBdu2SV>#2 zhfVEbSLmz9kGH;hpb=Au8uZJ%cYOKT{Tj5|ikSfWM6yCUZsqQtA$8r{$xG2ZYSu@Qca5$e@0 zXW7sRPt>7X^X{YA_S{o|Bh>M;V_w z4bKE%Lt>uoO_`jprA^nHu%=_s2rS~l*w+30F8OMmNkWWwd_oJA=vWiuxU6>XPzy89P1rRr+Nx|IczGkTj|gXpV9C%o;Ry)177Tm_CM~wwT?jT;aQNII^epd&&f@;+_h(65wg1!WI1_a6) zq?@pVb_t?9|MhX-;&(U_}GwGV>~5yh@vPm12Ex&IldAwD2JR$ivf{ zqVJ3ghk3O6G|?z@MvP^_)_p-;fqUI~IqZAawrJ><+Mc9okdQvPL?rEte0H6y`G!v) z348fO^=Xfbxu|rRpt4 z^N}+_1f{Jm^}2>FEvGV`IIC5tTdR+n?m;p|-zIH;j(i$P9+{Yr`W2?>T)Fk?;xonn z2}1J6?5(I2y5x-7?tVs*^%jBgvv%#%#K$IC@uRy&V);y`8{oUGzQgHdjJ58HM4xp& ztjM%LR+5RUpMbwtRFaDIi)4Z1)Fh1jGf$!5@Cah*fN(2H1qZ2?m!irkeSw;ajSXRg zg4QNhY0C`r_Y>BhnV@$RdHL$_>|pg|XZMHwGeE!Q#!tw#)H&6RC=^(OCouxf#=5kP zNO~mbbol)=D~2Jn*SNLFy38FZ;TcO+;HC%-82upMckrg&SbVc#FstJ-RrRC>;&fFu zPihEy!6C@-p`c8SGkx1>2!6lbNmty-10I4tGq}c%)C^%}%LYcY4M!k4s)^wAME6O8 zq&iGw*>HH?XKXleuZHrUgW32C#IYsE&lBi3le?B^l@M`P+6{IcDvGFu(Fv-bZv{1b z+RAQ5*>AJHwE_#yDs$H-$(NPtgG>d1A{wihCiN#V<@9ad4|1k_Nh&N>vY26}&KRu) zj_yKB-F#H*RL*Sl4YSeRNPcm0Y}sHGquAid@Eu!%TG=ojr_kH2qq7aZL$DfoH3-}z4u(#8e7BI;>pBnk<<4km!3M4@>i#lCyB8H z3H}ZDh6imoo#PM91$b;ubGUSDnmWgl&(&D3}7+0E}oco=O$+l?D zHrxBBPo3`TC|-A|y}&(x4Z>kq2`w0jec+Yy7rtJ9P_r{?iKPIGxueJaL@1l@D;{w> zMer0vr`EE*zDyL1(Ny&c!mSxjydTM+Cn8~cU}6J8~joJ*H(E!k+V)QJeKB zjzKri#jqzBtN^If5VqQB*HXbh{t=Qv$8d7PUM#4XV}AE!0tEbPzW=ShK`_OA{sZ8S zIewnhT>fJ2WxS-S*B0D)Ij^nOt??2ON#A$p8Wg}d)i`}Rf~6 zZu_ihYb}VQXf^l>wf?CN?X8dZW=|sS>`BC*eHl;omUUw{e(Wvlw(k7-p}}Fbwb(x|UoNNOLJkjMPS0QCT9Zje9O2fyzI9Fcn-0>{<)trI1@fmTV06z__@WT(6iK(jTn zq^K__k!4;7fmUbcXg(%~zH&_1symcW#z2*37VC$>mjt+!%D&<}l}|{gK#<7^d+Tww zK+*MZC6IWy2A!Q!f1c(1APBcOmk!G8>t<}F=-m$}nu&?L8J zd>|?3BuyFt>e`BUa=8k@CPcDF2Yqmj=0mQajAo=dXmet6=m^&U^;6EO`5Y3nq&=eO z3GHZ)lLZNyV)<2{U)FCT<*w6ZHv^M;w&^ym>qGoJk7KIOLbG|REXE-r=ph?J0wRc34d7qj`fcB zH`dqJ)osFk4E(@{8y2WgZBE!gv=6tJ29>4KVxZ9-E^8#GvdjY+O(3f+AUW0bYFxbM8iFskkwVHL%lMjZiZH>(%hj(+<`)2 z!1*gq4UD@;!d#WTk@NSHV#>*Qfwt=AQV0UMQbNw2kKjEZ5bFF7MZq#uM#j^}DQP_( zI49GebCNOK_P5j>7yga-#B@Hv9YjDHRHye3j?PY{N9>%?FCkNryY-sen-kMXc4<)i zR*Cn_aHn)uaLO2i7|b4c*ZDokGOY1(-B2^L9OOEv-6cp8z!9cT2{m=_(NuHc)9rW30Bl>0Ghb3my$ z?#kRAaO!C?NT``F`Z=N8Uo(se=S+s*|4#K*C*`e&@%c+1^QZUusk)492R`9GGY^kx zhYP7a{!$4RUg$63ZBt;#YLXWWfDX`QJ$xTkDC&yn z?wMAG6X=v|5T3g1aeO6!E`uL(SUA4&MosU;9nso?y{309zhfntQPeV&%R1!oaPRzG zCxe7ULvSfh66_&`!A@-{0;6W&7XoF8HqD70}i*KZ`OfK$+}_5sR-w*~VVZChil-95Qmw`FL+f~6t4r$%0a{AfkwvbAt>6^qUaniS_M7bJK5Vg+mXsR;LF)FAT28i zN(r&o@-^@S-$~zITosCMNj;Q|l|c`CS3EZA2wL3ynzV!XbBmNCRy$I6DJF2kZ}+>q zJ16_!5#$s=*G1#h`e1C*YO=q5>d!VP&EZ$Ag&aYVv}1>k0SL5i3t#&K!tQPEsqF|S z{a}nX3m35wA|aZKM@tS}Y`hKnVFQ4xpwE|x~dX%XDZmw@_;lIhoqsR1L_0Q(U)}xIi zdA#-Yqp!CfKl=J>^>%&htBrq2{^ieq{^|edWLRe1m887Kzbwh)R24!If%pZIBIn8T zTwS25a;z?1^4Guhsx`%Bu3-C^B1kArHn)|7U)~W z+Y2Oa=eQbny%2dCpR`(3jDkTCY?&Mum1KYHPqXW1Q*|xNrzhDs$3+iSkn_pmLHCTl zh5(_fOYR7?gwB|z+g_AJ&41O!o6EgC%u|ndZ?fx$J5{eJ&XiEiuSxK-9kS(L&WE!C zL!ok#hb^qkz8A6HWM<<9q10^VAuhL)uFX8V;OPkps!QC=fAn6h_RxP+(MbC=(iIjg zF7m%k)fJYkuq^B9!Xz@`d(j6xm+)wt4+|=pClZF7V1jVb14}ZLre1L(zI=98%!WA% zA@7L#-K9`Pez0vyb;-xeDTb7_&d$s6nR;yD~j`bFPoW9(D!Ha z*{r1eY?YD)-yxw#YzY5>#Kv7IluKQdBF1@WJMn4~mfb6_$6irtoY%A7A`+d*OZ7d4 zOWU8`Rxz!*g?Rs@u}zh#i{@2vc{PN8oA)MC&%rDo)#}j?>-F#(sVDxD<{~KWOhm@M zZ?*Y=TEQO%%oefkJ0+z>r=-`xS$TOm%y&7w)&GQVOR-nHZZC_fx29Qby|)*6KG8)< z-3E1wTgpvyIiCPQ^(0eV_St+epcN)^SKNZxlT?L`xCgJp*dAmg14uW#(UmAMMS?2| zo8&A|oczp$rx7+XBPV6Vg-Ng}`j`2Pv5X2rJtAEW0U~jgq+F*aDrnx3LXMLh03!ia zj7wd0)(4VoJ|Z~#DcREz&$*U7Q?q-umUN-uO<7Dby=4>xB%;VFqm82QIt)(I!a_ZK zkyAV6V34Ay4iaV6i%!paaCC4+c&*P)k6)`B(s}pn^x)`4H?dh^Pxp5Y507`x4~}+E z+vEADle9PQ(;uBXZmQ|z{(WJ;yeietZoMZvNBiAhy(G7)if6Zfus~RKxGE>)b?_cY zYWG;HT9gi_{JpRKwE6J%U!I)(-~c zIq#P1#6XIFz7Ckfb;(tg;`KGP$MSMDjdb~XRpvxruBN^ew-vd1+Q zdLOf!-oKa+#DrxtK}5+>7C?O(Dddui6eK%Vy`)}K4TL)%kV)z#`$?%W4f8Rz*?Ay8 z)N}JUzV1BOl8-CV$EZrul`pF&Usey{%uHj%5UI3m_U^2l=Fi}*u6KNj&!k@Ur*=Df zGkcEPKAtSZ-Vw=*&O@`7ftZDr$vcEhLw_2KFnDIkw7*fz#u37PLk(PY%HNaG;IGNq zbe^jl(Q|d3&N~)qNZpVqBLhw$oPw1cHaD1g5q!ot5LYhM5w&76bgFw)yLh_3ofOHp zNsY0q#}6KKV3hMZCkF_%^K#xN?9fj3&cepRRqU?=VqV>(d_SWJrwA2wgW+XLNK0?R4rT}HYd&+@w%v|u zm|BGGP1Wgd>Oiz^B7|Usq{doi@tu}jQGLl~WFlWpKC&tQ4)Ae};oBvfYu<4pWt$!6 zT{A+7ffCpvQ07L9g*~8CK|XiH3IA^5?9WMN0yt>1;5YUQ{u|#ic*8jQt=eSw(b> zs6{=>uOYy<+ujRi?;Vdfpa;JiPY~N|x~~3@);euJD@)2Vd%t7+3$(TGO?HiXcCWJW zWx#c~=2(rMheCaR8|LVrI`BZ?=9lO&sQ&lOz{0BQQ_*l~{*?K6Wvkj54ws#i*yx;^ z+6`Y=zYenx_(~SPQPeK~s42x4c9isUJHFY%`s#{Tj*+qZWZ`Tb44Z!QZzO zG^mdr6586C;$E+)b>r7_tBNk@N|%-l7V|Ymn)L_Y}=<+{UNJ!vlET=}p0h!0#@v*L4s2>2%PbVyD5(IskV6i=JAs@y88 zRkf7-ELVr8zKX8jj;0-`RLSGd!PjQ{E^Mik$Xo#5lRgqU7O?H!tdd$1R;VG}6J15< zfn=oV@J<-geI7d3339FGoEes)vJNEY`S>0buB|a!!|D!WF#<=>cFJwKI}?wct%$4N685fj~@rll|24zi{C z;Jc@F>7MvAS*kYMD?76p1W>Jh7LB#KV@rEaOo~n&iQ~5xM0RPw%BduY)Ai|iHh2IF z7@O`V5AxfHj+W1BK21oG;qcJ*{dP=jd_c8z2vnP9bG^L+*jg;D?GJmkcs)KCc&Krb z;yi;={8E@|!MW-^t-d>uh5=YdIoqL2v%vK##pR~4wnjxdqB!GU$kN^K@Yz-Nn);fu z<55e4@5+*QOiC>iHx_FN*+prQKvwQB7e(By1ja=iIf>p`|@iMnr~5p#aMP;adj zL)>}`IEP*omq|XRea|S8sF_=mHI%q&rbo4L77?Vgl&T0Si7X-SbwGVYs^Rx)?`#Y@s4#GQ|!!{>=Rv8}reJJAdB)7hXD} z{$FcXpVh}`vHw@{=<6-=|N83j#ok2NJB7D{D-9r{>I?{#xP_5$EC}0ViqbilaFB739)$zJ^-x^|kcc;w+$C^u z26@=l@46(|x^5-{t0dk3{myAlQn0;)?#bcKPv_qoqrZKkH|)8RX!dr`&lmYKsmD2j z3~O#pM)t1xH`zDa;pdKxJow%iycc}!*`$N-jhT2+>)MhVd}|G}3qCd`SGUX(-c&&~ zfwj+ALZaSP_HC^@t_dfo#5cLPbu{^3xplkt5yC$3U9tF)Z-t;|eh+Jw27O*cJ+#bA zzmkRnsG)RCk85s=Y&&IDocl#xQ+w+t4T{-Yzx%YW0zFl|e44n_xY()8tvFN#@v4Rz zp2)g}TAbR4_No72qXLF&XwBRoi8-2V-vu~bGw)mXESg66kpCJ zUiDdAIu|pcCeO|VEaxK~JewHI?S7sMnaanzdoE-cAMf>f>lTkXfBue*8g&9)v_Yf3 zpi6Dc-{TTm+mO5&B^t-wjZP|JEuWx*CH23){6FYjl_h+|dw-n#zq$U^qpy|x|7hdU z)>rF~H`gKmZ$A1n{^Jjn|LwY~3&0x*WVK?xsI|dtce$XE_r0e{K32jxVvF9vy=Pd= z6!%Xi<*?}8tnuYQf}miWsdO%74y;!94Qc^@RyO~r^ zl8g=|4jAW$9FczfgSa^H&kT;hy?iJS*Te%F7YyA>G3Hvx#F&lpNrwHK5=NWXDESnV zhm%H}SmPmdY2$M?Ouh(>!zpBtgb4sks2!uvmh5l|pRwH1TJlplH}JMs#Vk3dczWz{ z20~Dc5~6qcmgY-MIc2k)CK5A;%Tk~Hru)TIb*@w^WU^Ndyro6XQJu;boj1j(M>JFA z7`BQrrfZE=(v-$>KBVCKj4Lq>rC}o+LS8XY8HK-@vQ9+5T?GTU;-uQsfDWh@ux4=R z?h#yDHp^s64mq|znH57a)2OcJ?D-b+XqdE&VPapRgvm#Hzzx1-yiNDby965 zfcjBQE!DBLp8WfKEOqRUd#GhT%HAUd6Z!$tdXZ1nx}TM!VKK&t#`!hUFAejxthY9Q zD^uXc8Y%i46qg*VL^tv8cYfSI@BY+1KiN6md5KGVVk5k6s)rOW>BLbj4gkX!q+O^# z#!XP-x=2mXJwNE~9h|E6L`xtK+K34lC3o@rx%%Bf@RU1#8`1w+0?*#&H`UE39*_p- z&G?%`%3Qxp6kGUuw;YWWsX8HU4kbC|pUaMq#;}=l#}7n{MYctv(`ZwN0c*Hl+#2fk zF`;S>%RW%YTXLUI3FmQ}lKH_QLDzFKEoUVW5NTdnKburn`EZ!JPvl^6%&r%TEf7W{ z=b*NY9KVHkhGOs9pQBb{myR_m#V4F!GMd0sFGL~HdVA$S zA3QkhF%*%&%BiG(cOw^QrB}YJoFT6m67U8-=v^mI$&rfa=Vdm|F7rOGK3DU8a6NG9 z;a9sr+|aZ|cnj+$&S9tDHygk-0-rN2;-ry{=K5q6c6H3~2?uJ$v{83x!!i4#VuPt^ z(l-q)`osq!i%ld>2|7t?)5v^RF_+=&j^El45Y@KFZ0+QxKM0#9*g^Ix z7xbSb%EFsyH<;XA=Y(jOVD}LD=S{NPiZ{_T%Gg16+l;?{dA_%QxPP{P{`%l(@A$R8 zPj`u}^5paIeQzVndcP1mb;2%FE?Sa%g=X^z z!C?--QLQeFXO(ujn=ed5xF#qSK^?&Wh2*a4*%3$40Q*2 zCw!(2>_&a*dHLDuM}F0%7^z+rrhic^u)P4P_2DStV8@12bIW!$?XSa!?%pr!_Zo$0 z)go>IK4TG^#h#{?cF1|e=g90Nh?IesR=vxrsi)RUOa1bsQ0~aeiYIF}MKn7b*yT_T zPXT|ruODCrtUIyV-$$jTU6Ygfigov44x7HQDtf(7N>7gD4mfE`_iCCCGngSEk>KJ( zm5G#QYEvUcv^S`<#$XrE59d9hZ_&Vd=gkcHunAg{n%H-xhv*dbNt&amSR2#krn6`Zo( z<@yWfl+*`QeU>$1u>DY7e#OJLeLqrfM{nQM5?-%%7q72zv~~Avv`3)GweB$(IZ@1U z;+`O+nEQl7B&uurT?dJr0)Nm^;_ao_V3wBDYTB0=9mQMFwB%P%Cno>BLr_c7QM~mC zE$M5g0GVnWYS=N%HQ@>0Nc0W2(nc?UdS^hYCM(Vl>SHphk2OuMnV<@;yr=+-&DErA zp&90sJnACX?vjK;-d77h9T7g!Vw#NVHhr38{BtBUDaP~sd{&<8W^O0aJ8$+G-jyoZ zzGHlxW7TQ(p_cr{eTZ?t^!^eXV8E1k6vtsNei>&MVt?6St!isgp zXNEo%32{Xao#hEE)~ZWm|Frvmga6OfAL#$T@%7dtq~qlbsm*<}mcGx_zoq-q zRNLQc2I|K9m=sbM8}EWHk7tyl%Xwgo6)tPszSXR~y|h_-yLko_%S>vdqkSruu@3)# z!lM5P{9ip@g@gR?b9#U-=KmX8kJcY){O|Sk4f6kdwDr}W{QnQ+|IWHgR--C=m#+@X ztiO6aEl5?R-hOWMZ}_716Varz8>sqyaRZChDr|U=-97_gH@4}=<9Ii_O})&=b7p9_ zx>eO(qmt!(qn2=STj=3-i$7KWVi}b12%IBQ^TplAeyxaiw>L4<-B6^_LS-JiN@=v-^N zLn^aFH4okcs#!nr-J2%mWIi#SQ{{DM`Q)g=@&jG;_^nhu}lAECRB8q_axHf43{)U@}nd5??U|87b|J2AILhQz!@EK!d|rCw7Ae$@vELb0^c6GYr^F35BZdJiHAMQo2Hk z#QO88fbHlY*`3|9gX1IUFLv8UJ1_S;Eg~cQ*}fJH1F@L)ob0k2(*u1(C^jN`WXhryKP*NjW znv~VCYfxf55F7`*Q$)z$;)2+UxOfcI_PP2P+v*3;5AV8|^{x`EBjKMSq`=VW6Gj>_ zNY=y=+dhL$SGp2Xg6B_60`EA}*V7{?o1CD_HVQ&su2F0Z_Fni5%@V0E*Dh_IWk;*Y z#%a}(DW4N?dYxF^q&-uZ-cPflQgx2|<+UOEH#2!)D7RDdY_avI2G9*cg*n0AwV$b) zUQDwKMhkSpenWf(=>8zX_Di+N@U9UTB z0#yZuDB%0wp$kq6z9XM)1cLZVio*4(?S%L>drQAW8{)rO^GD^AMf%#%Mj(zf`zEe5 zeX^2{%#|W+UF^q8G%sWQh}IX4y0Kkt$gHbP96=7B*#=iqM>rdGy zW8AxZIs?33qIQ&%dUT-|bJNT>`ya&o#bDJp?qY%e^g`D%AHei9=O8I{u#G5A%#1+Z z$cja#;55H1aJx>fiI0$R>Gexpf!N?wZ(hG7l~u1CR%%WqrI%A-j1$Si+zkyR#yKu_ zh4QdfjfiqQ&QAbEG|uZ%NSxmavbh%3edvDi<;cZP@MSh}W~gCVZz)HlAMq-DH6ATl z`{I&b{b4>1=c3t|t^kP?og>AUmh{nYXN6A0BQi%*#d0Kulc33|ewqSszv%hjhC_^f zZ3ftQV=xf3afinms&wevtFOVKvx*m!(|FhPb@+{b9&qDeZ)-UpjVp(%?1le^h-Wqb zKfQ$WN(b18gi2S=`d~@3V3J|K|IDqy6XV53~O#k2k-z_W#YtWdGS* z|I_~S-(vp}2*66PXa8x2AO~rWC>DUvhYr}D_t1ZeU6?q@_{=s^1m-`aZIEo;slg}3 zj07G^S=?3-;5kK11|sMGui^i}{+~@&1@-%{&&|MEw^v&@L{??p5Adg4} z`B1*yE8(yU|NjdSH+GKp;7O^jG=0J{CHaH|QZA@EPSj?a%<87?*(7YRSI)-_u2`z>_z%z%^(5=}>2?>I zt!V(y)$r6&)3<$B0=#|beIuj>-0K$YTV={MG)-k{p~O)w;8 zp46>}5=%VwGQKR5Y-3yY}sm zG-j)_V1{~E;efo7w(4`Q&CrcE#e+IRw4XoFrToukvF3|=Yy%P7-eue{I#JYYYBI7? zSZyEp%8Jvt+61Wqd6lGp%`kahQ4b$tI#k6mT8f{11{mfBq6H|u7QK>XKd$)$M z+2{?oRyl6k_f5?mutu;j;gsZ1)X>^?BqMU~x^Fe7XxrFgXrbJ!z1r_PSVeDEo|uFX z5CAwElPs{!qvLR4Bvvza$o;H$<<{1=quh2A=h%;RvYdzl*Es^3GMMOk(rBicrF$u- za3?Zzezsxv^pQNn0}1X`0y* zSJ!!iGEP5jOnu$)0=YR+c07=q-kBh7)?CQK-xkqbAG2iSw&SF{*v9^LJi*3S+jW|c z%9#u1AR|*meQU06a&uAJ>p}^RCOdR z7zR|@aM&X|rzbm#Tl7808sP-q5;)K9W%p{2cF-ONW+i7oo$R0QSOqPIue+r$>J>Z- zD>ztGL0+$5KdfNiRT0aJY*rR}cy?J&=IZ`9A#M!e2TVi^tg2y2JkgX;QVU2#mZYI^ z>-E~JoUgr0z}EG6_fH(5d6y|{^8Qx}_Yg9~Ngw-D2WnLsGXGxK@GiM-)W#Pk4CyuW35b!!d zS@})O;Aj3DuF>as@T+eI4{?NU{}38e+U1U?N3h_*(3d?pPF<^kma6nlQqss+qXvQ? zMB2iptog8p;!@0yRTH%9W$P`}+#21X`eSVNT=c$iychlFi#!-zA3XP~ zKi&^782=~u;w`9Q3FoG|HoZAC$3_0|AwGgAoICOGo4+^u8u^y#a7cmcN^n1tYU`fs z%YaCF?z#?LTX)^%&N9-nA`eAjB?MzCRT9xiE#i!2144ay&%rZL5RMqKq`Lh;vsMf+ z@bvnsOi8$poN1t4^`1Qq)|02-sS~vKuAh=9Nxv&vzlWmvBO?Q2$Wb~kiMWxzS&cEa zfT~xKK9aX+rgA27gPlGwiSH6U%ZtkfzsFL!M08qHkzj1KNb5ekM_8Lm z2rK|iS0PpDT3=j~U00^Bs9)u9a-OZwnmJCxGOe={H<8oFE3f7~oVR`f? zgv@mVVlStC5i&T(iq0B?yhI~j>Nci;dP7nh=Ud4c;OC9o5naoGNI1FJiuaCJCoF=>jjL-jyP^3k~QLgo{b9Z|FGdamFy~G-23YP7wK#gEKYAsRXCWb9jqP=^srlJRNr`RU>Eu`NPR^pNk>P zK?@4^AszhP)qnVtBcBMTbx}y$_irf;NYTauJx|eXmATR5#Gs%;mY`#cU|a1R)3G9T z-+Hz4<%y<|#iUgXy}abmZ9eY3BVBEZpo03L?i}Tx=MbNd zKie_hIEa7hu5P4nhpm25I~pi!hkIZz_`I_~{%AgW7WPXs-cRkAKm3n9VsDeVZYgDD zE?ZD5CTnZ|30g@uK!Shv=cLTQ?$khDWM`_KcF-XD#2cnfPtK`e-ud++D5*zoh z-l+fdsaR(Jx}yHI@?_=Y)!9mC8TE3Nv&mZGvb;X0ZZEAlo*Z*uDoOXSEGNMyevX=8 z#%bk~h1!(Bwe!N|8I`}x%$K6{~oP>W#j)IZBYEr=Hox(fBt*of4l&|n;Z#=Ip_5- zyHWoZ=T=wM{aJzmYY}>0Y=ryv<3c3DkiEL$2S>{PwfDc;{{Ni7ugmQJjjgT6k176d zyHutmwdhX=uiCDKX(5M@GJSX^c7*kw*~O4bn<1@&A4|pEyuW>lJ%Zp^?(1) z=eu(*74m*SoEWmP)0G*qEMrB!zGe-K47m3C1OcPRwV~5u;k=JX@oMz zt2QRkcEWKf8Gz&Dt5g^jAqkN2nDv3T4|9BQ~wNF=vI<1Y*iW+aK{pqxv%8ML-(*}?dY~mI|BMCRv zqO%Sr#3j{UqoMg4BPOeFD5=y^Z)F3Cg>EqQEc`oO$7^eAIFj!NzO6lec;=puH|5+p zBgHVAtWe-uLJkNynFq&y6T~YD$l7__)lcuw0ed`EjW2&`TElAp>sEf`ZVk#68p z*Wo1=p8;y1ZS2l$wB!!Erb@Mgog#G8w`|fdX9Sh@)czaZB=?nc2Ib+U+9cC#xH_3n zCuPN4Ygk-Nv*`^?(vtsCvBlyN!Ha6URr3i{lnnEUtSnaXp?dJ!yqNNq(m}e(0e@2E z?9h-=Mx-8%|AN>DhhK0)+YvxSrBlRlVe6iirD7qfrF@_!l+F(r&eTdN>1004rm1Uc zw`x+)@%V%n=QN+F;ZyS@9OaaHmV>ICn_4XpaV`0=9M08qHO{}v)NcO897<0T1_Q+w zfD;53{^DkaT`04IX}Qk$s&}1D`xSGSjpX0wV+Yrq1?YqBt~xZPn*Jq{0B=~R?*7z$ zj9w&4?umWBKki{7UyZW&Nt@Kjy~#vv$k9bPOjhRV@e18e*~dU!P8Y_qs{xGV5yNl1 z?Cu?RwVaHrA(f!CX3{!(T`?&u0-68?#8gA={qwNPIl!B?)ohsKi}_pGX9FD#-lqO22|`D5+~fWG zth)!Ec5|UbzYE0yyEoNi@er6%_HVKqp~3y*=Zqzh)L|SNiK(fIgf^2Ymqln7%q|Ijjad zP6Dj#tf@LYNUDRAljGAfL|GZvJNqcv+@OkyPejfh2~{>ednQ_?+i7VJeK~@}-?7_y zu+d4o9rKOizG8V%CE9N~t+x7?F~TH&O~?$RcoiFB7K4sFp(PE}z%HPU#U5d4o3v>= z+6t@Rd9p3BZMB$!dCu1&t7wwr?&+`+pT_2E!n6l53$q-8ONsBQA^LhggR|SLRi9GF@T0 z>Q%ZzY6M|q2j?WW#`*r}SX4s7_&?@_ywG-x8dS@;54;I3gkMK$MRu?I_1VEoJ@JuR z)a0GaXZ6o^dcAxy1J()VQ@1ml3;u6nH=o!pQS%rBr6k}`he}&bWWDQMAnKN{c1L}usRbQFc~cla%*OD%76fH>HX+Ku zuC)#f&Bo|`?ImI)L)QbDvpbR+Ld=S!tx}?hs{@0W!G~0!jp8dGK~x~e?HReC2P&Nq zJqV{DT{8lYT&-T7s%wYvXS7?*FDi9a#Ex(l-@B)2ge{l<+^NSIQ@E09d747`lQsnr z_YBg-ot8xqSA3EnW;t+y{~`<iZ z?5mCiTZnq{c+2%9;cCQDR1%2trgF@0`Xfg5006Z=@`3HZ$X zm)Cb~Yv(`QS3-E`nI=K|(vY5d?U14WwFgDgGe9J=U7|1~H3$)@Sp$eT?jOak-kj)% z{**Wd|J4oBFifVolH8_bYDk9JjQMu(3Hs*1pzsR{_kXH)mwiF|O1+@}hA-r~iMiin zDL+P&5EpJJV=!T9#Mf}c)bwhsMXpF)JtgKDnxZYMe~@3+H5p6BiBl103qDNGt+avv<+aq}v>k$#S?a^(`QE|69JP4bUXR+qY z7FxbZ^NHK6ei%0GJdZVR&MZagKoSX_h6F^1msiv|&YU^K3FZ}Z&NPP{)j8&s@&SUv z0CcZtc!t>zh?Dc)^-hD}{y*Vx0yE9YO#kz95M|AHYxm+l^qaImQy0&IUNyv$3v$KE#XP)O9ya zD60=`vjnlgbiQ0)l|%QG@#ByzLGaXm%Tr4T7v!Aoy!(#d?H@naM-W}D{j{m zsZUzaMrSx~3iFL1FMxJmXQK(@`%REOt*y6Bm->M|ERYVdY6 z(=^(TX7HXQ4g~{Zfcs9ve1GfZj>KYbxz6&3*on*fTl+eqCrJa6q7AK%K|ZrfrFZiI zQ>C~G#-H+hDaE#~jq|Qr>P~}%(zrn+oR*Xd6#b(9*mmEbBlHG;NS>szm|2IVT6jE1 zFSo6q_o%uQKkukCvZ--aoNhWB^N9lj=d5^e%vdUZ!G7y>xO#NugSvQ)U1}&r^&N&> zC|tB_-Kf#pN6+00c>C%s-TGHS2Oq_ zw#~9uSCBxgMz|h;6xI-ai&v_^IbJv55=NHaTM29#S7gzxMVFsY4P~qN0iANyR}`79 zypToLdkQRzzEt$KwzqvT#S`Bu`c?&=mSUpHkDZg00#TI@>_^ zUJ-q55d{#h-cfR@;w{B%*>bL2tH8!+eQ+|Mdi^yMz(`JTb&xn?HPvqs4&9%RMmK^K zCf!2$DjZTxl8fjrHtRYIhC%6-lN%!x-qmfSwK{|ih?faUy7Go+Olcd#LbvgkxP_mH^0q1Ml zcT5rL3`pTMq=dv_#lTORFAKHiL<>OQKx{f@nX@Dsuw-;iZ$5h?K}&vzi(lO<$;12m zFHg>Xy8qC>@-{OW>a?9W-c9Wa>?JMiA+eZ5iw7H##b2h^dUr9M#mezAHs5_76rBdb zTOeY%O)%aslT7hRM5DUUVH#;&{4JlB?T_v4a$BTXkJxf3b%`{E4Ti}^nf0sHu!l$iS4rcF5Yjt6qJmVp&ZxGr^)1H)7Ra~gPkgqgipJ1QtM3Kp(H`s-mH_<>w<>62W4r=$p zl<9i+R5LYUsi|v&bFP7`3sCpb@`;aR;S}*>@yuoYNu3f2LX%_MJkkTvIsB#8d#WyR zx|}Sxt4zzhqZl%&_A2?i1OX~p58I#;!B3wSRzoXRb6+`IyBhnfodWu-yEZPruJ>#) zu;i3nvs)Rz!!gdwg`Xzk7zamnGRM`=#!%l~7tXx)JkG zIRL#8$q8L%pcTDSjocI$d>e$Na27wrA|%~WJi)Pv2q5ikKD=?=n)8BOMb&j($*FKh zCI4}ZVF``1r|sAN5xQrf2VFoDK_FGc_Mbd6LU=@b&Buk`6&ib8kKL--NnreFEmEE_ zX4&*c-70}w#vT~-g-Z+{EONM+g{R>t*KZxAL&|cu(AlV)_X2s6ySo8&Wp@KA_#GRf zVQTcAFtd|g!fS>4!p8vG_NDhF=b&_l?s?2;eI?o~--=_^Ej`@dqcfY}ir9Qq+aq!( ze-gDt*Lpf1za2ww$c=fIV&d!D4yZ(M*KQcQtJ|W{d^A3G&3CC$j6j~2O8hz;-wJb> zTOFtz|M`qOI|_oVXJj}Pc1Uuj9us>Y zu|2qzkpm?<`TfbOHxky4CJN(Cn6l%Q^0?C$EdCtovnCs6odQamg*CDa{k-O2Yekf_>pW(TbhfiH?d*!OQHceOl71gWni zTKA~BL>G@@-0{sjc)F&}!1F;iD%9!yG!d$dm-4LsT5lIGD)*lI?O^*PvHfGV4?%Z3 zw+@bVsH=Q6QCoHw-0!_W=E_+>H;gO_ddbt4c1ncMPiWsOx0?wQqtRYS99~_;W9=|x< z?{-54t{sMLI)0xfnSMxZqxHfoYHmyb5RQiGFnxqU5nQgTZ_p4xtZ zD4JyyfAsW)T|tf7zH9~N#L?oI!|6yMz2%&#@|>JyDXg1Wx8p#)7WmZP%4l!r)jlW2 znNDi8wlLxj*<-vjUiK>7;~L2_Apbipn4r{q$GouQ9=I#b#R)x-9)eb6eU=m;%xb!| zbn2Q}Ph^Un1s$J9Z`_7<74?B{6h(D>w@9*et1J1Mx%O2^q@>U)6D7sYDbg`x4>4qX zEfrxyCbv*Lm3y_N%bJo>idj^(6kIcwkwwiXR#P;L`(#-D8Mw#6n~rHvUT94Vz3N09 z0(}oW@kBT|{7GGS_V&%8{F;0w^7j)tUNW9dGLe{&Uy}F-6a>sGSB{4!x7h7>Mv4Ut zV;Jg3j5ABiB=F!Qh1aW;_&{i2l1(eoUZSg&CIot3Ng+Ru+$ud&B?2Jqp-Rs750#i? zeE12+fgqXSKr$rKDG{_JBqwc8l|cHQZ31wNzswnUn{ky)Q1w(ogefdISaq~9na_A^ z7XI9!aA#>bP1>^?@-$F` zHfV31FTnhuEx_Ky^t#;sZV$-)q=x|01NQRGj1@zay0IomxS@7hb4skSJk7l`gd6I(^vCg@h!%~N zKKsYdO(;p9Z_s@3^kGo2akv_2aweW*iM>{|6931XEJKW!{DMy3pR8#T95zAe@ zfIM}yho`cki2tG&9g1J|b3PtrZHm$O$qRj69 z_hs*%x-jy16u0Ev%Xvg)3H0~hKl$#dYHZy-B5gdRM+sC$dS+ZvY1t=2msK`NF_6YW1wpX%2Q>od>*)qeZ*4QQ)Bg>7F=5k zBqU}mE@+I*(c!?AhpuR>_$6= zC|y$r#Vp5DZIQIjr>a=_4cxBJip({56|TMsOH#MYj4Js=)0nAKC#*Z|fh z^=(8MXK`662&TBa60MxTlv3hM32ZRfo`msQ>Ze2tcNHw@5Ek`fvy_K}AG zz^O`jR-xIV6nV4KyCWr0-2GtSixVOAM*W&Y;Fiv6U}}nb1E%@}daB9kHqXG?5%mdv zg2uJw$(>eRY#EQ~Dv7%G$L2+6B^Oy6VI|Zs~_Au>nBEp<6 zcpTKke4oi<%EJeYu-3OW&YM4OnLWC!spddw^*bzZRXElQV&8r9w8N6bq1 z^QwkZ02%|4ahUorACRB74p)zJM@k(`xsh&3c+|um9ViDz__=#G`65UR#Ug&hncb?17p=~8$<^>X?e^{}Z~WQ26@Vp%z@iC5{27hk{)gYm4R{h{iZP>n1wA?4 zKRkHp&v{1<4TH~MJ>A{S=xP-nx!ba;6u%j`@6(kp@BjS&w0~`X*=OYM&PsZ>9l%j_ zC^z|rRm28BRqiSTc#3Y!4evYJYC5`?_e}$Uj^3!8UU)v?!hx#)V;44z%kW;*7Z~f- zYTi`0ZFx_C4PYg`scD#*TOluGh6JI*ou@_^jpb&r5elg`gWd}d^=sh_^1<6O17M+r z&M~Vrbq@!h5x@~-i38y5bmyr1+}yi9+3Hh+uQWl=YEY828QEW)qQnS}{kZve)1kn65B$`lXS9U2!Oye0Wx}-vf;^-#7 zkn^~qXK5p0Nvv5sEx;3WP8J1#2dkjTH<9KE7(DRvNadNXw1FaxA|*&o-TlP>-1%gtSui#Z?}zY#IQ1S zC7xLf0Mt({7f&rZbu&UGD_HB+FZ#+iexd03&XYSy%Tt+=%5JAY=A&<*->iSKzvz>L z=qCsDPwa75FMgNJ!`Y^;Z9wL*KETG!8pwVc=QrkYfrDdc)9Oa!>qbWV-``n z>{6e%^4I;RQJg>z6*g4EKfEUr%At-NLhH$la?AHAbe2$Rw1J>egI?oo(2qZK*x_|w z6t}@umH&B%cC2lg}1cS;<)=08F3}2g%8l!ejW3yyhmV_?9DnDVYzeZb+m^Ip7>#>s&xQ z*O7#fvvJrI6WnYh?$_6S-_9Ywdi1LY)9FMICKinoqM(Tnu0i|eA@t@jb`UuVh2Mio zpj+dxl3?|?8yt=S@>t#Q18AEg5AD~BkqaE?NDphPvXd3YudmxVxKR7jnTKfXB?07# z=jMW-~i;`ZJocj~En}-}p6vc<@BX zxH0ylrL}iYQt&$)}lYHdF|nw@Q!f0f9AThHJkdQiokO= zTY5Ei&yGL3#@~Gl(eoM+_Lv~l&>yPKrb$ND$tuk0Vgk0A{V0kdc4uO%^(zYm)A{$6eHnEss7c-A83`>?qd|a1CDX*60z-#UaksI(`>9necX+j> zn@@RyKkfjFonW>ee+V^sF&yEiNR43~w;hHJHsq)U`Ie@%c~_fUiJrJg`RP?GhE;jB zy$H6%Nr`Z}$cF48DY$tHJ4NS#Az|LW1BhWrH!DwF-Oep?!*8XI$l ztYP(bq*PD^k8uY}?iBp%zkK#d(xCU|` zdgLKR5yv(0ZYtI#H1aI2xnF&>!1i$xnVSz*n>!cDTVBT4=m!f8p#I3T0aSI+H-Fj@ z-C_Xs>stn3$Kov!9Fh^f%<>Y542CFKgHVemVxYvpHMsigH+kiv*B%#fq8n$!fD#+ORAq2`s1_@BBspg2{CPT_y>jO!`GN z$<(&#_}QSSqdo!-Ni8rHi)0EruXAwl7vBjlhVu_HSSGut_bRdz=HNcr^d@lm=M<(- z#m0kk*2{kx15&ngMTI8dkAUNF{c(XBR6U(NMSqK@)VJ-VSY6#t9z5VobBu3Zv8H=U znr<5Z?7;(IVOEao8bfE(JiCr>sKA9$(0hd@iJBxmy8LC;@oZ)1sCL22ucHB(iuGta zuCsBIzeZDXtp)BTp|ODJ={l?GPQ>=`dLYA!VL<4`nU%9_7@UcwhPv0fb#DE_coKV{ znGBN&cKHz6qeT)C!aG|*A_&`b8oY5FZtKyt4P9Wb-QUxTj_>s6qjmZzPwe)(1)u4T zAoG)NJUOcKd9BWxG{ zs_8`|WwBuA^hNhocYm*b(gl)D<56c)+(b;y(LpY#351$I!9)YZnc#Y}A=B%8Z1Ee@ zB)?2W#UoO{T2qF`FFfD7&a$}+8-2E2a7}-7pO(C~RrAyS`24bs9r@H8v#rL&(2G;q zblI$GU=?+)Np{R~E*U$0^>X+0(2)yKRwovfdZ2IYG^&I>ZDfR~n9EYi@<1r7s|1#h zv)^!(pC3HK2D!|sYxI=Ro;=-YFea)f@QM3gfGOES)85SB%Olomno0pt3zBFuOeN|m z=d;yvuzEp={cxWc>EL?<>aQi{1bf292Wh0s%lR-PDVaZSod0FgyqYQhizD%>;mqPz z?;sUy&Fmd$o29s(o^KC!cE9`f;N&~{19NhG{LD!l>8(=_|F@C?Xzkzx|B+Ja0sy@M zumGP@%`PAoKHW-Rc3+&Un$3|Rz7qTmwn_+9eRk?_6)L8-@m6S&&#keU2G-F>Ma}bX znYq||`5l(GarpF-NOkXJZ0I#GFcS0G2h|btKXvqOP5wNXhL@d)M!)boO%kpvT&?U# zGGTF=Y@XU%FVvJRxiU+z`*P3ce@SVOTh(5fmO}4k=0Q8X$ET4{2Xvt|}Z z_gN)=k=ezN?rMyZMb~oV*htl8n@KbIbBZrHWf^26A4$6qyYE-*_4uc&Bx?k zsfy6?J1f_aRL^meaY0Rn#G7W~vn!~ukqf@n?gDI|u)9s)!QfooyNhhAT}Snu=v|Rn zNM|jhSkRC-tBNt-WseN7EA4&HlrYzx3S6mm>$Y#Co!AzHU5`I> zFWFN57M$7m7W2DacL55A#zMGWjsRD7VTNl*u+{^7DzgwG_}5zH`zPYe>>i8?woOeg zyd3#zBDw3@n+{Mm`1VwJnbsEewVu4mF6;VsEq7&dFg7?rTtSe~t)ZF1erCc(shb1> zDouvjxc51)*L8N22GB*AfN73Ivj&rt;-UK{0}2cPxajM>5a!1j^`DM72c<*T4>p2y zyOt8Aa1$xso-2n^Q*{`5(cjYs>Qan0JJfKNsr`=JOWDy+}E6g8L8VYCbE5Y9HmC zXuh9c%r7rRHR-41VMcYw#c$(S#5;72WyIsiMb|SuTC{Dr-OsX_iR-K7du?fB^9p|2 zbUpRVou;5XSWtFEaV{6oUMDdbF{Z}czm>v8d*dwBvH<@scJVH zON`aOa%#pr`Bt&~hcL=kYggZKmREc=%5ENB7myAp&NF$wci!DUOY&LI$>=rTy4bw) zuZdR`+{SfHXWt)m$@uPmu7u^Cv%6=B`nFn2oQz&~2L1Dj1LymLewEVcs{Yu%gYKa{ z$fHU7{>k$W+$2t(llWcz%$0W!{&QckXIC!m@gG5nJ0#Y|ZUFssFw8Ei6xGHgTpSF# z(Doha4HZUz{_Z=apitn9qFtOK9wVpwFAlnA`=<%%^V5Vre|maMXCR4LJchPv|E|oC zJl#D!rKftn;*Kr)PP25|ul=@lD}LL$N4K?&#KX&v`t=f{zNKZ+9uj>F`oH3;q5hV8 zf+h=jL2DZt%!o+h@^HVIHcU`?Fwj>={!q;TQ8+rg!3$@Y;lLogMF++&J_y10Zx59Y zd##9d{|l>RZVqtH-xo7+P@}xYrooL*XmO)1|26tSN_+K{BeM>#*Y#DIqUEMlQ|}p@ zVLf^Jo#H;dcm0&IAJcDr*I;oG-!}DK$qu{wPZBpIOI6)r1iJAmQo=&ko--0}#AWO| z^KJMN?xi#YH^vqZ9*8hcFJU|ULh#q?4PZ8<4w*F`(qvj*PP38Xi=(Uu` zTHc=%q;!gp~Fo{kx;5fM$1PSJJ_1J(`ydRzGyNx>$tR zOnuQS)g{m5Io2n)eSlx$KE^~qZZN@Tnzz~SuH)Z@G*RV4N@DsXIep6aQn-N)`cK!l z6Y>+b=RO_)>fZqiQZEm>=5WEvQ1o-S_4=tki$2tQki7oA4PSp+!=lb$s~gRNZIVaB zRi`)vQoi47-yK?iPHZbXLHj0|twT-zzR3h0Z)BvL!XUbk0F1}sC|jDxPL_Io+I2c@ z_l$EPKdl1;@qeSps5-*ED$Tgm*ZFiz?1$7*+wM~-dsCgOcZfRu`PVp0?*62%(5GNX zPbAT*qFCoMs+x}|?vbG7)cX_GymPpJdS)thYS32A+pAFbfU{TKpbm+)aPeVp3AWQI z8H3u@t?>E5=}Th9>VH4qjI-ZOk8$?t0G2*2Zjf zf&-3o?CZ@(U;Rt+FMs~?PydJQW3=wclVlGHgn|)_ zD9{X9oRQG`YFdt!kVDvPtjbWI;ma3!IlWYrCZdnJ7B&e%saok|XEIGTzWHX0Olq5d zF~6TAyI0v5@RI7xfZ9ZG>CYh~eGean^EW&EgRNdrYmA|1FwgJ&tEfNBlk+4V(Pyq0$3IL{Sdtr%roOy-x6|Q#Y+i zPdA{pYNU-bh>O3kfz(L%xOv@vv$B^7)Di1my`{uBmF_wbPni;Bazz@IUoE6+gop7h zPyf<^DOu0-!o=ZMSL}c{eTNWJLPVul({g|j(u<;(`>ou+A~b+=oc`Pr{$ePzYNo*! za(0`X-UJ`hc|pO&^r@1vVGibRkmeZ{BK4J6G8%%D8CHd$AmvN#9mp<8Zg`l~;?JOW zkXSQ_q&%RPsz%8QM5%e4vPG#&KeV1t2*MG!?o?Yi(?oo|Z`{w_oUq*9{9={c?9a)0 z$mR%lrh$6tB&p<22~en30TNUOpIdV^4^m7}CaVK%Z2~FePg%o!s_wL4DwXO;0_f*e zZ(2-dYSgH4;kN=As3);c6Hcih43wxYD!IC3#Jwq^dL{_;Qth}Y1}Oocza^+H319m5 z+eg1{C#3k5jOEeh5|hYGh&vx&&aO~gGLBbeGRUSKXO>=7xf54RyEE9CNbVyurG44V z<<~C>2*IEvKK?iCt+l@5>i&9O>-7{ze$Go$hTF~*!zM9HehqI3C_~6&t#mD~^py$m z<(aT`W9B6|l=2O@i=|kZw579Ao0%CoaG)qFp-^1=2APL(c#$LDsC<_vyQh4T?R0k! z4r*;BEU`*!8d=2>Ln|k++=|w2Pu61?h|P}sF`^daoXB3O^0?^ifdFYgF*qe+XrO6N`Rg>*>b zxy?Tt@?T`2BQXX2@CxtS!kf16{x-cu&z0fBY!?_@YwzjI!z5)m6FYKq6UVC~>*hSqGah48@av zM|i)wzVe-gc1Q|aNOJmoH~HrAH+Q6*Iv}R%5=7bL!_$Fx9q6q6rqgP_d5B!fkrI+w z3T0}a!4SOBK^Gq=d0r9Guox9%pe4jx+dY1Ha=3rC-(1_Ksm*w!3cN$CwxhFyqgM-R z+cLG$vW@b7A)0~6On~hl>>r&qSNDjjTYV>jEV(T;b#DLk^!T*7s>h}(Lp_aE9shuO z)Dk7%CXeEaq*~)uL_RYr!=bK7~Yohzp(b>+MU_{RM z5{8aT{LOfly-$+nl{+|ke!RFQrmA8L>}9_GH`2h-;+mMETsZ%DO*^m7zF%AuQByWY z)WWRjQLmyky*lci?C&nFi%DrdCeUzo-uD}Nh5S;BYhp^Gi$rx(&GJ#AH~-mHFd#W>-e(Pr<0x2mtn^?!j2)1*HPP+Q@5RLdO4@GDl?q zozowbtiG|a&WJ-4;7UiUPO{|D$HABYBIqc#cSy{E?W+q`&}4PlR}l~3AZs1r$XoM}oyd0W zp0kM_w<6gT#DUnvPYQD3Nmu!BBFhn0vv+XnR6`WHXLONVQ|%i{yJtTl(xgaio=4s!;_J>T0 zWjFPQYG*JXCgpf|qsi=QuD)@u$1M%ggL!`Y>(~OYeVuzfQeF{xN zgIsAo<(4;jscHk!YLRo|yK4H>Dn5=WZZ#SXa51+nq@CLccytjtY$?YbYne9Vm2;(I zC;4&VZ4~kZQ`eiXP)9xD%6Btd9tq$(Pz=XE=j?k*n%Ug^ioSQTbQ&n-6o+L+ z2OR1C#X@Nim6P_s7Z=nygp(x=H0I@0Dj>9pwdU@z=IN32(9Rs^bhHb?HARknbp_f# zRqIRYxPu?})o8yamBv`m4^A@01k}ytrIHZcp0}?y(yPt%YAd~ZlukC%$!4d1ZXX`M zI5=X7aBJO|*M_{GigC)<>PWZvLnVSKS%kklA`nygu%SFeD;mh_z1G&&hG~#Y=MX|u z#V&Hr?R8yF`-`gC+1));mCy+VwJi(|Rd-XcC3C~E4b?k9>%X2fP9odJ_jRC##3 zyK_jJ>e1tkXm1RcIJ8NN{F!!upc>mb*?Fj~+eV`ub}n?Hqo1`G4+~lbdOAc{L-S?2T{!@=Xf2%ynqSAW^>>D^X}#6*KY*c%4;%I+&GXaRPl# z+WiT6yk(?|g%SN?&S)$4luE@Cq9k;_b%KAOf^U1e18Y~`tx2tygD2WOIeDk(Gg-wx z=`kvbe!j8xXl+Bi>5=AVh>sIY_(G~ zfjE=}^EMGpF*(mZyni{MKxikx?*tm>JBF{cDbuELTVYo#`YGvii(W#Xs0$b!?&tXG zyqazMufgBsr3s#dqk)-4HTC|q%GCekABi{f&TpCcmN;vYu-s4XUtg7lx~yDp%LKN_ z^#fOL%4)H(^{eVz;Ek%^Qg#|$p+w*WMK9(9E){uK%tpOZ<2bX&i7K8Ut4*x<{b@c! za)tVPF#Tja9}WprTCMwep^kj=el;uIDh6#cr9nPTJJol+C2`P0lH}n(osJ9JZ3~jUYUzG(WEuLh_>)98u=?HP z`dspPSn0_dg=`zt>{8wuQ@+inq&JQ3hF6%kf-3y)CkOwBRAZ3*w&T@il)mz=t}s^0 zY!$bl-H2XUY#b-12=m+hsr!Fk?4PO5wAa&w|998@NIz7Qe>Yiwzag;E2&glx!)f+c zslRp0w1;!Vh)B18=aCvy=m(QgMLsg&OMmKr|L@WN*5&_q>H_vz#s6F6|E;Y@>tBid zum1Xqwn7s|NZhm{d?oT?H2G+lDjLF4uU8zm@Y!em4beQXSa&DpX+*Hq0MZB zb4zvmoIud5Q0Bh9&H&ry#6Gts=XiF`O(FQ%EiUoWetGrKDK1V{de^IK)C=-O9M53M zXO?f(F_&uffn-@FT8G06FPu>whvz@;9h{QJrSiViO1(4I9o0Cw8iaogPAq+X=fTw9lsrVZl>Q}f*^|kz(3!5P`EZuhhLT|{rjZj%2sY5ij@Fre>cErMiy!yS zUmYDBAMx~+B#h?oC#+GE7^}Ax^%Q0I-<<3m?V;>`t&mPBWD1||zf|Q>Sd@)AXo(uA zNUwQUoL38kTMg71-S3$152bjG48jnQ%Kqt2sLEB0H>|=L+{wo;r$($@+aAnC0|`>pI;( zdv$t58|I|@YIk?P+fCX^URK>_e@dB5$8d{8m~DT#uHX%hwLy}Q=X>r8efrb7Cx zeScu)=qonBY?QXEDD2BYttvUaXXJ&1-CQM{cb68(qv2qHOw@jDG~hM@jqryerw)eC zTbF0mIueScPJ5n13Dy>@kUn%AE~zRYxE1a4Le#*Nz+J7?WsXVe9^ah^l$Y1D&}log z5yFs#*E4nI6E*Hho;&UOJUlr1L7$P-$>+D6kPSnn$>;WVEnRCzz6+3IRSpqcU9UmIuBZW@?Y}u|2|ZAE z&Lp&0o(c2TQc+M@OMhRfuHadV9TZh}s@$9;@^NiGSee?I4>1&E13Lc^CiGvok>snK zz7->-zVB)ip;=_z3A^^mQ)iPy-N@6ezB~uJ6?PY`(x#Qtu}F9fTZXhQ`c0l zw*R%_CM;8sYKw-7+eIj6M99jigPx6zi!K-9v*bh zbj;1-e=PZ`;@f@z%?>U7P%`a3SX_(RiewqVbrq5kh6fsfBZ_;vsgbhIQBuwT}%CB>lOCa3KbdI4Z^uveu{y_bC9TCwH||GUG+4-cI$ zKQMJemQ|E3_M?7Da(pHCB2HqYsGo1tg|C!Azd6=^%z2pT0z>Ex8KDtOy;IB=^v%{q zBoJ{hbqn6XU1Rn6@hf$mM5u!Cxmh!!fb1)8zLhU;od^X?c-d3~$cI$K&(-y%K!0qqG0>uV1eCmOf2m9dIei?@m7-n0?BRSMJ?g z(J=b(XGP+yCwH{CpbAW8oO^%>S0il8Ysv*SoxxpeMRmE0JNcJ=0=jdE{`i!!>3$h2 z$!mXC{r*X!Q1Ofysd|r~y5l4DNmu>C{{bvdRs7@glhfm~^B<3n(?o5k^X}{OgFSV3 zkqzgXBUNetv11=$Sr>ywu{O=;UwKbINmf=mY0@6a!!|~=HbxJae3xvB;i!fhC~kq`-7i8~HGTKwmoX4%Yt2}LerQy^L(-e-Au2%b zJNY){Yry)UrL)Ba{Z^XBq>hI+*CR$|!_R5}!`w_V$kgJPT#R*sc|B0 zy@7QOo+o`_V>4fLFF33Fc#SE0rDXjmUy+wpF6z+JFIa#o3EbcYIzz)ljkXRHyB&-r8 zSp#5%I1>sISS*dh^q*z>*1MUKA*~Zat92jVWZIUGx0H-riHgCx%N)4$yw!;SCSzIg zeT`bRv%sP1yXiQ&vQaD=4Zx(qE~jmJ#eI>ww&{`N?%kI6R6|nI(D)JI zF1K_SAZwRXME$3m0L>_iPouw)+>`#4e0$^Hvz6mdaHq~903 zd+%d>xVR9ix>~ZB+M>6Y8ZTGbU~&J+wP$!v#v+ayvmejS?bYGd8b;Y=(es`WDXIsI z;dyxP2}|4RZl>;t`0pyhZtXf0ptI??H=59Drz@t+O8QO5W|eL!>6v6Bbx6#%z2AV? zI+uqToq5=K=jI~AWJIqaP-ReCF}VF5Hv8;Crl2H_mQdiJ2Je@QpHY8V;+C7L^h)FZ zk}RpFs(bn)`@SBZzT7$6)qRxsb2T1EZT>OkgYNBZ7BVv~^hmlCGDH)py%YtLnHa ztqPyCj(m1${4n-tB<+dYSWI-}2?_@2wlpAw1fn!bM+{}U(ON>SM@nWKk0Y4?Pt6kO@8+=&=iZm|;8RV$E&-_3eK&L@Pd!#X6e$*r zRRb*fd#stys|sr}aMmpOvL_(P-v0n{y^B-lJYa{YrV-s&r1gy~$Sus_9Z$32D%;Il!P#6gQtZ|G5oU@> zk!nV!`L;}m|GrcIj5M+Kv-$Y9c?mAcZe*!nF!DWSx7PGk(6%nr@V);nmdk(N(Cu2Y z&DHIaWkDro|vSHGGb*k>*%p_``01RLtsvHO0A*S0htYoB>L+u!$J;h;8 z?wogQsNEOWy%CTy+x`TTO`;=$+s9D2uwBaL#}{6hY3Vr5I1M08Txw$5-7#mwiu4}D zV*1+t#%zYwYKkq&blBG2)1t z0xkoa8fh5SYeWb_?Qay$hSM6+1iEW1-xp{KF0s_))8y45B9!(|&(6EAPSiDjA3<#$ z%9Ft23+cRdec=Ih$CFl!WcQpUyXOaoXZxoq-I!jT?i0x6@#*WG)4lyYZ*?M1YbUcQ z6N-K~R!K#?x|)1zA5-UNOkQ*^+OA1tP&oujWhqj-(aAyP9a403a)e2m=c z3aNCO)ux-}C#`!5si(fiL@+DqS8@5vCpJTEFPYk2zB)WRSUuU<{bBzsX^W*5d;LbM zJXkX>U!Cw*OO%gM_z`~%mEq2+RedQ6KRQ0z7d4_w;`T8mj{h$(D7sasIc7esMk->D z``y8eJsyDjp_Lj)POlXSfa8L<(@n_ags z@+;})hR4KWw1zKfuyrB8?Rjmd$=^Uz(#d6P=SVY20+{R*Rrs7UL$MxHcc^xRN-t(Y za&8yQR`_toh{`OzR1>2}WnGTsqGCnUJE=^}aIbTgo@3hw>=rZ(u0F$=f|Eux(?r{j zE5WV*h_>C_CBER*HyZ0t*iBBHR=7J&27zTajP}I6b<60xfWK*sL?3P&%b?VuO=rIA z&&8fX=tat>DJ7hBdT2Kmp<`JKywR`Ux+7`wGx<`uiM7FoXE^M!;`B(>6|FM*HS?(No*yW|%G_F0iB&LX zFMEfQ$3$wZ!!+ln67m8`GVTFaP+d{_dhXrYGBhk>ze__$pXm1MbcF6&+C1O6KjMC5wzfq(v~vsE8J5n_v#hX`fwR*n?8$1|%`dU_OK^qT+1B zo6r%3TRG>ppWJar`vtEw`DfF3{pUgf*v>rOAzK@@^y9>jK1cj0OLdMlZf>ruj^a;njHq$?^pL!t7vU#bk}@4)k+djxXdwG1OYw)iOPyst4Z<__Q9-5+$q)Zu4Key z<->JhyrmWqiG2B5mw9vx9HTQ$VaHsg!{|cq)5{9t@?XF z{zCmORr5lyKVV6di)}WHE7hzjZRqIGq%~(vK{fc!xy;br-@TgH9bylxp*6f1Gfq$r zRU3m5|KVGO>@WRE>Cw%wUZ?2(%3){QTm0HSmNl=lPk#A-@BQD8{{(>LDzHK~K4%)h zh4G)8kGH-CUi;%mn~yiQ9&diViTKY)U;i2Z`G@>NsiyBxB*dK+#7)!h6HNUI;;*Y5^-*m2KUUTMdjD9h{;@h$f2+T8^=Ce9_z-6*e>VHa>UF%( zD0_c}7|8K_6faN?21uZd_v+WU=;e`O!~ESpR*&!>DpXdzX*nD=v{;VIf2>|kvl}&* za#%L>o;_?-v;SD#YwjI(_&-+v`fGh*_V&BGrw1nh`f|Q}BWuIa^ieu+N-GA$0rdRQ z0g52Kg%hdel$MbEdBu*Jil9!Wr8+dHs+M=fbT-e1PHBP-6zp$=^OkBZAZSZl>d~rG z`klm>c;M;+9w>FWv}*w8NT#C1f$ExiO=toXdE$;z4{O^_4}zU1>IPC#P*ma8?e&1i zN{l$GZdPaI>b%NRr!+b8uPV7^wWox-w|17-Ok-}p5yYa}L}CfL?l4Fo1h65jQ)(RU zd>8P#$LYiXoE%GOBVP+|PE2G`LJ}$J`Jjy&Q)=Fg{%?kkSs^V-xze3I;qC<zCM z`li-j0>R)XM+-2>^C56A+`6v_L~V#q)R*dZbPZ&{d;tB1I{eq1ZM9-iFf?Wab`kc^ zTXm_#%3`-%yF3*58i=RmlolyBm;eakUN=czygJz1_vfWIEiTlW${xVwM9*Pug?f;k ztK>r6K$2%!rEUx;zSDn~sh;=onY(|ezBvI$ONIsAo74U0`=|RyyKYZj?i{_^Im901 zeV0jOWqjX{850o0*Xxs;eyh>{RLSl-nck|>LD4Vebe_1)DkFkZGsc(K+QKJnyVx~$@kbJyW z=f1MW;SwXh2vDx~s^rC7O>JV@$HhEkHKS~-c&1AjyktTiKw9@$WKYoH^@MR|U#6S{ z2;l*12Uxf+JJYzEqE`RhdU$ zGo&3{y~rxoDf)*1Hn3A#o!5-`tEd3DkziPab*vefcM7pZ;}NOkBOrS}=Tv^gWi+9+I`g$lDP>u*Lw1M|dc2Y%up`iLM=i?B}_7xw>Gc$U(Co&U+wNo)S zN~YPQ=tJ+t=UAP!afh^zC$9pjBz=*2SRyedWi9<%J|^~)17qWAKJHKRe&ruNqYUa! zbXgW(B2Owy!`{jl?lLFNTsCBu*pHp)k=-`}^6H2K^0V4-qB}6Q0Rf>iVz(m8v2^0=XY=t*G4bS3hpll^3f=|n z#~Y72$<{Z2aS3_r>-BFEkeIxt_kU3WJw1b}-{o_^te^}3c0p~f^~%vND~njRtomPn z_szl3c74iR$wyP3y*rqz!=E>Y{~K-&#DZ{ZsO?XO?##tOZVr5PNZz=uySIqw<-w(m z@FEdhAA;4c-6ZN42$wkpR|x{uxlQ5*&GmCMAGv$Hq9aQzQ;68S&X_^XwA5FV_(Nu` z&UXpW#%JzKR7j(d0S$@4cJ%>CyM?SAPH8A>aMbQFMm4fLU5ttu`%MCyv~)`kv*{%c z0S4dWiPMLY#Uf`4$eGE z))8b-n8J$bR!fz6yq+Wwj9qnwWPZ$J^k}FG6163s{j70sF){aH>?ojQE zVPb@CEv);a{AJ~c1TiYCZYEXEb1hD*Z2YUuxXdxJMs?vzWlu5zIi=@(=-+9EG(po$ z%1Ky$KA}3%BN5yMmxb0iEG;YpL&fz)lb^t!g{8CFoi;Wsy0T7nm2#GaRTXqb(};P9 zG{OS6?X|VFUsl5Mdbk)L&`HPnP!?NH~2~KzVx!4v=aCPm8}n;vC|pq*&A%i@a)6PdrW4SR(3m5-FK} zx%}0&GJ{ednoQY|jeyJyPr`Mu8-vdlxqL`1VQF=OR*Yss(@VJ?UMi|jiRx?gLwf)u zfqR`$dqxqS`Rt}f5d)S-R;T%pgb+g_mCy17pv$@Ap!`(NBsvwAen~sisgQ4)5_C}8 zCu3%F5XcaLO4HLPt$}|KNZrt8yv=Wj7tL-aT4pBqiO4RQS-%g{BSl5nkzr{`(1Ipb z{{yGpZ}Vc-sncSYPoV1aF0ZbY=P#`X%G?>?pP=>2)i)6QVB=6<5Qnohq}+`K4G{fE0kFVo1ZwRX&*Ub&k7X zuFMuL4cj{~ShRbkpcPot zQ>lk}uhMdL&GaRE)NmwY0QhC)89w&zr|Q&QNx|F{p|T}KA0&P97xCwi&M{Vn{!J^_ zjFyImS$Sf=J~v)Wi%BKg4JChHkf&gTT0AO;Izn%f+Mf*U#QYr4tTt{%9{3bD|o%N?}Lj#GMnl=Z4rR(0gS;KZ>i@)-!d%H7iM zQKY@m(f8iOW}|1an|ONyVajSZvh;8&Ubt#DX&5wQcLuqOBB;=YA8TQkIe@z-==|x; z#i7w&5a>=$mld}(U1G>m2fiM=&art@(-R-mftADTB12;hw16@fR3DQ8`8V^L)1SUF zi=irwxUojN+{zGfor{(vOsA~SL3x|C~Wv`Z6l}fdLIe z!(pX)we2z}ckYSX!vdGL;ZQ3_d6OvCg*h!k-LbW{3`Esv%Cgqi z`B3Wx=94~~u(B$g3OS~<%tx9$awJI>Z7?Nz7+Xu$?~}AxRDl{B4bCS9!`W<3B$*E_ zw>@x{82yvZ*w$l{Ts$q+J)QrRg7Hl44u8MiU1E-bL4{ zLRF8dM(sXsT)SNcv-Ku1!2*h!Q={rA)T$MOn~;JGpLTJ-V+v+`udmV)qDxF@nh!{a z;+J-BAv6FHf{kcj%t8&ARLUUoLfJ(niCA5F$0+{D|2Z`Ulr>%P>l z@se_tkkLymSZP&!&5=rLb;khqlxVmslWm)B@!>s%+oWr+zL_&K&j3#xmL}Ycewniw z1_+|>SXlWjP;D4MO|y?_^U_I<(T_YC7|Kv4hrZo-gE>&SJET&ZSK*vsFxFy(9#NN6 zpZas(?0iLc!K|+rNch_7Y7)6Gm1-x!6iNA04b?3FX>1?0N{kttE2;4{yMC1dH^gaxwb<{m*Vzc+d!)P4xibhrxTdS6086&Ntt z=E6LWEX0%|g0^hvYME&Ff@f56G)YnUEV?FvxyUXcXT=KFFS>wY2hS2-LrvYy9wQDLlzFFh zt;@L1!q`+wv18dJ*VfXaU89JM>x<58dvnx~$b}wi0DLc?K+9uSLAIiqbXU5mPbkfH zMVX~2G|h87`J1|vsB7$~;2WJ>UwH5c#ddqhxmvW?0y$ZGbTr9uGQYiY%BFr;QieCH z5&CtBm9!i6i8#W+O8c{5ZL6nBgGWFWsCE+aYD0BKw9aG;1r!PQjk)RoQsB~+(UJsB zg_=BXvkh?pm}0xJ9xu`5;tDTP*Vwc%+7%SG`zi_j98gg{7?8X()=~B&c&g!gN^Hre z;3=63O=x<;_;{9<-C3E65=GPmT1a-pM)x2jH-)jD_ms4)`WBzWwJjWKQ+eV$^8jBI zgS?|Hf@7MYHIsRrR9c?U3a2aMm&DLZ0tc&ti;THzz_Wz4gsPo!34O?# zl1YP}BodFxvINQUbn*yG_eLqAQmOf@V;`S@+v+_ge046l;Q2Q&z>}stjLC_r7T)a0~I1G4<*>`4_vZqfmyI1kMJ(_CB`>Q3>x32*=zTbMpLUAk)cqBI; z>oSljcD18%n%Ie~bJ8I@GMPKQ6#_lK5O$-oD{3Y~Z5<^R_i|s8Y^Dks(MU|A3>wrF z0bPY!6I&l^8j;Vbyw)F8zM4@kCoDwSoo0>_S18aI6x>fj7XuoOOD7l_OLF2>4~c(h zS>;9O$mC9mxW7v}l}R@BebU+aE_Suxgm;>Rp78=S>^fml7D0lxVeMvYHf1qZN5`zV zRDFSfmVp{FPkPi)AjIgI9rj&)>zW^{W0`SZ12JR{*txr-`xMtNez3#`LAY)Av8Qj) z+l4I8@5-WYD4KJb-qfw7;3{fyf0A_-`MAc3epxx5s8eOd%6i5lg)Y-Hj>xRg#kFlX zlL?dag#vCA_J*-9y%R;GfsWAO^yH4xVMo8A^J!C0^qx;_Ha4FZ8BIQ^u)PeMTHWaF z(kbcv9P?_Z>U2sIoPs_DS$<(g!}J?yy+k2c+1rlRlF)@7$7kK@;n+4q4NX)FM{Lb( zQa%Z?%5IK8SR#24mD_YG1UNb;w?)raY(8|9tcE4>{MQax>@#C575xG%lx%j&rc=)z zByLwG6o)5%R!;0mUbAXW?KB!66zWAoY05sP*eFZ+*D{cs(A=Q4Tj=IXzK&s@PU$PU zhe!G?@tJhe+0x-C-{v=lVEdfYu*%5imywBlA&;g&C(k0yn{zzZ_#sKsQBL|}k&|oN z^Wd^)4e;+&3Az+Wc2^c}eNDUF!G%u%7h2vA`E3J#5qGk-=jTD*``Z0W+`?9mi3>!` zB{uUdorzB0@X zSS81mNh_UerNxdg&2=76awUI!3c}C%ZiuCF10;*;?R!7@B z7nOy-mnry)+Fp}8tq?1slM7rvS0i-NH&J-7nTWO(8sL6lWtp-W*oLEx0l$1>yuQM4 z>#5?HgB;0HXT?zaotxG2Wmae1mHw~{l#5~9H{Ps4X+a%xY)9bf z9?`fx85t#f?ey433KN}=%2T0%IZVpQd{Xmr5ql3?$T-2Enf5h5;6u)^z497d0VDcl z<<-QTW>w((#foF%=ocB>?q{X2Dw=!MdQE4l_Z?a(D(GdPWzZYK+W|`AP?M=|QhF4C zTg%DKB#@Yy;z-ov*omv$uuG0y@U@Sm6C!tvxfysDI^p2#wq74_0d#%EiTsTda1eB^ zelaavAE%_&8flgzSd66{Mj>F{;k3iH-D z8+y)~OP3ot=WC8*k{zo?T+#PM4#79j1(+K;ixwhVP@-lnPPl<-kSbnuw6A+jY{;g0 z^z?XFWJE#?i(XD+jwd?Ps&jd42e=I0-3#@dsO#`32ZkacG%RxKuK8iHrwvT@28lX| zg6>#PPV2XuaO6ZN-5Jjf!s|44a@RWEaQ3ai;>VrQvLP_BW~%?>-k-v~ja{0GJC2gL`La%jkAFXQpWIhG{}p04Z?w~jXQD`*fF|-k zF`-hThzsOnv&r-|Pwz8!hIdOx7T=slN}`~l9F~-ZmwEf^X%Tpl1l-wGPm?g?>v^U* zIUTU=L@3kuzYdHd*Hic%Py}jnHCI!&3hk^3JP&lvCS05bE-G-5+k)sLc+;-IM4;7O zHk{3fQ>n)}FcHLn$XKHuU^0kr(vc895xNp1beQ5R`tx9zm>I^I}E<4y@SiTUWg0yC{1#FRY!VlWnV{|7B%2^PC%c z6q(BoHYVC7xUhQR{S%Jxq9X&-5HX1psWOw)-lB+Co{yqEKY680O7dr$)uXTYWMn-#?)dZw8pYwRlM@0a_rryo5rs za%Hf9brJ+Gff%Un$G9D!JhB^+W+6wAc4Ky3TCv98BWmAN+7rTe^3Z(JyFjSoph6C5 zaQ8M8M2h)%j#=#O4OkvnR3Xk*o^@^((QWD-XAPCGz>`IG;t2p$d1{uIyB01DEBGi{ zh`cLcT6&_*_zx|A@wMe@ASX&1ncb{X=2wt?;`iO}wRZ68~<9kmsXT7(<+ z_d%>1H_Y6}b@gKUBH_{VpDm<+0DQ>MiF)v~{s+?(d2GUa>%LJ<{{)L2UEVXwh(Hm; z#4JkowdVbm){LUC-Ao-DDwS6<^+(g zn6+}TcGAoMc^KRddA|FStB=A+H4K7!=vkq1K35uxQySU`DOGFl19NEqqNWK?XEK zOmYVMcYvCAjyW7BMmxd$DsbP_3!nqLNqH>y1pd@p2&$&2YOy;Od%-g{vD-uB8aI%5 zoqJP)!51@uI~OjF4M$8zJl!V~#l=X&;2VGB=0<4ydgAoG8iAfZak1YL1q~wz)W8JD zWDlcGz3c|P$DUx=!YoEXI+@iRKxBDmY%P434d;ySbEA%(zNh9@N0aU_ojky#h5we3 z0z;*o7;b0g^o5lJ^Fp_BUwq>CNI(YY4|v$A6;h&y9#jyNNLqdp12hg#0E!S8E&+MA zBNhgh{s#qf(tjjLdXE&3a zZo%paZg2WGLoYdBXbdLep{nzOO)JjO0K!7sb^m*x?Z~dGpJ`w}#B_*!m}n~Bq17j| z8G&MGWrMb@8&+4}d?!pi-ygT7Z(6mt;G}c zvuHGq*qGQa*3%$(#|8&aLIu<=*7CKK%CqB?y1@fL*^k(B(Y9Ep?ozn%(fyHc^d;)RrBWPK#e;`=cDQf1^A1+oQB5}));q62`txvOa$E> zIFzr#upvIYvr+>wCLEeQRy^_I#6e8n9Jf_ zD1S?421OD*H6bU7iD*sQg8*((T|8%W2j#0;pCv*85>(s7+auDG9)SVhs%PYQOM)R| z%dm@2%Fb_fPH>TH!s1(w8Xb?w_q2h!VoX3|ko88Ryf4wxQ6Ud4n|<0ItJWu3FRwar zO}7nduNhtC-AlY<3!xVl7?E)4-eN$z)lQmBG2!t5C5q0%HJP!jG6}|t$&RcA<;X<} zv7(Z_`Lse-azDbtIpZuqOymqFoMv~mpciXN%jSt#ZYv8EM@qs6!$G{LQ?_CV@mBeWo{~JoAtjscs}d zlG;1$12oMqk&rB;>$;srZ{`f2%!iq$9HKSl7lTycJ zxC3!&wM`5{BwEW{z!T%F1#fDMrHWjhoipP)hM*jx8wp$w3-SgW&2SlCdNT~Ck;(WL z2xd1d{NTT|r7f6qT{5I@_=tm+#RTb2Ae@+VM0NfWaCl}fBGMNENxm#=!G#}Ey0#a3 zj6kj+MqiksQIAZENgYJk+Lv0-}M*Kb~nLRW>SlIehF_3u2+oaU;1bRXQ3r5RZ*+d5yiP z=o{7TcQp(c-BApYf}Xr+%5b*Fnd%AL85T~Ls*2a-Hhn+Omp5Ug=$!{q^8I|EF8H{g zGa#5^AKX9%Bjdq11me4*%eah$d%U6Dfu4iH7?0s4oq&k!?22I#~a zpl30k8yg?HZ-n>8|4`eFs3;!=M_6GJ+$x;tLoadXv%5|rlfbp#@Ka#_Apvj=~* zU&g-#B{vm~)Sqr8^S7$)WIR+etj^aYpRbLf;Pne`AQ{X&8UHQ$uSq;X7fF(`EhTl; ztF9pnPy3NOoN{2ZbSawO&Bj?jtMfL47rsA7!eqKylyf#Gu6a9^xD_AUT+;TZK^CW_tY&FQL&P6?kQBWCRfrct$iiF+h^y53f#fF z!XQg8q%;Z6*s1i72KX~h1|o57E4GVibF>>SNAodVN_8S1QQ-NYaFCvKVug!*c1`S5 zOmFqN1uUOpB9S?W3;wb)RRjZNQe|;DEwzV2wvyT2l|x05*|hKk2o8j0AJw9q7PA|J z;3PUWmm*Dk9m{rV_HhZ4AaGWCh5kgZ#>M+JM+I*ct2l@~f_>(axgPlBDGbstpv>RClETq}?nY4XW~7@@XUVl7e)#b<{snwYTFy zD~(mH6)fU{mY;jutxfa;=7__XRCYPfV<(bpL@wN>pX8UVBptr#;C|$>Xvt*}Pi4`R z%OaM{;$w1I2;L*Z5Jqf)XC4+m&lU+n))ws>qZ~LiF_C)sfpr>wnY{~V3`hZM2ytF^fpYQa-? zl>}p|J9^Eoa=mRxmhiBZ18LX?gXVnnt*(em-|U1 zNe3Wrr%2wwW=(WUBL|JL)%sZj8X*kgJn?Q{u{p6P*I+hzsiR!M`tbAP&^D1#ua8Fay275lPbH;n{dHe9*>G+EEeqcGaX0{ zPn}xlPHd_Hx`_D7`WStP1xW47s#g@6-CPu7b>XOIs$v_Rjb;~)QBQCfghk2?M2{?~ z#l*(TTP7H?S2@J5Ipd`BA%~#TSR#Fo&*=$a4ct1JzH3;G!~rTxI$chIKz}ldfzRui zN$`Dv5tKL-Tjn$-d`z=m?yY`=&l89g%9x5o465c;Z5Q-%)vF5%0N275ht-7vb(+r) z<`sigF@z6GCC#~SB#>fMDv6Z{gcIEQ8H~f!UzNu6Qos2OsnyLhtfK@tg2@FCsc{l> zb`lgSpYH6<7-AF%`09-2T7vvZOt%*I8okchN1qZP4@}%?#a7VR`3H&T3M%t)n6kO~ z+MvV-@ky&pOm~fOjFGxzMkW+>5OQz~pAvpH1w-@5Tv(;T8*oPEH)Sn%F!!WaPDJDC zq^ysGZK*vtNp?@e?+*qV07F2$zxc^u=T&wkBNvJ>u_kr8WaMJ3t^P3%AlMwt=O`|H zl~@$9qqS(#D%cb&M$8}+CGFDyPsay&B}WxsEvy00xklB*QAq z{0hO9vf5izTdF>Wq$@GI?9r^P`((T3@p@`i0!T8Z`Vd|uYQ{0{5!$Mupj!lv z%A!XXVVgfU9-ty1fzAIz$=Fiw&M5GS=g@lNG39 zp|fIms_H6r6Hqdx)_{T~MG(X!ef zgui|g4H9yNP{?--`N=|PW3qbk*|y(7PK=3A?tCT3lbGaW)qd{GnTe}M5kfIyP5=+& z**CjCdN9*r#x)&3C&2Xr8ab>rijxRy&15DhiJXW`bv&E)lQ+p(Sq|TN5%@x< z>`?cnz0rxJ%3UQXBNoQn%_Uc?7IQ>NQZoyC!Gjh;0LhouB=LO2exj}pr0;gp%q8&b z&+9$0m_Fj^Z}hyuLV13h*45ut*v2d)4etICeSqunztG{o!R!Cx#`^r%E?{Hh`JafB zQrzI|d#94RmCzh#HUJ=^BXQ#a{3w9B8ZZ-NUy`3BG(d8X)D^}HV+3k-Yt@Xt(%94= zh#07kvKBz#T@>@0^4F|X?W+FEim>)-KF#2{)82Tz`Bg{oLh9x9HP}YCRa$C|%rMve zJv&!27m94QxNEcBZhj&&t;ZYG^Bn7gUnf%Z{Z}K~P291_eL5AV_O#|+Z_GIOrf*br|3xp4w>T!6YX+3x_qt)}7q1TX_Tz5w zk-8&@$LwTL@Vw6o=QO{KE%!H^popj5{-5e-00IPb*MdFbMN=n98Q8) z_w;wwecC)9#=$?%cr=0|1(PjcJfdbL98co}-qAk&%tEYdy=50s zW0lK48spI|aDaijW(Hz8MqR-iFc7Z14vZnUGnzD)fe?Ux88w@E=ZU%0qK>o3>MY<0 zvnWSEUoeqTBDik+MBJ8RAC0p2-;3b0;LuW~iqU+u$j8R`)v!qdA_nk<>IoP=fr;u) zE|{-!Fu-M^X&4xV6fp}9xv55YBuM$m)jwvrWv6jdAFJNq0Huz`^ z3Dxxgw57l2lqIreVv52yN;asQT{uCEU1?i;Y_+#Gzy9hmD@yh0Y0B57t@X9W1&^4u zwa+Ix+%BB7dZHlq{0UPxdFh&>9$Q9_24@^hm1M|@$WO3ZkluyFcOAXwCh`i%+}JuK z-BST4s;Y=wSCA4R8=H(zP9BEH5|~RF^f0x&Pw}2;u~)1)icA{>UY#IJtWTIY$|glt zj77UZ^wCs9H@Z3t7IajOOQQeFX?8<@^vYqKfn$B01-2_3b?39O_rm83EC-)l^;u(Ipm4UyAyQRnMF;r+7qxl1#_Zgk2B>#z?WD>@u%3|8BbdMXrCd*!4hlFqq>$-CQUcwQ6Vknx{Z{t1kDCPL6X;eRy4=1!_f2}JOim@Cv zbIhflQ`{;?tMvnVTKvsHN(%_j(<2^P)!=DFGiWw5fcgl~*m96?w!ZQ|V8Gz``&dJH)>3($!ybkL-N);edSa;~l5jfXm8RnDZp zi#mzbz-P3+xxtH)cZ5B^>mW2wc=G6in!wVC|2UFEp|gP z#I341U#-;t_fn`mYpb(Lrs37RCl#*Z9 zYxR5AtOmQ9N*G*Rh36*_7FV1m6`nQBR92;x0Izngu&m3~Tw)SiC_w*mXj6XDdLJmO)QRNs)EHPuC$2?jC zAU8fiXyE|OU86-rOiSlE=GQR@XLVhPk|n9GaefVfa!nGsQFr2oUyL$m;!O zX%8c`;+e*Es9h#mSzt0x&8AsF(SGP-T`yW9DHUZYihx%%>Re0;cjC? z0i3GIvn&ANwJ1px?4k8CoMwid4I>I{g5u7`WbNX)#%-vZU zFY6d6NQ$yv_X|2$%5k!Un9WH;>MLo?Bmd(qM1fvFn}Qne`=Nv$oh3Gx88xol_#?2> zx8L{0wD@^!pW5;Xn}8S)7hGV}Y!DvOM~I_VCDzdIU`pg3@R0&$+ z8pgK17F@()gRHH(vFbLe??YA3#|%yHa>E-&!)v`92{~1;#bsE-9 z!|bgO`;P-)r%$1%XixSbMmqD%v$d-lLvc$8XD-Bz07NHuyfzmGt!N zW|mj&tv4p!bAx#uxhSTE+7%SfIqnVTj1ExI|#Dx>veQ2WE1v5 z6-J|Cb?TZNstyPYdJ!8@a$+3Lht-I1ITzW5;$1aDUtM99zn@5IYz7qPAo60$_$^H~ zr2x*Qj!`D+ErUcOAT$ExK8uys3M*26`Fkv)CPLG6KV#5zxEu`HTQG`44O0gh0WY~O z9k`$;;-HY%Ph*KYu=$%ED^XTg<%|)SH`D#rcTwV@bpqF3rc}E@Xo(o&9c#QX$5&t^ z!s;TsR>Fk~QQHQK6ax#gD+Ds3MXDAH zh=fx()YV~X@51?}H?t^=qzj8j@|Y!GlN@Y9vu)D3)Txk2siO~0xpXge=dK?lYNrw) z&0ZZJ$q_!;+lK5CsmAV&h8tKn)~TEMj=a>+&OG?PX}%4zElV=^Dc zQV&M{SgBkMpwR~9W}RneJB(R<(S-3}RbK9(BM2T8@2+oVcEquzRWqRG*ulynA9+3S z`U*wl3KDhV+ryf{8lZckGsZ|a3oybALLDVmjFuL}AKXnWuzHd-uy6;B27W|Cc0C~6 zo5-2TxEI?Tl_UrzgdMhr$)1gnikRU70;U;jFme2{!l*-h{5x}1_n#nYUUses zC1zOyq=SA^zbR>K7{ly2H%1hM%D}j2bOM5j@$sO-dsU3{H8MV?I}LmB%L?P*00`$3 z=gNq0dpd2j&Ltg{<qy2X@(ND~ zXG1pG#H4C%!ChIz6)9h>=7<_*IU7f~jkWv=IHZ?Hv@QnJV|I*}z_`voI5B++aF48S z_3pGhtM$q+eI{&k$guV$d9FnKg>I;Gcq2jR9F({TTv+YH6E8m$k=+;*sWUXxWp<6HInPd3SYyre5<&Zy&Mo8SYG+Aj_4{YqDb*(gmT(^ zBi}+rE}NBu^I{w0Nc*$W)0e-^t&)Qi!&BmW{EOwqI?6HkNJIQP{#$PZI0|6i9{-}NPPgtVn@CJtvkldIIbfms{5M5 z1=*(kkd(wp6fU0kb&I-o0?8cLKLG`b=(a?gm0DNRg2^%(BWB%ly(}~miPN+hNp)XK z99chPMgRdq0$#)+;V+2WzpQZGD@lVG>iqV2sN@u#+uiv@w`bcirFZe#I6&1H=E0Zk%b$ec;N%kBk10I zOqO}FrpC^9D08a$NOBL-!6Cl;jq<&kIwiSk7E{e9@OZ9kgwXz^c&~<3N&3Gx3yfUE zxH$3Nw4Bc6wTM$hDVu7q*MpbP$Q=T3Pd>rl>mO0| z#>Z8?@ex&Teq7a?u|;A*H@Zgdf|IxYf(7?V!>Y4vS#9WCwmde@vSq8{Z%db@49CkB zMr=jBtn5f>LFNS%L6pUxZ=Ja)f z8iSlugW|m!y@rR>ay}oNm-#rK27aKnNvB&9^H#@EHZ|YJ<$;j{*LdOVQQ!sS>Sg4l z$XGF1s)9Y<`(Ew;fA-$Bv1ue(7=FGwze3~P0XrxcI~N!-aMmOSayGXUC%_zF^C-5Q z=wMr3%TCD7@c#CRb3aBQWzqJQ0QJx@PIX79IrSZ zp3HDbz8!am>lMQW!*14NE61x!DX9V&GDl#QCTI$nHWMe=v*2Drnw{LG4Eu%HM0=dGnujZR~$LnTsrf@4CIW+wEbAY5=u26Cpuw2VCsz%%s7er6r0wt zJ$CLUKbY}=+|P;hTB*@EeK{Nq4!V+mAo>T^_7Y>Ah?7DkgMzTi(gU?J`Hob+IhIDF zc#z5R1bP7dLE|4zLPIfjZRC=-k1`}0bL1)*W5%{=lo8@pnD&Lg;pXjFN?13*aca^oI3cKLNjJ5K4 zov`1p%?(qpJT2tZE~dLhimRFHE0l3sB&C0}V*{)F!3CMpmq0SYlqa>i41w-0QK9B* zI0Lys7|#X+&fhLoGvEB&;@lb0Fc2ei(ja`;HYbnNk_A=j63D=QgbKOdqB^?cVZkU3 z?{8JrVMF0#t)7dUY+c@BxtAEbWL$j7xjXWc5rnos_lcXfQ_&=4b35VxvPGwps#F(Ffw!gFoT=k31K zInC|x2DytEeQXw)b)KYSGLi2f^Q{R9Jr#;$Qedvo425>mQGAQY45eDY65rfjY=?Kt zty+e#g$6Yu5Khr)?^pRyEHPO%Nm#;K9hM~R*LSQ4cwx?Q@rnw(RV1@*|xrKn!+kZ`uKf8-W%A3Z2ts|WfB=c5pI`I2KgptuPIPuE8Y8O}LB&%9=v z96F%;Q`i$OS*vTq6UEax5tHJ)%9x7_;@pf7Bh9G_M?w5jP-v$@z&Jw!oC63h6Kk9} z(Ce*)2iCC{+?ay4I4+5Ay=y*W<6LZ2uFY{u4lFj6iShE1a;ii<`bl%3O^OO~U5_kt zAI_t$IWAkU#m{4o(!mGVWuz>dRaYeko>+>#$fwtZ~mrM$0F7^{2(Q{chRUD59~wIn_hoN zf?}07#oif#<+ehXA68nXT#hz%t09KdTCE^y!wZ&y^dLmD@KKEU@*?sIl#nkrQ?7Lh z&qODV?a%{*Xv(dhz5{ag4zKEuEASy*F=@(mGj9o7QWFk4wd~C0X zkek4%&Jiyo{pzhvtU7s#MV_b{S_IEo6FJ_;7R8*Bl!LD3T@6XrKAKA^S=ZUSf_y3@ zWt*Z_GN*3iy-I13oJ+UvAaQc?x+~KsU76(A<-)J`&vx2-?UVM|>)nH$!`J99Y2%xt zN7gWB6Z_eT#VA$gyLrdXj4tWxUSCZQbD8J-eN#v`QJn%5lMDg!g!45Bw`iD0MqQ-z zV#ijU+0=0bQ3)?YieHu~0?&?LQGQ6;7tZ4FU3HkN-@BDgUcq2W=p=qBpp%N?;OA1d z-Yrye31$~6xlyx=;8|2yh}I*PFo&o|>ZZwbpbh#I0{DUJc)hzY%|0=Cn438RZ3lcr5Nj9k`mv%AByxG@lRMgk;aGU}yxDgW6cQad>&`30mCf5&8Of<}M zDReg_^$H#3Y>*-`y9%+WcoFI@>zb7%pjt=;G}l^Eg(R2sbn|s9Sma$*_ETVNI_}e@ z&)8G7y9cIG0}3nZY(tMJ{cKj0bde=HfWDP3fBIUq0*yu=OQ7zb!HO)TrNE0=}KBn(L3N$p4C zPXX%8MX)r2Yb)uhbbPt&myXrtRQM+QkoPu&nh>WCg)?C5%CV4=wk=`X)0LYkasUMR z!-U{r{9#*qR~mT!YUj1olj?Me%Z=b;fgXNY&ytz!Kn!{u?ZD~S74HKJHn2t`7q(ag zEzQOn6J%J3uFVu>x{$iGD7Rr5c`+G}+24gq`$}A2uGMm{rZL>e_@Ab_b!iT%v`c6X zeJiCo^p$@8x*9gZX1ErvhZ|*LCzbZsr?(de2u#H_oVt1pkBL#{uhwp~(p-9}=;$Wg zQsmQ`QU)u7WIAD}5zr@+f0p7KDlT2YVi#cqJe`J@Pg+OHsRwiCnCP0N{ zY2rxpOLHfQ2I&QV<=-VsF8xrp*4%cwjDgaYeV`EZ27>6h~!K=%^O4Ly8l4dJNJb8rKN@Fx7Ha*Hi?QxLgQZR5_ z@S<*c@*kVAy{q=q6icCGP7xyM0&W;T>pVMj5+eQ&%zcJii2AQD^;IxeZ~DbZ&cNS= zLxjYC6F6DM390NfIk6@bh(TGO0pF;~d$DBv3<%}V-9SVtT z?+UE)miZL1LXm1+uYY}sXPVC|=eCbMA<8(z*^G>I23f=ktM95ZV$?pl!p*|_3`EK# z7DFG3zKB{sV4^RnDd(JlM?k_NAhGX7-OOzWtyfkx{#Ewc*3gylV~5bfeIQ zfww?`wT8pEU^qFlg_7vC=W;_4T}8>jH+EDhl=U?;O=6907ks-84Dl=mD;P&neiHwc zX7t79%cf**qg$R6w^}ms)%5KvLzg?%Tu=DYlgr2j@k`Z*!qZDqxeHr@-i_ocnqVBB zcvN%?BaT(Nh>o9@5dz< zScG6=wNR|rY=Y#Mg9G2@Eodl0Gu+u%OUAKv)LE(n)q4i1LD^D@Nx>lNgIv~>9>bTH z#OQ)(n`o{Eaes=rfi99!L2ezQcDennIWaqWVJJ~{bHR93C_MBi0y=4^CTieF0p}?3 z2Y8Di!PjIB0WTL~^)4JpZUzRzzH;MHdUQ7nxmEgQdd)uFR7Hs#sukaB|KRY%3a=BZ zaX>%x?Tm*l#A|4D$ni%^7G9WBLG5B8P1c?g$u#rHeP(5QnGHEYvX#QU$Ps;NErd%T zXXsSUmx$i2tk4QR+DQ&JW8R+zN;y_ZD~*$JYfo z+2sJkV%a-F+vhBw@j`oYDy@RT%5qU$GT=`#rJ<1NMsp>db}m0V$VxoMn=LxLNXn#4 zKGT?D&ASS`Y?@4GQ`Z{fQ!r)>RTWJN zCG8VqwivW>_wNpKsLs0aB<;q%*(COTn|j zBu(~SvCS(j*Jkbc_h#x|GtDBP%B?Zl>Lwq9ZSnO~GC)2fn7T~0ulbF>-_cHux~%iK z5r!CD_u>q5FfmV&`ue6W>1yHJ18#k?tP}MCMlSQ=BalF8+}H;k<0qHRit=iv)1+_P zACm2T;zWey{mC*mmuFQ8+p(rzcrI#81;fTDWa`W!k5$UVW|hV`=zKv7@9*Q$oni>| za_>IA<;WX+z!~c5rr5UnV=}c=fzNKVb>_4n=yZ~aVv3@^nQQTP)&BzM`Oq<%%`(;z zoXrU}28GVaWG^y}mi~)kPVr?n($xaJt*oc~fhZQE`5;@O(o+Yo6Rxn(+w@(Pd9vUH zC=>LEbehGn9%{x=w$3EErS+@NZc2kavyDIee;iNve!U=i9?&_7q{FtQc(fMU<*GC? zoQ1=g9<+%?T0UozxKJ^ZVcWv`0AO+lnIAc}G!(f;x*fn%2YQ>6yTWtS?iK_Nl-bnL zv~UI~DO{EH(Zwq$s40u!y0ZleBaV>1&7LeZJAP@ItYl=_8>^|wPqAfUqGl^lJ@+oO z^zyuYzKrehSDG^$wWV|B&J)^FaW8I}g`j3zR@Vz`;59qoHgSh-EU2{hFHd?tbE~WZ zJ8H6-`GVZnxpiPBz9_w@8eV>v=7Va;G6-z^850n{{Jhm5?ghCF9{5`BFEmkP^Z9~& zc65cBg6swO*U54)^7(S`G9P7NlqwdTvKT3_NmiIOLs~~07co6TP6%V2E|*i!Q13~7 zDiv)lW1^#M^=RB8Hx>kTABlMiyKI#0t#q$U3;6g)S3iv&SBI8xqk&Q7wrhpGa_Kc0)VMdUKEz^O0W#xzXeJC{kHauqmck7V}H9RORQ zqAcl%-63n>9PdB?r~FRs;NCh6rb8@A?TMli#%I#3wc~eJERYyIAW5wU!iRVLo{a_=$(f8P)didpTQNF_b8Tfgi6VZK&~JL~;KX?7mgSvx zg@%a^g6m`y*yrTN4h5#tm=S4`WFLMgym|Dc$xLGVh|Fk9y)?h-*w=MKgwlnd8pS!)^vc^&1QaY3AWI$Z923|mB^fZXTz_0K>5jGOvg`{>z$ zF7ixeI;w{%4XuWbgV|4dxzatl59eKJS|IXK&=+agB1VdfDDF9KdhGfKl#pv_f2xDv zAnNmx^(Pn=f25?I3>tx&fQcWFc3z@723#K?L1^J`4@ z)2C03rIem(F~lgD?1H&I#?j`}o!~qhD=dd@hb4lUnqfAuV7OJBmwdiKnqLx<2-kW( zOODz*&F?fV-^-pnK>G87oJqLWhLklNrY;e0ecJU!9fJnV&6~d*mgi(E;U(bc9Ljk+ z=V-fS=gWlEy!bZt;>^?Te7#JEF;CZW0dj$sj+U%gV?_!V;JA7wC1_xWCR;AfJ?F@1 z5hm_M82K1Fvrz)vAqM!so1s}3Iq3e3?*@_reg)0-NNFErh&SvEFSLT_Tej;vs)`-2 z(xO?^O#1D!$XSz?%w#HxIge(RuW*_K;xhB-KQUD%cZUcupuhTsOklJ5`Ef zE~6qEt#;|UI5*{Y*B!D`!0oz2MVHHThr+NQqPf~gxOHUKr=Q2H>r27tPD=Ys2i)*i ztGOJNyHTU8SFSLQ`vToJ}e5Ab)H^z zp0b5v!D2dsQQj_~Aep%5wON|bL8(>rjFu_$bWV>ursw;76_p6Pj>l3S59F0@&d4uI zxSe-J&C}sbp-2WUEzLKtBy6%ae=lb%9>KOK^QB2WJul`$l0i(pvo{=QUa~M{bHrpV=T`x{VCQCFk*>_rn$-+pvjy7K=z0<8rN)8Umyhq!u zP{$jI<%z3q&Ppf???82fe;d7(0U92o992uB^tv2fnsB#7A;cJA%bt8#67s>3fClDey6t8F;d}R zId{Bql_jHZIp*HDcE0?^)k6Isje7qg)KB68=h_Mk`j_(3My7ALKJ$vpnFo$kRH!{u z)-U$Gw`jFJeP?uNMRqdt@sB}<|5a=MT2jwBi@zX|8j6{hvtcw^Le&y^ zYM`=Y`77HdNbsmR#ybUbbQjx%*I&Ulfx-dgsa-ClXm0lAg%h=WwDXBnvtdHnEA9k@ z9kcznIY(>Dd0F!RLOt@}BV3LOaAF+V!&0wlt4Z$)yx1q3yFr2bbok>bhZ-%*@TnO! z(;vhz#$gBOdA$H0Wf!s6WnozgbnfVQJDA3k5r=-JXxDlBeSc5i&m>&(c{C|DHBPc_ zJQ%>lSs{Zx`=KcY>ATY^pnDcc-C1&1;*-ko>zM;cUu->^y32)*<*-EEWEbZm)U-LN zHRZ5=r7~ET-XX+R>8pa$mRqQkb}#9(nS7zcZGl(v{?X3vG5%V@OvaK_xlg%w`TAwa zVLko(o;R(dqrKyH2Z7iS=;|X%ysVb0myYX?^_?<-2i%*}4A+Aeva6dc(CGeswi%oG?b{P zJ@{@kjbgO+!SxhV7_O21+u)`?x3lDyrMpUcWE9<&T$h&~pCcd}!Tua(#;XkD1;t(8 z$<;)kRv8Z!x8WaG zJ~`QLM7) zh96*1lLAdVIfp%?-3#j%kwt`w02YrD%~GRThYdR&-3*C+V44K$;)*k_t5grU%v;*I zP%K@XNW6}rrE(LrXbAiLOauj9L?(aPB?X29XelCoNHldEFficUBk!u)5eV2G@fuvk z#y1X6KcPZo0__UvQ;w)kw#RZsqqZ3uqDKxceBL*j|J zU(PNr(8gS{oZvC%bUae`IY-Bb&-U8;9X7~-ad+V;$E!MN%yk3-BZ=y+knyhIo1_B8-%Fkw$T6;z&jwB&@Shu*OfJ~eT=L)qH6r zRyj+$i_+6iW|C#7JIgXJy1wmIKcHAy`cm?IAy4bRl?tpAXNTrM2wwDI(Kgz5bUBfJ1 z$b}c~LG%tyy6zc5i*+1Fl)yLvni5S5XYm)@0z;S_slUzD4^_iixAjT>rsz#)TTk9dFCM%kSzS0cygNc$yuF?7h`2bow7BS9&l znYK!Pczbys#gofuoJl7DU%U5VgW&cVrXWNk+vP3_;BtVX-Hb4e*a(@1or6w*dgbB` zu53B+Xpd|yG|tXP$D?348=_m#^b%HPe1jo0ID{IW^qdLA$y0{5evUn9u&d|+g?;(p z#4p#0(<5m2e++x8blOD(_Bh7rMkIPfmQPTou`a)YdlmC^6-9y}7bHr;gdFWv(gVIF zZ<-)el>zAqt&@iL%~I4GI=*&vc4D4lD8B6U3w310J>iZB%brZLc+d|?ix|5L30c#> zoXQcQb9kb^wzrLh$HOOhp+$xK~L0PlOyKCyRSe4SB1 z682JACS+W}loL7vZ?94ul5>th*q;r`7$8BDnm~{afrgiD_zl0jnC$B*$A7`SmP4Q zGO`TBYcUQ(H@);G;|*FV$CEy)rmP6J8AlqhSJ{g=Md`li&+~Y4G0PlVq*`Cz{iT~N zPtq>1QOIU;ioGKmlo$Vn2dH%bgISM)G2vmFxbcQS8U*>sP18-p@ETZZczf6h^R8GZ z{kwq^O{`AuTwg|iu^<8|ZbWfnxIN*pQzs_itXq)D`xzW6Js?egjW5%fJV)sHFWs99 zj6DS%s(XApEIv2^5xsKrsB!}g5-+|49p5YhXn}DQgBUUSK!MNzUyjpS4;eK=kSy$w z-1_=`3`mL>81|f4(4HFx6KG=uY} z_Un1{KhY>0!G2&<~fQ0_#XD&=eV^50$ZnREMULGD7>@BsCkanDo5?ZfQ zVq5K5JyzQ(yxWG$=dlGkfw7+?GT{L41{B#N&)~>r(LwffRB%Au%T{SIpJYvb(q%;hNrDMVZVoDOsoFlKFjiX2yp)|*aoO6- zHRLs}R<>Q17q?xQ8hVCY)5|y>xVsKSNql7&w}(|A|4SnDrRMVL@}m{HP(rb@v7BB0 zpRe@?diHQ*BY=OKt7~icZ_rq$XZq7oY@Zh!!gR%}Z#s69sKT@1YiM4FYaxQ(zPLl??s2wN$c3WMfa&>ByI z#!o-3N!LhEK4djI=Y|rm1TVfWz!+zbp~e!O0Te2YMk-z6zAkYjAHm1+@-n@Hf2SaR zVXV5*B<=U<<#9YrfuZH|lWwWdGrLEU*C-|9vj8>W7)6fcT{>gY4xGY@)d|Qp^bf>A z;ND<+e;_nv^r4+~qj4NmfjJ&jf%#7*Rl$e^LdLDUrt(J^d@;bogCeHhNIWq*o9Nzm zVIl5brosK?(Ij~DCTQFbetWk7Sb(~+3YKBi_>zVgEXmVs5G+mchUT1}M#e_io`` zW99zBcl!TL=znwh>ydw?^PB7IrSyMo_2C-O|MliZb8VxEzZg;ytMROJ2?6f=E$Gb--yN3t#a$^Ht;!W87PVnM%cZch4 zuEAT7U`bmmEcSoUm&WR<{Yk_J`L<5gC_S2NwjI_FbNg$L@bj}MOS-ziDPG3%=XLtb zfro(9@ynl@^pZmCsF!OE>H~*C(Jvo8q?c{&p^Do=BBfA?^(I$)#XhEdUC&=OH|fi< z@l`b+H&%b5j~%+t4ud_m#p4^8*K8Ta1s^tL0OH{-W0a3Hx>oNB6W8<##=r51$A6OZ z)8Q#;^7usFK`DaYZ}O-lvfME3F}O_uhhcxs+lL$c7Nh_Ve~}`(V2r?6(e1TYLOzgMdri_$6W- z4#%cyW0e~@FgKmYD)=ZDXf&Fp7yifQ=0mewV0hl=wbh0mn*T}G#g3T#sp-y@dnijp zf>l3HN4YMpOBWf%{>P1V+EqNbmnI>Ae3m(;fQ)M8NDc)qv9Z~dRZx^mnagadf#ykONM^7E@ljIn~ar}Dk| z$Y8|@Qz_qn+H~gK`S{brH5Xy_*XHV@ra_hSrP27w;K2Q|E|XMb%BG4?b}C7zh=s{0`bG4?#3mjs0oiAn2gF+p zlDzPz%9zq?fBQv`6HS-$*Z1n0gZ3w6!Aq!qiw$ zp9-Dd=*zgN(`i6KFT#NQ=t>0~)8yuN>nTL`{`Ec!&La|*SN=u<@Sj(nSi-Xsk5Pyw z`T5T);kyRz>y`0+0i#JZfGeZ_`Tf7#{n~46zWmqNXsk7H|36$`f4I87x`7m7ZFBAW z{{I$#Ru&h6#enA>HvEZlhYGI`M>(!e^V`UfbJ4YZN=08y?s)E-rqJcXOwW*gctM<#;G#R+B#?iEU$w`Lb z{Q|Fr=d+Q-6jG_P(CCcjf^@q`qH&1`TV1P%>J2gPwfYv9!weQG4QFQ>p&!=P!U7rz zfh12Q$PU@5Xn$2ug=O(SBLniXm^`!zueKsb+r-s@P^VtW@0D4L*f- z0rJR!QtnLoh0uRW3YppS3!z(;6f!fKZ|-`en^P0(7n+Twh?;6F@X3rH?~sEY3<-U;H(F@!?nD6np)$6JE(RhqT)X-vR&3^c1dO)PRX1%P#Ci&!n zmtDSK#-2dO@b}7Muoq=hxskwV_14hn)+mM32KN?O9oefBaH89H&{bb*Y$@RT5nEVB zlL;I;WDxd0vrNpJc`CI7!JZXCR~o#uTdN6n>u;t=e$sBu=}(ve@0#|h)FNU*`Onvq zC#zdQ68!A#t{{2vpuSL9G`-IrBz0)Wo&4nevR)Ss6UEwt2t{2ozMDjH`m|G;XLM!Q z+k+^}!i5U_v2yYeTOF>N=^a|Y_sPt)$MqRLG8EMi%jKaO3^+hdKIOTPsYo@X3`Rvg zmhKtYe@gmrVg=9IC#?ncf(N z>ty@oUi(#h4`IfGEdESr%X6TOdP#plLP_wTXqYu~WCDB(PdYjGTvVx2)$mGwAANV+|%$#w}J^q=bxCCZ3#9gE+Pk}ybHb_?nlGv4( zq0J~!%htHa+jj1_PUv)v6pvawxIEHoxNYlm;F=7^)ldZV9PHw`u##%e?YSve-a@6Y z^KYgdOoTYXu)W`I-dv1SBxv$V41I+2q9nh|Fe}4|zZw0HO7k>`W zH`C*oG(7^yoIg&ZF!a~^N0W4#cGE#tdoz{WL92Yx8Ah!J!M)e}XFKh^_DTEf_3pvW z;p?zrO`T?=nTv>q@kwg+M(@`u8o?y6qpB8Llb3Js#ER<+$l1`(E$b-$!8(iG(=`Kr z1g#mlHlC+l)EXb4xd{V)yij3;?MLGRWK}q3ZybHtlDfO-qtbQjo{omM*5*_DQyI4i zoRlIYRzM(q{ z-6AGVav$`tL93X8vL(D8qqf6rHWW47CWkcu4z4C7_t+}BSU3GydWv-X47HjcHH}8< zccdbXkJHTg@C;LgbE0s5-vd6gZB1){dpzMh;i(^0_og@0Ud?3T$C3c^~}1TqiTl zxK#ixZ~*$nrm2Ib3L|zrod{cPif*ZogLrfSV!;!X2jF+jEr$C&W?@`w`*vYQm>Fo27dwpp~zz)2HqJGUv$Pl>%ludKQ$#$ zFW$5%)8Qgj)NgragGH{bUn_N5uxLPU6;ihayPK{O!${9S@F_Tpf3i6u5gp%KOmuH= z#;8GbGkIDTECLb4BaJ_GF4OC6c2CnBqS}Ik6r(i6lP+RsL7!Go-zI`M%Wqn*&-QjZ zCuawT2kqeAy`Z4XD(y-C!_t!gL~-1zFO!SQ0r{1v+_@qCR>G zv#ilXd4@zI}-pCD^}uiR70;0ktSvF%NjfeAc@7 zteOA!nN6duG;{@9=6BePA@@~Og)X5%a#aYWX1MRzno@k;p)D2Lsd|ND*af6?Fr??kmK{Oeu>1CIxUBc6wfOz~|C00H+y4@X=j+;l+_L|h>uB?(_WuUie>K;>+y8&dJbhzyCgHMmFtKgh zwylYciEZ1qHL-2mb~3ST+wYfi?>*n2UcGidt7>)s=+cAsIrSwe3)u zU)CX9k20-8L=CB@c{AFhLu>gOO6#v=G!Tln8E&V~K*H@9*nC4o*Em+7-|V((!ii<+ z=jsumo?i!%Wq>g5PAk+@(JEbvSt}S+@@(C_3sLNX-v)%OEtnuVyV0H5+V_{n zPpT;vfyTD9)ThAAg!Gvq3`_t&gTDRV1L(c`miNcw#F71XS_uu*dI^YGQjG@8>1=5H z(ff1oieQDa^9HbM0t7{U8_B)o*y|!a<|?@IKItPT+{`~RV}q?p_LfxQ>I83`y^1&3 z4~Ck5KAO{U#xhU}M7#TG%$w~_v(q0qGfNXUz}xlv=AUC7Y4-W2OXKHNGT}``s&Tu* zxfTpnlG!~QqdK788K9qQ*dVhB>3N6F ze^BsoL0eyi-GBT+{o}MDC_1m?FfZ|~Z?dm1@waiq4IFS*7N;J zuEoOTM|j>C-C)?Of3kM7dpX27pL^I!0=2&8YFdGg)f%Pf+$i;`KG;2dd_AobnX}j7 z>CC?BUcUDAf-nlf6C4!!K!c?@?Hc0rf93>EWSKIvIW@dk!|yL})lcW?9KE_i!Hs)s zhSLbzz6udKDeLZz5?HreXG~tcW61ZvY64uKLibDDOPF7^>h|qgw&sDkgp`h6`CKv* z7C60EIW>4WdM?20;^JRBBcl4>G{xy%*|zd%_ir17F}ki>gw2gfMP)!x`qRI{_U2~0 zxgAec}27Y!chA=2*$9TURp_F4~q7!6Sw zREM;k0zJ3LBW9=~Yk_&^XavE*uQNQm{!GYV^yU*4taanL;{Ls63juTKI9aRRJBKN6 z@ye+=$MJ1Jw;f-?y6S`9(Z&YKq3M-*R%Ai(7x0#G4fz3qmoua$e@{iO3B4uqKm3t zxb0n(`{>G5*Peu%(A z&fFt^AT{!RiOZ5eO2j$VG+a`wQs6mt$#03#e|f}CeP`uJT?Alxu4i>~aV{s)XLZ_( zP_&9)Fcl=6FbP0N)6jgexdE_Ke#eag5IDyFct3o6?QkRmnD*39qozXPze2^n zsapLpTMcuW^=*#?l1TW%j# z=u_ghf>`2TLWc|%ZTwzZ6FB@XZSu&1ss4z0_H(kC9`e)BE`HU^%-lHw*tG+)Js_C< zBiN|C$VwFsqy143e^K7# z{Q=4&wwA$J*X1>TOKBXXde6~4UA`z1L}}yn)sKm1tsXKAd8IN*rLr`lLI!59vQ$?d zg@(}i*_Z+L<1b`}5N_QABl_m-S1<5OtA_GojaVJ>-Iqz4!WzwrYtxWSKOkYU8JM2Z zs&ng%tRMou9{CqB>=3bLZp4X=gJN+|Sa-1q2HizLSm7&W&Sn1eOHx6|3p!4sj2{1F z?na1Zt5C7WCp}ggwj{AlZ9xe*0l9(TfZIZ6B7|rfEoZ zVAB4MiDriDg=|tSTr1&Vp3ubamhmESh3ODO*Au$RXi*}^ug zTdIzU@#fFmryJ$Tpo(iJK>S3&WaV=Lw(sYzDpCLj)$Nh@fb;W_|J+v&fcd5m$ewfY z23L>?V)vB927UMDd@$`E2)hq29jFq+5$Jp!A17}|UF0DXD}XH%Y3v0Mr5V6W{+;a( ztoxl#@@}g_Aia}9q(5hl?P@lc{CZXc3p_|5`Rk~&HQ#c|N&?ShXBGfxo%KU2{jh2P zdYA>Ud16^taj5P2x$i{Z<*N5i0(KrhIUZuy{m^#40d(|zHusP{dv6Yiqvq>#+2Vy! zLb&?7mQB@;DyOmeK^q+)K~f=9wJKu{vOJAWLphOH(lT4%2VA35otc!zx5K@JDvvzeC4*1G}%TRe9{WUyAp#YYYZArz@ZoY`2Q1wocl!C*O6xZcBQVP+`Tvt^cC`f=Cl`*Dw$v*^OyqQ~~^ zxqE6aNiEWqMR_@Wdc7KZy*uvNfu$`QhghmT>R2BE_pm(BiySKM6 zt%NYVU&Sf9VGkgz#tYsYVmPY5qFfCL#ENuQQI+DW8h9RKyT6oi1AiUS_r(Rm>;LAc zf}@H0_Q6Yo`8wFRG~MO zubkS*9$(B`et%jvUEgr`bq?pNd6`fh3<4P`VdNlCPdwNNw|Xr^)KLMCwP6@@ik12i z#+Z`--nfY@rj;!Zr%vud=!VgelU;8p4=#nT6Hpzjke9F63tfP4w@1YqC&(^wqfUa8 zk`IR#3vw0>;heCY3vQUS08;Tb$yCW-yjEgHu~=)rAI5}9XCD)tflb~j{-b9g|1vBV z?g=+m*QtocirRX*phkb@1iMh>(so$7fAl#L)bMQ6Evqmj@-rBI#?Vo3o<<25MmjZ? zo5HbMmB4&$wG>L1%Ht&JS|`Us$vq)x#7r?lWD>MS7u5bk zqcSw}nu(&%XS*7*oLVJv9Wzm>Dm5Ph0?cG)ATRAvNL<*?1uglf=H%6^9P4zUO|-rh zvMV%MJ0u6SFr5a{b%L&4ig|_}lpN-#5c`h%8D!XX(pKe7bM01Qcg@q-UDr;|p*w+C ziD(|`^T41von~n+ur?wYFae5)&bU|tHHdbM!?e?e^^j#X#+q`nP<=;P(x@+Zo)j&~ zH)BCHdY&1|Dw1g@>9-&Hc#sw9I1sd!)XD9Hnj5?NBgT_!{&zf9l*`YfMK(#}j7wv7 z3dH#j)2Cw2CGbx~ijgWRZ)WVXGQHRxWz1xjlLi6)zl%438h(VuGVKpDi9f25X$U2!d`VRx)zStA%xo5PKI?6X z+TK3_Z5Z3GX)uPlV_}EjX}u_;V`y_qF&h%SVt$33aj6Ws!D|!d)4!OV1cRA%A553q zb=lb8F0O;QZiz(TEFoNN@CH*OuO{0*eh6g|9LRc#AFT9|z%b!Cx}h&MC&AC% zq(l^5Zsn6*bM*!$+}Y+mm|}-Uw@!7~pU*ha$K{)uItK?ao_>WpddnEebB3e!u3;*5 zm?jDpY_>+lXCZ?l)zN!C19`bRyMItJOm+0gw`6)272A-_aYZrt6j$Jz!`<{$zdQ{t=+;51fa-C_GQ!{FYX<7($m}4&uCZt{XJk2s+&BH zRuVQk%R(5jh=LNJ0p8FFo~(ebQUifyBB`#jp3c)&F(=8prwnw^8=O&y*A z8)^9S!`YsLVQ@z}N&F%m@>Px|UAJNc3&w<($a_s`sANI+$}#81>`=SA=~KZP96OX| zt5zB?JDjNc%Pd}MH1Vk6=!bjgl+H+%FBvQGsQetXPU##(z7qWgOQq8}GgA8!{=P|a zkFx!Nx!oB6@d`mX%SS|XY|ot`OSZ?&6;~Wo#L=e6^PN%tx8#Rb7pa?v6 zBTU5~N^pW0k$GD}=*+seR1Cj(iFu#{G~(iv)g2P$be#G;daa*Irhd1=o=3m9@~!P7THP{mKl3OFeWf@jgKF)J8R$;2>w;?9KlrKB4JirF- zI2gsj30`#(^YJ=vV9$#;;-5v*kxx35?Y9Gh@L~z&Z`w*fxaiOMxOC)#n_NUaPz(qF zcg7c48zbvtX`3D>78yB*pLKG&+=`rbbhEE1m z#^eju3d$VpK+l1Sn9+r_C?r#ahCw6^iutR<&UP3^iO8{Ryg5T(hlQ2}nQ}mnm_cEN zb8?GHEElv}1=_N|oP3}ja$`uY&wt(gmT-5eNRrVJ@+%nka7N;3HEOd=ZAQBf6lh(Y z?g)-MxCH9m9{AFx;vNj3-3>^AS*U{LNb<^8nk6mmQVlQL6bq~yhM4e$FvqHAjta~G zDd@lzK?^D{^w!RS>!O#l!Ceu=4HxHd>B$r(5*-Q4?%(JZ%1&%aaCJl4;m1_?21@3- zg`V?(xR0cVtCiT=OaFy+sWE1vHffu6I#U7bhk0mM!|hT-pTeA=-T}H=P~9&WFvg2% zf>^cLgAXhiBkt4R;4zG$&CZqVa!`XPzcivOYe4wtE=Va8SyGFSbN=e9Fi8(xy#+TK zZE&)Xw)7>l^06_@<{uMQ(*lXlb$qjAKWGbS^ejP5fGVSgx-7edgelx2(LfQ{-qiHt z1BL&RM@sSm#yvB?hB{PjMQbbw**l|G}oKxdQA z7_rT02q4bH*3EfU6?sh>soi#}XB`trJpDOk&n86mHJ9Tj=;-CE>B6`^DBCJ07ZvZ3 zLP4W#H^2Nx;%Cj>-ELj%J7}ARg90%+vfxv4bAwLfy34!!r*4uLbn+`_&|B?>N{=~Z zQ>0{tG^uD=?7>+Q+wE3Cz-Mm2R6k26${{NHKIaqE;et3p z__2*Knb`+1za_02{jF6wLtv5~&mHSF5Gsu6RmFhKlVelIph4Pi75(||{-(RBt(HMI zj)uRH&3*^6eI(C@Of@m?v-6ef&R@`~(9x8KPWIN(V6D5rYlJWnaU$RsYkTvO7vICer?_2yQo~6FuX$N)(c{`NN}K<67c| zd-|tGCQd;{lbW&STtVZDX>gJjqfqJ(?4>s#(bGXm500*JV*PI*4YM>&pg;5QWYq<_ zl{aO z&q;UT9UNkf=XJkPd_6%uPp!5BP}O-T1PPOV1FU4?)P1aweNV2xyxQ&912!JuRRoW`^M;fKAt*;x zxL-k-=U%BeC2QkhSt;k2XaXQ7;nwfMgTGwbfpa;Y%m7v>J^a*P9nYNRRbU_UvU@8o zuN}JYE(c6iy}JTtg#)#jw@(IVD`9a#%}Wclae1>EZh1Wgu)KvulRu3=x|Aq#_a*+H z0vNsuwSrVHuVuD%@1|9+<&7#n-6zTm09GvhjAI(G?k;(kyUebJgRru)O!aN#^z~De zg?sU%k2sKTbMezE?!^g_x(-}Xbp0DmU&0M{>7@V8R7-fYi1U<{?CU!4%7|I0Ow29& zfJeqHN93RDqBd|eSxTL|DYg?&QiLrdbYi+_a`va&j<%M8!%>S2XFYIDa+asM@n6vL z*|-dBR?8N*#f=Iz94x)i-{O(4OIWvltY^+wRhX_m#yP95X7`^uZ}T<|I4`#LZCXXG3Z zxg4)1pIcl3@Bs1Y$3eoqsv9A~znh?{Z`4Kyi-Z_vS%hpB%NT{|7X zi5bdO8cUZT(TLwzF?*C(Cw#&sI3@R8oM1%B!NiTFm7K+gNiSPtXIx!* zFiTP*7Arogef0Uk;9fSK_wem+1Xng!s*`4}qk#FAN7%C_0M?Sl3p(ye;%{pn{p^teDJ1;56=%}LCI0(CsHn^&c_tjl@&>~Vpd#POJ zocsND6yDA-*)4%Bj#Z__9ahZYl}+tZIE3xH{H;}P3GhPI7{a!w^aI}W6xa;&9H63V zM^m~RExZ#bbs(%54ZXQJ%W_4tmbscbG|nXT0>H}*z?~UuWNmn*893eVn*#?Y{Q+SH zuoQ;C5rF~pW_RHAJ$rMn$AzJ&?wQe6=l~?L^8Go=36@9%(c+}w~(va?{@R!I8D!R{4wKd=OZp`m4>7}5a znt?SQoTL@BE}=%oD#@L+#Q)uBK^?yzGO#fpyi?sH@O$g-@{my{>?Y{E)RDXP6 zKCMS!)&6r<8^`A7Q}yQaXR zLEr?3i`AA9n<^iFl0)#SB+Vl3J#BhK(#XMH9H^nQeXlki&M(CJ&~<(!RKd3eyic+c z={Av%J55O8dN{~EQio#}ft4?M#7t$x!t-C@Y7%BFZT#9RE?wo3kt@{FzX!A_Ezww}0-F#c)J z)0^h7%y!)m5x-M}uY7?=iS~Q}%U7|_t%tFji^5G-fqR~hF$&nY&mR5>q)-W8GrxO; zpxn=%@5RS}&qKFo3W9opH=i%6u+`kpneRiAXNua|7*&G$n59s?qO)F&2feBjf9qE< z_Ad;CFN`=x!Ot0XwJ!``Jsf^R9Da=D+x9x~!5b?h7Kovns@V`WY+pU6-x`HyZY^gd z%O@GwTs7tMk31WXNE?qI>r+I_W_sBC9}5}}A04S8RkJ;;-p|GL$1g5)VH&wU7O$5w zM$#`qz!B8r`08;uhCj)FjfBRn z!u8hTa1FgnI1LJ9;C#<-j^Rzm$o4j7@*92?HYM;#<7E1parpc!Ffd{X(*V#~^FAVd z%-viJ;u?MpR_+n#!U1kA58-P={oL6;{|AWK+*`Uu_%D#a(}n&0{{hD^^+AFE0^--V zmaqRG7{mLYQ2z^Lv=3IE5$MYP#C{J`XK{09`$_hHz%hJn$xpKX1*U(JJtF)U_{-Ck z@ssTT0H-kZe**snOn;L7g!(^V3Qu>sgkhHb=#jX768RSls>w8)-fCMlZ(M^D3$Hwc z6o)=tKjhVxCn0$;q2BO8VnuY^GvrX1GwTp#)2c>6Vd{$@FN&WxGNS2$i3e$E;<$Cu z_J+a=9hVVzgaTibr<{`mC5X0S9Ol>Tzi~FOqaMMFuwW3_T?KIWPEDQpTynsw?fa-J zOR0-_&BujbcLL48sx1}^T!U0BfM15Zo=rpuU0#3J72_!Qhl)~BiXwcwiG9%#+6oj2 z&2pY2#%Dv!Ma;4O*33>vwU7vLqUu3;j--y6ss5w17whm)@J5dRXUiJmvL+WMvRL`g zP`nghXT7Wj4@zTsNY2`#l}ZPGKh6$J@@Y_rq@k^DB!lvL!D3w&LWuWo(L;TAe$&if zHAJZ}1+%Dt;gjWKEMKI!eJJb46W>k= zUuS()G#$=ibWm`5zY7d>z2a=$nEks_znyY|&9?@`0)&ft9 zQf}}m>au}J>3MZB{f7@kZYTG?(~0CPwGR0$BG&E!>q8v3w@x|SdVKDj+!I#24Aax^ zGh1x+3QfI;ek6hRT1y=i)JrwwcLm|^aid#jzH`+fwx+EKT+TXoc#@JVU8#V+5*byhx>;gDxX6=EYt&ZVbo+j%||H69HuUA!E@Ba(` z5UJ_$!w`-9^WNM1ncE5wzDTz_18kUA3FkI_y^s(4dAx1`ZaTl*%D>#Ui=txCQxw(9 z*;X1-x@5Hj>A1i*lLu1xw@evps_R+so9YQ6a3kuQ76u6kQ#FSlF%KE#EXC~BY_mkT zFb^Iaa*5)EFxgv9q_U`B>pet^_casu_;f>*#`M{FPoY|;9xDs1Wrx|;R$DCWj=K0Z zyk0VG@}GSt!9t1_!i=@MkA$%HzjLaaHx{>S*P~d1P}~b`oNHFm&0k49EqL|O@0U1fFiUS{DoJ#VD2ffAWns;__d?~Q9(+1XsjKg*dE3P(hOn-2~?+ot4oxm*GqygpP-P%7U{JzQn8 z;2Sa<`*B<2o_+g?6mDo@z(oR-;>rQ*$1`C?aI@Ctwa+uI2;5gjqGJx7%@31n@Gg@B_18@Th*G1t#VPFU`lG5tv_ENo>B>$zIS+Q zuSEzOY8^DpAv91!lg2Dqt<2=tCFb zhI-;bhDD{~eFMx3eB2zH8@vJi8F=m#mjSzav9-w6BtBmqp#3~h$}OAz8oknPr+5(Z zhZYlvYyrNRX_f#&Z%K|7i-#!=Miv&Esy3Y!f4PgQW_bmJj`*e~HxOoc7?tl^t`-CA zww5->EtQs8SN+LoaK3V9IrKW{qsy?&q zyUnHV>G2G`Jar6S`xk_zmY4&%A}0C!^6eV9`g`K|IGa%4uSqP0V`6y*ULlKj0NEv*B;x^}|VHOR0wk(B;zGk>bKrAnZ0KeB3?`8~Jq7esS(Il9trFI{eGM9ts zrq#eX=(A+HGhZ2B3quyM~RwRWaEbU^%_hNeOVTI>f z-@LU|bvBH#f?qFmA`hBkE62Ps-b5R+ly!R5DPKXUb!|u{psc zF{EVg)gO!C9QSzGB&2b^;tl`wH5Mp8AY(u;Cf0>1PV%3&)c%5Qs9X3r2UpMzAJw`p zoYmbHUk|IaYZDs{H^&2$}UOrbzHh+xXHv zUm13^l2rVy7(_37IRw|2xF6*wqlajJ2096_QiluZMoQ+|8zhKj+YUF8Z^G~eZRN?^t^xU ztU69-Yzs1}2?(LkCv;2F)hU#NWA#Zv&M#E&}bN2*5fFkXc30teG z*wul+Wa@yqyjfE#mlRQb$pz|TI65jUy`JVL)~VIO6cMO<)^8}sbunzy2V|+bVi9xp z1!g6ut>nhw#g!V;*VB&rYqG}V!3=V%)Xl`;7dh4@%5t-1lMH_Aks_i5rD!PoHjzhP z1)JeTqH?NTdI>3%H>4{q{#s6Jkn_QtuVCC%QNXv822O#uur_oz1&KrW$j%nw07;3E zB#<1V1|y&`WJUa^S0UTIR9hBbSrGQdZF|$Ko$XruPMafMr=NLMp`G{eZtVuaUweSD zP!^BLjpH?1>nsWE@My-tM7E6(jP$CI zI8;1YmV_VTf%iP^k0mFcyUQZChi1P!GX$Bws%ETRf>Pe_d{$@;x&$~F2 zn9n*xT-Iyf&492xjhtkVp~BxL$xct5?EU!Qos9w$PnPq%3;woeZ$4)kXneiFHY4mF zNq32U*fg&~13M{v(b-MrUsHe16a-uRRf>P?h3!E_i`P38LpnMj(p@bE^C~?fx<;J2y(>k&sjdS0K%$%()RL1W zXKH!R__)nUDcP8{`Q{W;TfS{j=y9QQJpr-1l!-q! z{LB3towX2*?@64gn*EpZaiH!IJ)0=|nn}_9hfwTC`*YfEkbzwL@#u||9{0{TLW=Iv zT!euXMHtXQ%CBI*IU1%Q^|tS|pi4EE^D`PVNZ1YrF~tJywNtu>FyfU}B}@pf%^WVjA_mJ(B8~8BD6pirr0N zu!Z-EtB9UtE1X}6!}qN-J=NHFy=l;xzS5*?bs$hwg#LaVE?wrr6-E_#u}e=I54|+{ zZ$k%5`{EZ~0}bZ8LO@ehU-9kFn!DcP4Z&yi7bJ?W6O2X#lMP9~qIH(DhbyD~bT?Gl zf*Gh*wbI{(U+f*32H6q}I9b=@lEahJ3}Xkxlu<=#qCmfiVp>aRb4IQW|0LviG1~X& zi&KqN0Id#hP_JU2FagIKR{{Cgio>M6(;dFMI?~wl$LV0iYqxuPhq&=-4-=ea9=l2c z6UeMeefB)6TxrV%in?(H0pG%GvQCxJ6CNu#rXfN4Xu<=9)ln4aQZfKsld!iy+GNpb_wB_t9CQpn(TXo_OVO99nXdqJLf4?CX?Bv z9W2y@gI33P&Ioi>%GA^kV7@9XBuk#kl5NA?+>_52+|O~oB@zxUYpgcgy7@aOuV3Ci zjHCV0MpMGkMj)kUq5mAF92WrW@n$VLnz)TjD|m4G7NojE0ghk4-ijDJUAd+d3N9vE z8KyGHGe|m#nL4LJiz1Q=@?5HKlxd|DyAl4;l?9cICpB$Of4hLsnemUb9uosiJ+^`B zTZtBk*YnBF_Nwo8}Lv}0KTaIPlhvVskUG53SZWJsYsuP~*YYCsCR@3^2Ft>^} zta zlfNWmEg|b`e4ISCt()9jf_A!QL7;)9poCi^mSFj=07rn>ZC38 zD`;^9@`kKPDPmAEb8Buz`^DEeSA>=qRNh**2jG;aSp7Y7Do;kHWWr{ejLFd$=B11w z{#V?tLb(rT2}8)*qbe6zKejmSSLS|B=)=UG$x%Gv{R3iRBNqy&5yNDcq+jMd6Ro%8 z=fs0HJH$JC>4)cZ2@KT7h#K}>uBAszmhqltlN*LCs!wGIZ-h#?KDw@m?K)M`Xh9b0 zx1QD1y7g0LQr@;=;t8tr;(tQEQ}@oPYn@ZLGRVjp-OcXJa>uaav&Qwji7UA@f4Ui2 zxHtS8)HH-UZ}w_dT?^b?{5;&YcDZ=`AG7QkeVYPZc9$^<^J88l*d{CH z?07DA#Na_sB044oEuO0F?wtvd2v5HCg}N^bu_d}UeWY(fDw+9b2sI2o?GBUmf4TiP zjYuU!CT+6)_7XYSR!N(=D4*j6;H|36(TcM8hv%}TS}Xze{)&hAbEGe&Me;X6`k~H* zrPlt9AF%v(nl29MV>&#|$5gGW#0qyu#97a>bEs+wvJH-i>2|}W({Tk*%#~UT#lbSWBC$oL>1ylthlE6KZabQQlFb&I4Lqz)fRV8|TzYR?br^J~u@Rg+|$ z4KF|I?m@WUHs!X;z07%xhZ0Tbr8FDF zzEMA&r_D%t^(tAQ`-gjqXk0PEPHC&c@83QNeXLrUOwT8oKQnjZAH}47DQcQFsHMVG zx)qqy>}JFCHN*Rk@97V&i4@}Km?mvB1|f2`n7Kw;r&>#S$tU}7csY2xdmgsD&Vi5i zApOTlvq$6xIu9()+TI4OrV_J2V0GpWDg$y|47(D&&E_|OusR{BffyEdUOo|2G226b zHm=+KE;jqMiWli1&~=SJyB;C-c=R28VpzNxc@=vIQV12Z&r%1si4T1FN$X2E^m(Rfek*7zDaw^ z9*Fz$`uD}&!%1^oAN6vExrDle__oHN!jW%+)gVj z$!gweeU*mh^g%Wy0fkPOM{U2fn8#n-CLW5@k+PL~jmv1mX9MFnSmC{CM*A$JYL_q_ zp5hsz20J#9;2(#rmMB)EzJo1{8{wrU)}WO>UdqW?SvJACF#(&KQ}>sY2}RM}d?%5` z-}@s8pT=3w*y`}d=mX?%(6T(~3#E1W7;`gc{nvW|r0NxzN02*D+~?cU!@2r!MPJ8d zWIgC`ViAr{QnZ+xhkfZimw2r&z{$lO3MEWQ?%`?Ti!|y}3b1xayr8jVKclqgGzJu{ zPj9{8dVbOs!Nz>Ixd1*}Ibpv97^u)(joWxD)*&`WG2x zwfJ1ONFNOSQiIz4l3uVI|Dm`F&6KXqo68DHlZIMvMhn}t_%P}!ephgv%L=%x{N!Uu zpEtW~PkW}Sol78<3t^MYe_}z0izRdU@VL{Ad_1GEz_2J!Utm~bdz16KP;P0tlF!T4 z*et11aepmrs?(iS7VT}>NxAmfwLWd4c3gc?2~X3BW(@KX!u@&@%{FzEZNTd43a^J; zk80^@SwCKvhSU7F5>UB&m;(T@lX^NcpwwUT6~5tSd?8DyLgJ&azQf0rI~MABPVw^T zj^4B!MHDxFn3Ima1%=Q~!ur}Xko;$MTGatGK216rapWG_QPQLv?-g+S1A@3k)DV6u z*Ddc`+xo4K&)a8mnKD(i^r*l@ zmgq0sj~jq(Y{Qekt)+GBbLbYapQLYemZ`Z}ugFYe4t zqW9WFB4)(ehEh`WZ4g4d?0P^%)^sueChQ21{Ch`|9@168Z@D4zLc~(WnyJKxo!O5z zv1vvMZI+&~^%=&YJtYjE(i$(3@xX@;n6yiDjqWA#_CZTWRKzI|I-~s7kA#AFK9;W9=1kqwW?Z=h$ zc#gyo++nA|%!vEt0#k_fHd1Z*Wl}%#=G#f?Fzf-C1mJ~YyLpqIfx@bcV;kmK#ke4M zh;r^qsINd^IEdX2YN`|o9TBuUP^g^o^hRlKI-~6eaZnXyV*=rX*On=|J7F0Xm4CE^lFCNFFE^I zQgZDjMhwGuUoMP-D=S->5SBM491p1ouCEUID1fwj?O(x^XKi^C{Y82)5(EqZCsHis z$8K*Jtf{L>F(ogLdccKkXv`)N0NbK-Ow^H z7&#?3@MjE>?wj4+dLuUO)q*8k2j`>IhbJa4;9ptBk~aB;6RDYEq*Vm@@yFI8FS7B$ zV^7AI-kN!P%#Rk8K%Aj*OL7E_3PtI7v)r{9^1Sj}b%!}3g1zMZ!P`v4l{d3GA(Wt6 zS@<^t^I&i9zUe#fYovSGx}7I-p!)%oR9CIdkHcy4GA|5iw3?SYPKb|`>Mtw;3LK4H zKU9^+kJbh;C=thR-m%NJ_cKOmmLEH9)9DbBc69Zm6k=oSl^Dgd$?=`sy{SvOKKVy- zI1phuySdO7&N_h#zsBbsJ9acKJVFQY}J$*6VXx3Y|{3fV9o<*UI+(C?}RocL?^u)@w z%YTy%S9m#?3U>T9)3}u+r+|`cOQk5$3Tqxf?*>U5UkB8SdigXc*H~6ap5p1Yj(4*4 z)%}+`Un%v1cO9hRrt7EvC5-Tjx#d&%b!%pYpzafC=(R4gmclmiWa{bv@|2x~2am1a z9ok*tjGC>z0^WOER{Cw#73l<(;8*~`g&>!nufWbmZ0C^(8Ho%YpA~V+un?itjbPW2 z)FkjVIc(m7OEx)Z+yTq{))46F;05>2Co9zB6^jXm~rOdY-6Al){Gtnx}Ls?ZBp!T9Pbw(eFoSVZO8MazTt zg@3*bJR%LxE$kJwkZ|4vpU)Sj%pjBS-fq)zMK35*M zi}mjNoN35WpeW+$)1=H?rr^1Z2Wew~oX@mavjgk)54r;ZFa#?7 z-T$~MfqzsoDD*X+?#~*>dvono?n|?Dj8D)$OojQvN&^V46sA0Ln!!hvhbB zp?m&}1POgVWuAJP{CM+IIglayT)QlE3MOX8juT|k9i&h&apmq;XUr6u&o8e@{!R-X z1EcigD@lM-ShyLI2#&{jyt#*(I)Qo?PL=#CRC|v5NilEL5h>Eswhj9~v?qCq+n#sSLWYHC<;? zp{jZR9Y)9e35Ekf$&znR5NkTv_^{>-y$Yi!5LGhkvWKsdUkzqGLEYYbYuZ5|})^d|b%C^{g9*0$(Ygy(=9H9$odrRuC zo6e-DSR+|4#n^<|eK2Eu4pxFhh85xa&0t+U8PsRawBkASu>1}7)Si7L<}OE68~qM z2gQGFq|%VUd}+)aRgCVvxa)QH6kg6Q8!8j$UV(o3RjLsCivi5k^;dx;x9}5Dl`v`L ziV7!+SCmv%y(KSLdkTvXB0jeg690hKdVm3JL1xCf{1c)V4X4PyL~sn7PcW_tp`Pfi zd)R5UMXexf{19wU1;(s>90psjB{gn-fpesKO_^J%a?(65p{tk_6%Kq{>NVk+FJrw1 zZKCw`U;}Krt)u$RZ@s?gmZeYWe=BLpYcCKmKsF{CBq@TIS&xss77w3hP@Y|RzG-!S zcnNRk?(C{Cq}d8KT`PYTcFD3d=0Wu&IABoOTklQRvE$CZIVT~R2_x#g69>`)IQjEH z!Ep1?x3_=0y|gpHs|t2jAdmi!hCJBTOP9 zSaH*mm@O0v#YEH9oX5TJPkFkWQ5I=2ng^ytV)Kx?w?wG;v_q3ENYt&;i(B$yhKeLV z0E&SdYcorK^u$F+SyphN1WUUj`P-q@Hq!1)xhqm`Q)aSf*6hNDWo@a%6$k}MzA{ev z%fMich2m`VmK@g)c9cWg7L)7K6;D?fW$%@lw-??^SW#?&jFEKfv^;R7PZjK&SH{ zFx24iWn_*u`hJ^p=T+!8`~3o;xTT!3D8E5tW=WDR`h=Wl$QI)Aa52&U1GYd(zkw7; zYyju}c1rpp_?68=jP4-yjckDeni_>5!nyQr{1H~Mr1Bfz!0#JFOw-{Qy;OOMe0*U& zsQe%pU$0=KQ}|m}LqDi}1pZ>RzEJsSNErnMSu{E&{qXt_8U46eYvE*T-trPk-pp%^yLQn@-oJ&sX2{YO6A)+bEz@c(F;4b$_mc@kKxBc z&Y(eGZ^D}bo- z;W#{ff!PdRH3fxH>I3UGkgmJkTdc!QlWs)|U{Y3^z=3Mw!4oTLY%B@^Y&4qm$%e3t zoKw`rNG8k6EYbcD)GnfITvu@2F!~_kL_@xE56pErv?|5DSoJtI7?Wj>V_hLy7u_J@ zPt$H%9xh&X@T=!X$A>3puMQ3?4a>z=Dys-1V*lX!sCbaX=JZH8>;#PsVhD)4CcigM z!Gbn8&}+$1nN6;y(Rq%;2?FR==cs*rNB}F1pBhTr(C;VRgo9P8;MT~VX`kjC%f+zH zoY?^b7rm)o|euM(<;B;SrA#K#*2DG7w2QpJI3owUE>aQmi z;}70kH|%XDG4pk*APzb&o`m_ab}-a3-p;D%{T`f5MOCM$=#qm7^NJVrigMEJ?E?1= z0E5Qn>H}-_tGN7lP9tn5Y*z6o-8^nhCqY5~x@Q8iV5-=ZJiYSkE$E!JcFsEgU8%?o zYd)BDUEDD!eh)c%bIO9rH2uIXBpW@3b_FwCuxxAkcOeGQ5{{B%mg^%7JGpKV>KRQm}UtT4sRK>D0ERTPtpW* zJ*Jpns!!M!QD9ua{Ph}raL#EeI?U`zH|YammzE(KY*N5{?i1DpXnVi|C9Q>+m7KjeINd%w)6=CpU+aY1bq;u#2ER(+yAE(koj?8QjDy>~ z6CFSesJJS@>eAXGlzb8ZfX;&lI%=M(2|(Ci1e?%b5snl9;;Vn-#mST4{=3!tcF7+W zq0NpHmoW%F(Z8RR#&)&NsZ!>RO@_3xxVT~s${O)!j7|e7AD=ElBh*j7bBsEli%ce| z2fpk7{#g1ykN;;coUd#Eatr^zw!TX8|N8pIdZU3!ha0P_-|auX^Z$!qFP~TQOY(V@ ziys9BEY`cRXPZ(b)yc*3WffHh7kxhH)JHxEdt}f;1xQ1fPLK<-yw1pOm;#9t^9xf# z-L(!)&rX+8Rh*6KA0kI7Drv8ij4l94g`yqc=@OY;;A{~f zcGKBt%35}crp9kEoi4qT3o#)rmb zcsOa%$b!+c!Vclp>&-aUFklQAZ@w>)=4U#ix$aMf(cmKk0)x^^b=5SEo+VQPxS+i{ ziK_m(P+?qMO}7>*a8@GD=vEfLULlewuLwU2Lh&Do%ezqdv``^I(5_M=n04hxA`Gia zMO3c~IK0^S;R=p$v7^AQs&9HqfH9y(teL}Ccx?>aT!dHfoO=d^4Rp0w4c@|XL|E_X z>X-M(72e-gB+R%Z^h${1hMj#C<3Tr6K`K<>O7^5B`4RB5^pul-Jqhr454hOoGMB}AEfMaP7==;r%FRY*R?e%F=f~}KFpWOM{<85aaipwXFT?dQO$7jvCv1d5 zJCQGX#6c%v7ut3a>_7@#UC^tIR)H)F9Hj7IvI6jpAFg{rZ8BOv)*LM@>i=H;-{t?vYyE4R|K67Wb#=4ZH1|Igwdmny z<2(QN4f#Kr_uw&V?Jg$KaL5P0xI_j-GWt=M&P!&$gu?io$%$O=S zfU{wBeWkg!^3z&SyXe;g;ht4OUCyUVy##R-SVBS=y5|DnUta!<70PIrf6JlyI|Dqaf^H#r2JMbF>`ZiFiir5R;}ve|@G zy$LG=7aY$1R*|7xV)%Jnkd&9_&6PEbXrZKlll`;Z1B@T5oQ~XlyE>sSXSFqXfc;Fr zh2n|z{-dPswcqv5-REdLp7>?XC+T$t3)U@&SIq7!c7XEW$LBK|t6a+NoO5vI#oqar z=OWCCWOjP8E`U*P;iW4fIL{>Pc<8>RKo{Yphnw5v#bo=8V*7t>$WOF%cNz~{quvn) zKB?71diOHTrvAG<$v0=-OUM;bkp7nnBSYr*Sc3N-y+4k#*l z<{&-}-c^6h-c{d?syv_G6~90XtF7bhm%Hti{np9$%i52<5dZ7eSANW@A#Io`$znb33_W&jTc z?;cGU8&*oeVF5=MX@59C2$56#z&Bs&6w8@o`vV~-745sN=7LE)Cxy_q)T7zZ7)f_j z2f6d6e{wyb_JG%(y#tI}iNYUJP#mpwwg98YsH3zQlETV9dmMVhEC??6Inav^8>g8X zVya$tCJ6#|`^aEL=P9vUz<6F#g=%5r*!UUJEpx}5Fc&MLsjdY zTdpc{a2Bp;ABr9`t}6`au)JI?neY<6#7ua0odD9@rG!j19$YjpU2OP8ADyQji!Nt2 zMC*@g5e#3(Dk<%pRU1OnQlsF4*+yQiv0t9@d#i{($hVhys%( z=e`WxjwdPxGJyJTvWag&e>5DCx#l=|bVj zuOqLEYH$QWue_u*FsI*c!HA9KSPxO?wI-d0* z;;W*vZn{u+GLEUQSFDRt>s0nls3MEg(ZZ>zDWDo=KxWI}Kjkb9^?6l;iGQNjkiCw> zYBhvcWO+b;Y8WJ_ZUT(|W`c;b=`X3p>!=`KMf%Fp{^z&z87)X`lZu`bTE!LjF3M0i z&E`ZJlSm+m`{MIl^7STYy+kqK?#n$xbb;)&N%f`DZtC2sTLpPmokm+`mxnxsNft02 zqFq1h_mhv(7c0=XwW$FJm%=NR@fiC{QNz@FsH()*)#V^~9kZk5G(%JdoW~m?>7+IB%0l$LtvAT}IpHIj%Y)of6{le2xU&|1$Wn~Zd?{UWZuFNX6 z<$QDQ&c^CO6}vR?ss$g~MpcJbIT(neHN_eH| zgprKmxQDigb|Pt1tg$+mFGxwv%5v{*hO0Y6om726>m&KQQss%9hcaGmQI|$O-{wWG5g$S9L!E&d6D zuU7)?E4cvvg75qTwR2Vg3?*}0LcbQj?RSc_ILZMfoKluM*V4ps_@%IQXqvEPpEhE4 zr~RvSpB9H0-#lEr0LB28MYzb4B|Q{L#ER)GnUKfCd*jL_TszVx^XB3Ls&R@J@q$$6 zj363vHFzRa?P_4?#uWwuxf%%NKw?#>61^JawHz9^$nyINQ>btc(Hq_)6UBRsntK*T z!h3?Jx=>GR7#{7k2dI_@vRl0#tr@j)ZQ~FN53-Ex3T74Bb<{G;mBdA;3VsS~TNY+L zq)ShL1LA6!<&+iIs&85oSJ$HhGJVIv=vJU3g^lPvqcu>uW;_h&8n+=pZ9+Z%g$juE zN|KBWAiX|zo}Hm`EL=s_i~m!Vb2SmNUQbYQ?{K?yvU_-Nr^?t>y$C~EZM4{Ut=UUW z?Z_((wNSy$^MK+VnB(l$y{JwRq0`Q8#BU;s9>?9;1S47u^h|2vxaBChN?YO+0NXOc zE2_SXv?_-zztHMIvQqbX)vaylV5YD({IE;IA!jYNnBt9FPX+e@0cpM{rM)x zRPTKJ&p2#CJ~+P4iIK<6-A{}^{DA-yFo!5QqyUQkQ>Z`@eu)ZPjJ`4zC~E1msQ}45 z63s0c3`o1Crzp^KL@couxOB8|i=740$nf9FSR?BF&n%mgR!Cd1m`h5^hHy2=-yD3w z+F3ALvh4N;dB;JVyIWg?E@zkaR#~f6ITX-i1oA{(BZ#1=fcWp7cXF4BJA$+d_(QKY z+9&3IjWzrlA&Iz}kJL5CIE!b!bV)mdg@RU2_qA;6`7tK$a9qO%Xh~Of)}ksM?W@7P zdkYvAcchBxPT4n9)v(dv@*ENkppI|MMVnpkL8D1q3vsBe>U7EbEB6(j#wC3DRzT}s zP$|V&EGnq1juIxSxMFohZ79QP0b=PVAxlDYNRG6K4j8=cC>k6-(5Spd?1B4Hn@~8c zs-;#{krM}T)RTJwZGnYh>21A*v{FP5>9Zh#gBqJ+j9asS^zH=tLd@8yYDjL97b$jw z@~flzZJ2`m%8>2lLoe>#3l{n316~D){<@iCr3aS|aU-TT8j!tq+zEbwLEI|d^qRTT zwe(oc?0REGb>d1tP30EsIwoP=SYOkaZN!^cb0uMXKmY&921EgHtjyRnl)rV&-M1#=f}dG`y&|p|K+FG7_qVAKq@R3ty$O zDn(<%Ed@~hCXOaJf+5TULA$|!F4GymO-5UGD&*-fzeT?lhj*|dwXY`8o@FubT%<&BML z`@KTB^-jc*yJGLD2YV6^&!1g?jJ++wjZc%2|>nR1cm8o2Zab zMm5Ba10fBduL1PE8ru2jq!PJ(s_v@Bq?0_!CGb|8y~p_1ouD!fTom}*g~c+h2DgKk zW)v(FEk0FFAv~pF?4l=_E9Ol`N6UVQ5%sj8PPrGEth&PE0K;^`w9|gkcQfu4XXf{G%G?!4l>jc!X}5N&?&{0^BTtSN9moG6<(5Wx2^WnIKoe%H}e4F$!3$ zGf;%d=xli0;cL!8>0*_xVSmu~u!uOtFbMXnTiN=8lhV&eq$Ig4K;=TgWtTu^eBjUb zVc@p5rK@Qbw$pZ_xNU`PAG`%mThp*vg~LaSa0)mi{^#4u|3&^k-#GqLu(4*v|9{w| z_)i;a-~E5Swf_%>f7{ibK016F$Q63kQ$bkvUpEavb>UihHaclpKoXd}Q(c!cS%S(lfN`|u`ncSmWiCDnd<}u~KIs^@Y zJ#>I+LplytOWB-eY*$+XZ1;eBw)8c6hR$CIjetG6YtO#xfBu*1e?0mhU&J53wg30S zMzbODf7Y679RGJ?ef>NA|CafG(Qi_7d}!zOtg{o)a;UA;LB_f zO_t)1sKh{{MFgV(TmzXw6GAvd4*wC2FwWdB$we{^Rdo4D(CH=^K`;z{NhcqyV}^wO zBZ@yFTa_HA$y5vbg&`l=HVvU`#`F>ypYu2#QKsRmxJN$Nc#lsG7Xm8kihnbnAvU?d zJhfCCT{LiSMBV9fpzr0$ri}xfP-Hwho+wl76sTE@4qX$rqLWO>DnKB17olXcF*yoP z;xp_4r$dj=;*W7x4n3X-!gzqz_k`cT;1_RDh~=aUPG-T4bV}fKq(V8I&u<F2f1jB76UGiz>HoSR~HVRe_IozK<+uPj^ zb`JMjy9WWL>%9UA8XZ<7qXiGt)WdUpMy^-E`tk@D-|4~Pn~;h7Fd3y2tcYAUnaF0! z*WLEb4`8bBuJEyZ+eAsh>yI0c9_Q`h>n6$KccnkwFB(zqem;~SpEp3nLb|I ze7w4@+BrpUWl4!mAtuk0=`b2&OE8_R9t;k)_bjtUTHTq1Uu3SI)_xY#8jPuZ+A@;1 zWlRf(t*ALY&60#b!jg1NxV^o{RYvKx9>b~J9r74W83DV!N71!Z#%nZop@x=&gOq#5 zR-6-czfWOnR9^-Ir=3U-Tm@yyC`cge0G%tBD9ocJc!m$N(FcQUSwxTZQk7lySZxn{ zz#SYZx@GSxw2Za)lJh4D4xYDUtyL-&K8*!@Evwsa(UWh{?gDOZ-35F=9t2SbASuHO z;UZES+q8m5v(ztZL(zw}9!K`rZvJiKeV{M<;g53c0c6I5K6={>&=ZW;LBvj|(V!F! z2nN;xknP$q2HFUZ^~b?-@Gf{8yoX8;g1=E-bkly5+g}y{s(p+pq=79vHP*PsJFfz*Shp6? zfkCWl(TM=nYAD6LefT~M-adLy#P{t_?`5K_h)5B+IK^2v8oOhd5M|-=Y^#r0UD8Fw z5rQXcIe3jjLx^g5;EciksJ&f(Uk_yxr{qeY8s&(QlN+;m3NXIT7=H_}-dh;A@>ZE1 zscjEsmrIw4SafhSSujE)4O^bO(c0kX^!Y zdr8r2m)b(?ptQ2CW3THQK_raU8fhn(jiCrvXoq~O;KWs`OI0Sx zqf{3j#t|7Pu}jd6avG6Un0aWs8@A(*5e_}mG=?zekb$y4Z=cRmPg|M(-NIEvAwYg}IbDJ)hhwr`fukgg=^=hM`v5M`CaFjY;T){kL!MhsP zduPUft;VC?D4!F-SUEzJPos-0WYUW?R?+4@^Nxjo6jPne&a)|Lt+;gnb-`eU z%+#{?i6X%iyHLBMHe3`w@=^HCJC~d@$3_EQaRyO&XT|pj_)Y0w!Q|9n3KepDil>0% zsq*gUO5tqkv2Z5I;N8#Y^~UxdG}?DhD}croz^Gi+s)A2VLG*k?&0m+PFk{J=SX9{X z^Y|he5jliOi-K!7tmwd7p^2)X5k47ona@bk@n0n5>SmH z1F8@JaR^qIexg-#wv53IDKtCz51nHIr?^Xkr`=a)YHjWYm1dOek3~d0p#a@_P86TE z`rchEc%ET&fVgO`KHgxS8CZ@VsgLE8eb63c zG0%opHkw5r!su{{{>&n=Va^n1W-UNLAamJA{VaHi!Tpb6 z2@ZyF5>JfQf^;00@nGDa4X`(uVE_mP)&!(q#2hCA9S+hl!d(ttqF!Zmh50~x7{+2L!fh`nzgzBYRtXlrW1>tQ6ck+`QGr{}>Dx>Q6&G4l5YC+Q>wF>6^%FG{9< zoWp%5?N6@>XK6af0HJ>cYyv9|OzpkkXb{aV;>j(Q5CcaMu-yao{Vp(GfW#fVon#-E z8jWC^ZZe#$xf5L_yIjPQ1ZHeM8qG+q0s_;! ziU`|SS}b0$Lgg87_{*k?RG73DCWRHC;blC6MbjB0+9ra>gLE3}CBhCQiWz2w2%Lo( z3)f3{Mrxgc*rem-jlBcAm_kafRDg43O2=xy?i9KKM{_$u`Q5PgnE@Iz0}Shd@(L%E z7$gcBO%~co_kgGC3>Fe<6QaR&bd%}8wA2AyYv?Q8*o1Y3hr19lipYbG(W8D8+S)Tt zED>R5+Y7o;s*r*JyF5uU4!0!Xon1-N<**T(ZN*OuLS-jE1`?kxE-!NbNRjZkvi^mg)( z_m%SY0hg#HfeFSJk^Lgy18y#rrvE{||4}gFckdpQx2XSqr$_&;WW*_QKLCyY2I;V2{b1n;FN!En~;9PK$*6g?5pzes0``9l} zS}*XWDR}tTBfeVKZw?Omja3M{=oZ2uP*NRJhEr1pYx>QzLw;jA(3UqFRvFITv}u*$ zHxI2cuPcwN@2@LA=_f=RTLzep0EX#R!wdkiEo0Kx7?y^JOJ(}j0A+BF=tbOImvp?S zZzPughRPx3gR{C9ohJiUasx3NC>CeMMmnIc0<_IW=d;}tYfSL;Z11lXF1o^>&BwjJ z?jGz^RvQmj?F#hnp&4SUv%S0f42!`_yiUZ6#Fa&LiMY7J^5pi**0G7^NLPC(3{5}0 z<<;?i%Q@;Oe8oAeb1a2y84%`Wa}SEpkkG#6_4b}a-9)o#3QHIyq-ApnZMO)&(Utn} zXv<@xur?dO5gQd{Q*0U+w%s7?*lBeBma!&nA}wc?Fis3EM)Y2(aPCDocIZ^Yt-eg1 z@`eB(qRHg#d+61#jj$Q6hmXR>X1LZ2H`ha$x=$|3)ERR|Hji#_%!TeHG*#=?7vN-0 z(5Q)<=;Fm|MY>)?why5sWNpC!bou+1t) zJYlrrju=|T$Qb=-%c_XIHI;(miUYq%Tow`MT%)RL4*iN*L5tCd6{o;z$a=)}WNMNd zX>^g0m9NvJUh?d>virhV{2{SXyM0Kz)piG1{*QaujqpnHaiq0MTE7_VO2bUL5n|r=q_6xx6nR z2&R1!1MR;2uvi;EXw>blw7*VQ-j;WTHZk$*M7a(8ZERU}ZSlba!W1C5F5RFN2%BQ< z;lr&8y%|$d5b1(iQM#N3j6p5kuhVjdz7B$(IMY?=mH|oRBCenRQE_Gd&2{D2k2OG-%3U@YrIh!!v{TSbrNBv2b2W9%Q?!C$n>@~~2iD}H&^=-VeL+LTdFxbN%1Bh4!n2oYVY3FVWlRMOlHoSE$(LB>L#%@PjKPX zU5E!W%D^-g19Q?LGjIh~Mw!4Atm*-(lP5n295)tUT6%xWU`|JJaS&Lo`Gfdb2BEO_ zx}@CGqQSnt(_nvo_wH%cIVant%{1-NKj{jh02JhUGk*$+R-a7J`w zEZryXd~Y(4;9CfPk7FKrBi_F0VyrmJvdEj(E6bP)29WY(t|OFopK1oLh=5ti8x@2hDy!8Vyh2k{%n2_9HlSdziZx^Usk>KriWu zX(@4tF-WrrG?^|3&!IF_$&_BZvfJ19bxEfB#51(bb*%+WL1T!z+=i?Z|Tj*D_7aHA=}_-BL?FF9YuF5r?pT%`@V`GQYr%2XRthF zE8uS#8Q0>+hWprbAJ^Q+b@y?@ecW^(AG(i^+{d5ZD}hS!F_Ew_nxACN7GE*Oy~paB z6&EWiUTGy0WgtYzE*gx(h)IGIqa0STz;j5;W3`@>DJ>IW&PhCq#_Xl0<*)$@Vgr)I zx^?EVS%hH`1m=>OfT#9hC#1C+vKxP&BdASgihHv(7mA2hL@Z=gg}$y;vDdDn8>wtM zBqt;J+~=_%Vz?pqs=J?j^uRWg=7+Np8dDerCyhegPf_z$*M+?P5EJujKJaT-iD;Er zYIy6BXmxC!V-qhKI4sgnqeJi~d!+!!zeIm6J=$;d$C(Q4B!99QU4cFz(9%}LG;;RN&y(<@yJaeNIE znXzYq&Q4-=K@3;DQ;`$9-2}CdWMPTOGWLi!DlU^bZlphTwk9#-VPF}Y-dR5p6Op~c zgBR`234c>IFO%C0LUdIl9#q0n8`$)XE_9jf%k(HbpgW;hP9h4X zZ03$SWSm;uyOg~5I@VU#W`qU@$XwWn4I;4w>cv@ilAI$&I8U#XeO#qA4II0qY}UnW z8fbALr#^4)k$t9)-jgW>AFDy(nJNJJLI!6gQ_Dkc)5X@y=y5Yv>aYP>eYv6!S!SgS zk3#xE;~rsdQplF-9615D5f%rQbdsTn7KrJ`vaFgY6Jr6qMVpa|iQ2*YDClcFdJ&bN(b)ctn%FZD@$=R%opJtrb7CJ9`wFEgC*%Ol;#qnvIDxf8pvI;x1{REjg zxtzfG-}3DqT`?_GR>NSeq&E4@mxlBYVr- zwE-i9VS(@xt%ldC_u!YgU`sOG8eMo7RAh!th4)smWQ1DTkKqjztiiXpwc1Vno?QJs zeF{wEJ$>(oANba`{jmja@`#rz{qnw7@_GuclVFN$rgrO2qlIPrGv2fEj-n~Sy7xmZKC-BMLQ zcz_kSDzUcq{h#4;sVXdh$L4lmaF;4Dqpah?{wZFW0jNbDjl*ue01(Jr51yzyg*;@X z9;Z}XBtL*)c58pyR;@*)U!GH5>D~G4B{XT~IuD!6#`DSsp4y(f|HBiMDnS%d1Y$tS z?mFGls(0AmI}Ff<`-I@yKrFzY1y@}rjMPHoGPv#(U&1$%_$IdB$QnJzi-K4%PUt^Z zi_f|`n75Sn4ygyo?P#p}lCHN>ZMlvc&})!JB4n;mho?4*FT48EYZtY!Weo^jEN(#d zhTg@pN$R{1)b4oD(EGy&&Lq?a?r0EQfl<|V(9AbIyxm58Vkl_L{zLP7{D*HC|3T(GcpS7p$^yfT-?X|YfB;1gxSxsJzD}hYTA^ezHvOlt2bf{= zQdpv4a6U^0uvnLa4hehYkI%;EI_wZioFt$jkX}56{ij|0(aN2L%c+jVfHI~Xi6Op< zN2r6mj_*%6xC@aHR5vgqO-wh3yirE=N{rO@=S3a2|6VNVn=nidNY0sdAVr~< zt*ib7?=W0raBz6se$jrTLX#<9^$QH7Y9f~D*YQVutGIo2*TCiN*JNc+<#m=fj#lFV zWWz%@G@8=*o2aqh`M*CF|L4>HEFD~Z?EpZx(Eny*y{Y3rZmczs{=<*&^#5DZf1Y5LAm^WHh=Aj#&LRFS=cL7IM;jkD$7A10Ec({cC? zR0BT_y4_$Yl^*MkOUYgC>_u!6JO{%#%OYr<0z}}~$xH&H@JPe__;PXRvS}|#F$SG^ zHHxRba|%m`3gucfx#))Q*HxXOc;TbE>&CZl-@EBIG^U;eRo;Qi(I{I6pjA8PP1Ng6 zocQZl4`ad*029b7kwC^sRIusbY0v(_I1=g#BtPz%dYP`RtZnM1Z+Iz`( zMvGxp2RQz;@Lm4@Bg_Bp`HyN$%!c`OIe_`+f8!wqy;SG_dV~DizQ=$5mgm2jci;ea zVhsGYgx)b2oF9)H9jA>h4=3!uT*EX?NSZKoI^9bH7)&EA{<&ycM!xq}3cGGP!t?8E za0V-L&*v%#dnm$USZV7eT{!38k8>}8IheYyKH_z!R}47-`&r^>+plEgUO(a~V$FkA z&;aHd%e});^!~WeyN*I=OY~GFq3duNa?wxu5oo?^^$@2V{=o^2Pf|=eMizON-y2PK z%z@?WAy$*$Tl2FOQ(kX>(vfY%L@WobeZFDEv}y1+Exd* zsPJ~|r6$B9aZI_;#+(OjZ1G98{`g5hg%xh))4Hy@ypK+?upOaF14{z~VDEyelgUp) z`L8ZNhMRN1I~P}7r{#>QwN$nm%x&*MUX~7diF3-1%T@1 z2Bp6i)Eq`1UnZCiu%MoNE2xFZSAe(`){<`pwP2nxcVS^I`DW(yAiWNHv*FkwgmxBn zTBc8W=Sxo|S0b~GRz`JxWF~Q}QKIjoJ*#zZk)Eo6aJ>_(@O(@ z%h2B@Z@M7{eNHMdR*0e?Q1Djeax2VzAzP)vF`sQ$TL*CO9QZb~z1^&%bMunoU~Wu; zmrgXoU?glSYemGz+@1hz>FE_}4c*97>5PCOkhXb z8}ly7xyn*=73QmwedmqL%UD%+(xuylO#;;w45FiL*Npi=HalNZ35)HK&}QIut~WWo zGn<@?(BFD!&Q_#PP8MZ2xHUneJ0*R(52GF#eLwiCbc`_6Wb2|Me*ZEkFeHiP#+ zos(y{Lqd!&z`p=P^urB-j&Gx>1#fVsc9!!}=O^CTJwAg*+L&(by;B71+*0K7E@fbk z-cn?A2QdA4J%$OWOoz8|K$E+3Kod^$`8gaAt{CloQOX3-x-v}AMP}3MJ|}YfJPs)M zIcNmG{RR}>)Xwuju&hkUGWO>Q%MifX=vOtYNLYK(r}Qtmrabm&UPDsUG$Su=Z6wDz z-K&-GPKD_3*e9>DVxS7EdOVa@RdG>;RXs+^tEyNjs>&y_#arm5$>_iw&afgeCIsio z2{`Y>5AzqOR##5q1UQ6_EV-JW>Q*mGpM%qM2U)Dh{3fbOMMPQiLqAS&)a(qtg2FEx zop2^y3x7biWkRv&;E4vnmtjvTMDL{oT)3aagC1KaOv%62!m7nk`2Qh00o=qrL-IuD z7YH>Ah46)nbcI5nkcUtON9seLi{7iLerq10uHo7rEp|fXNXFj7A@q|`h|07Q#$z?N zG^0Oe-fS|P(x1e!ZbZFS`nFGmy$<@hQJxrzkC(%@VXkl*t@FStAz!m8-CNfLU+(w1 zQ$v*Rs>W>e_gOlPYmDJ~=oWOVDkjcp@X~8h70Oq2tKsyy-}C*h3IJ+>*%L=asdpmh)v+d30>^gJGQ#q^07@Y5k^+E>)P}{R&_P^6a zu5J#t1xnW{>wvW755j`|$=%{EL!IB?YCj{*l-k7btx!+{udW-+dNAAi?-(>KYb4G8@eqWt2he~Np z$3Yq>DGX(vxc5W#7Umc#Vd6rHbF^%9B)|bbV}3(1B;5h1Hh1~3OZv&jf2jicwcOm4YM`-O3M<5J{~qlmGe zsTYVPJLJ7q^t$3KL5VCB5XT~s;TfME@FP4!ud9|R;y|xpG@NMuc45> z!(0}rsD%PJ^ur|uzZPn&4aoq}(4iVDid2#zEE7IUHR9}CSHJpWW3?B+-^~pE&UkWg zLKwrGU|Jq1=d}E$T+_1h)od7QVJ%T-?s4}2NiAv>bgyS4K^$vkvkOWz_Hw&lCQWU8 zyPXG3wMb-08Vcf(c7AE^Jf-ZlOx0~#SpoDpdRccx(l@;#b%&K69m$LR^3#GP|CiW* zTz*6Q&tQGkw*PoY_8+U??LYq&_8*sbu>Zij%+Im^KvEhnf2EA!Z0g==y=w0rwsy{5 zYD;zNm2H7O-_k+uS^gLEf8PF&2XS}G_A%ei{(A#6C~vGiT;FJJHa0hL|8IQH|NTw( zzcueb0iN%ib=oJgjRz6Na>~ArDfg~82Vo#sI3nYZ7%GZSa#)ntm|_&R#>h%Rr)-=k zxC%vf;Ou%J5mH3=kYkwK=U^p73=)-*k|IF#&M-V5${tr2@Dgq96XDs6zVIT4SMKqgb6@<7<5HtClkH{B-Z`~TEk=DknvQ< zEW>ZpOS-`tQNBllMk!;a5^-K3rm+_6M>mA4#~i}T!-K@x5OXfyLcNMzNG`|%EN>Ra zZjPOFNa686WRf`)u}-;-gtQ`M<*7fzEaJa(&Q5+gYIn|Fa{Uoz%N>Zzk#6E9TM@gp zr{Wh>2&vQFYj2+*y>{#J%F}&3Ywf?@Og_T9AOt?D?L)Cr0^KAE| zV^!xDl^SxyDe9SeXBdgMj$Uv8x^4mnYS zklLU7oGo@1+V+f z`2R+8b=92z%~j(6*PE-~&;M_I{?oj}@xQGTt|P^KLwvwCh_%4~i;k9#;E>X*V>#sg z$$J-wDY^4vVm?Xa+)GvXE=(VWkLPr%=DmBbO-5^UshUPQMU!+c6K{7+r#C=LhD?%) z+t>0cQ9N=PqTa>`xYR97ZymJIDVUwUh7kq7LU%Fl6m)+Oqq7+4xNk64)ioUC>9zO{ ze+4PVJ?Z&c+8SX(fnaGI@y&h82-=J9VD4UIonB}H@0+X(j_zc%t`><4AU>a6+-iFM zn1(?K)17!cy@YxN zAFVLCJ7~a=$E#>7-4SKhQ^rICO$7pw!IjHd~_u&xuBsQFZff|!_Km&BmGo@ zvD*QVwTIy%9z^(@_g36#KRbN^Vkuo|k*2`i=>!@boY**s8{IPMv*Zak9wZ#@oyTXq z>$ng!{lrBDdEj9W_1Q^JPXg6deQv53@C}RTTTJ}+X8IftZgtk0GN-p-E?aa%Edv{rKa@I!4Xp?Inxr zT-{}1x9pup*3HfY)7SUz#dl!=*dhn#{2w&qFY5Q zG?sr-SemSI1iZQC!s6zGTxhN=w)c-tepy_R4(Lu5kJS{>Bjl-az7&qj6tD>gzvU|e zARgzUV&vCmm0*2q$q>mQ3w-IHB0Oe}h1e>}MAPa~Dd^kX2$Z`&3(jNO*hL$Fx9VNi z|J{~3uv6BKc2~Kzzn$&rZEnAxHvM&Zihshs_Q~`bl4%YZe8-(l%eDp${)Zm@j&6rP$EC1;~EY)z2|ieo|rWX;l|MGtD;Pc?hZJ_(i@fvMqsvT#~= zY}3>V=I+dK-|^-P1RYYUld6t;hZwZG^yJ505vjE1SEH}M1IX@F5kBXUPKVu4fLs!# zq8jKA9uf7TF;Foqpy|!;YQw;@hg{4Q-T53TV2eJN^& zbb~3M%-Z|gY1a{~zF-QAM^hl56?2RN+3AJP|J`olwjB)ySy08uX;qqCvR%{1F=1U3 znkxNM4KWNbh1-^cgRd@n*1Rrjv3g;SRLRQ^+jcNV!f0)g-lL59`_^Q^;oz<})sl4_ z6fyV4y^J!-V+eNEG<6G6NUdr-iq1;t0zx50(R?)37&D)V4rZE!Ug60_6pX0VYOPw( z%wvpberZnbxM%$N^g44aPfHO_t$t0Ef4BetUuyqfrvJbEX8Ql2(R|p@_CK4etEB&5 z{T~1GU!wnK10V_gIgCchc!mZ5K(vr=GowqC zG@I(4WkI=_r7wb6k=8sIq{a*vncw~7eBIIpM`h}5_w(m#x$XL2sO%OH^L5@*=+3Hd zul$`f;PzO)ND(eKsNd)RtIWSo|0OQbH;n(avDR2yx9C6J|E{fWey9K6lK!iC2lC&E zrz$okdK4kohc~)yMMvuQH8TXePS7%z6b zfh2<-jm;yS>BMq)V=F4Ti|$$}uIxMJ?jV{deni59o4aP$r9aI3_){sOyZnyUO$RNO z_1D=Lof1?5j3)t*+?Q4?h~ip0ii2PCKt*LJso0uL(@uAi4$2BVpN2kLk{xbcgG5@a*~J{`sL;lX%ul64Ilznb6DDr$!9YI<_#Hgu3) z7q?}7C~eNGtXnLqOZM<;CegxiGAw{>e@3kpCMC>UAe8Mo0mchJgQH!wmH*hnsbi{I z@D-7BLfYxvCq@#{+)%JV4+TXLB?tw}?QsYDe%=IA3Oh0Vq+Y`8xi@1@;n zu#-#(UZ1yVSy|qyJf6PnO#MXLv8?8Plnh!N5xAtMh{o4Mf-{XU>mAo}Q+UDVY3b-W zTgJRZtxQy1Okl^FH@M%-lc^%hR9BE^DlWf0dz8LR5*Cpe!Jjf4_){-(T~kRQ(u$cI zEN-5*a-)21rYV$Xr%N7SO;kfJ%MWu((?m*P`aP#CO|z7x--X?^<~#r0n$}!HnM=b# zpgT&(AU2(j&FsGss+S$d-5{c$Cuqp`mJ=KzyZ)=N14{~CHLO$$sC4itROMC4C8E?= zzJO#Gl@}TgH43SDVHF_n*g~GnyQP=V02T{6)V`q1(kQ*Q%4xdl73Ba?OUR!=>4GDp zyu7qfO#1z5uxC^wmE5UQR@iF6KQ_E77$jp4Ltv$-&}6@$gay;ZgkJl_Bm|f)CbZlyCgHwx zF+;fhl95HyrLaZG=V8}6m+N+2LD;-{C#+XDb(s45ee0WJ!2*x8zo4X?38o+s{(^#X zAee&IIdDtAt&*nu)=4q1`lTtR?(y}p0rj4P)GFP7gUlQ>BL@hA*~UN~!24JSNeC^? zhUdWdTQ5}{;1UT!UkLir8|x}En>=WfaoN3bF9ABj=G>eGsv-w2yQR*hC)Sqso3@jA zU^L2x3Px$MGIU3UOCNJJ%cUW7j7KKOwz%9|!Z()+oMmB}3#%zHv^XBK>-i4j!r-m9 zgkUZhk>1+-MAFQIBCpuk@T zGiU(sNm2ET>y|VpyrR!zyqJkU!Wq>wS2EZ(-wfMfGu2`gqa(NDzO*ujWLE5Dy=q@q z7waYFP|-4lMKL)otHfH2Lc&^Bh4mYSB(`K`^MY1*JDDxn?3UaW-a>3kR4+t!3kQc< z%Kd2a!6lr9gcTiq48OyQU5{=q+ai6Awb77-7%G`GoeT}NGvYrTGu+}4i3|9$R&~ly zh!6=I8Ni|+6Q!X~41F7uwukV6m`JMHK>?tu*d=oP2)2`KUDiVg#K&gE`hqHYs-7=%@nZaRtoQ zb4a=k>6l{~62kC~Qc9OvH|{)~F|5#jhZMZ*@IpWBF8*ND*mc)+FT2KswSm+|Wf|py zJ)q!M1o*M?|KE?sC9~;-&Zqjj-E@?6-TJ4a;hi98-?p*~w4mkRMzQ^z*iN_DaQf)@ zaJz=VwCfeJ^}wGn8$=I6GW5&B(QJ6eKkLCerYCxa)r&VYCBY(9)NfhG6)bXX{aP8f z1&ao>wk0Vv?!g@7={O5!<04f)2bb(8=n9lfDYOhK^*K@;(mdATD}}$hUY~P)sBIrf z*|oCRI)2eP?X-8a=4-*mUqP4a*1EEm6)v4O$5E2SviBs?O4(+-LqeJg?f_`ttqA~M zOrrCHbi{5S_5}^bNp}_yxsVkZOrbhZtbOQEphD<(g{r6}G79xDhj`a_B?jZ{Cy*9j z#L#W(GKZq$xu8IL0O#+s1S8>$V@mri*Q=DXy(V%o38K+gkPP66rKb4YC-pyUc(G{pS zN)dd^-LgqlNb0A6oWQJWgObZ7?0e1xh~t%(R46FVo#p4^?&fZ@On1}C^p?)5TX3tZ z>Ygj#QFCSPm6cAy(;d24@eNqrP9s~w{)o3MCy##_QTB~Asb$vs8U;TG$2%{MTl;7G zySTu2>trrFh%p!7(pvN3<|bYn(XU5AG{9Jr=uC#t+=>j8$PPn(stdHcNnLA z+gkSRE+ZuRSes$oK9+Dt>6C7V>xDz6GBsNfbNjH!mh%onQUtQ-{auDKW>cG@wcNK1 zaeOmPXC+U`2B!psGSKl%Hyr>O+2)i0P=-66J?ECgMJS7#+qsFnU|Kc{)~)faGvVGa zSIWK>@fFOCT3xH%e&Dr$zVzhWxx;m~W>8CP_k9*siWw&L7(M6=6N;eZA{k#MrUpv` zcjFohJ5y``bgPMvV+44cVUJ_?H{YDcvid7CW3lc1exK=%F$etJ20O-N@OPW(7_-8! zW}M@gAl}_DBxj#jUez(Wag7*D&0S=^pWn%p#x_)(Z$M+&Db6>WvFsG@Zs+1!9L~3H zL7CN|1_d5FIZ}XBM$-WhfZ@$Gi=ehC%dLAo*OV>X|KOR>W2CB_KaJ2{=mPd2uh%KF zpZs)N1R2jQ2{7PmeJClt5J05ncN?<<*B-8=vB6WNVe(O|)~dUsZVCro7bIn}=R|2f znq16=Ds!8%pRd)c<>CIiI+G`@mWj=bJ*HC_)88@Chw-Ib(TxAHh zx|OuZwhge5c#jmEyHRef1arxBi7L!aon)!qrfC|C;tR@X^O!QBt4M_-(w+KDr3ZB@ zZ#iAeGk+@8rrpxHahfHc+c|;yxt;rUet8$opYFO>N-n5QP|+`1{S3qN2Lp`m#!}fR z9W5QC*FiU(;q4wY45F;b4Mh0`f?8DPq&c{~Y{4~1hC|@-VCf8Qf=PsF2(Z!!))i;F z0{&1*f^-95dw@+b9RWp_lM4oF>Rg)YrL-^=>F$~_%NnLqm#A>XF#T2`)!@Y-J*P}Z z(O`nfCMoPiXPOKKAy<|}NRqGs6Bzlp}ISOGvh5^M9S>K%!=R7BiuJ z^vaJF4uYo@`BPGg|8tlObRzusWHfNp5229>F;L$2HAN`^AFRjo}~ z&e%-t>yl3kpTl9?bv3BllCQrOY>(AH)=Ib=58|wYBCcbr{N|}}4d{EWTUUVMcD`W# z9mnRcF9Ob;%v&!%^OqN8_n)2sXX6pOkw@X(CBnPmG4J}Uk@-(#*yf`5pTaf;OH1lt zbeWW|#{1l*gy;ws4TR-eHL-J+)PqS=U|N{(_&Hb}?$j8YY0Femidi$*ub zYj0VrtxakqvU(tEhl9ftvDX6*>0&vwqQH-%Y#IaO6p+galQeBruk0md<~b2aic1o zq|!ZVtGrXraj@VW*=~pYBdDZ1%F8EIXI8E&`cx!nPl6YHR``le)UlWIEo#}ksjP@~ z4`z0M&VsHOW_ckSY6%`qd@dqXY)&}f*a+oUK)$Fp_^ex(;+|L+6THXNp0RgI?k*qW z2GjTAN%dSkLIV9C)tfl0KCX_^YWV_FR}r$l*!s_2U0M0Pawt4XDP+05xOJR%5QfrW zdf}BmZ-{g^a+iLn3*>p-u);chRxkMCaggXdv#Am-(E@ZGRd|z>j;v6zJO}?wq}3Rdvn6HG>Rbi| zwLA3dcD95APVy2J-W!^<$|_Kr$ceRh4ZhbcNJc42*59j-IU}$_AKKv+j+jG*R4l`9 zfzS{Lv^l7LkrnSXdwgiOkI!tRDUEDLqb?gMmI7FH0emu(j?V8Kec-$N|HqgAOX5FY z{-19c|G%+m#eZ(BWBljl=EnE<&;Nq>&lvu{O%Zv~Hd5sQ$OlCG7QvrYGJunl-Gdh$ zCl`Qz<%AEuHQ29RxHRUkUFfqz|CU$2TLj?p`fecL@^W{I2Ry&}tzm&n@aRVe=1Bcy zuCHed=l1*j|8eHuqyHTIyZd!%%&qjlv1;f)kcl98_;9W9o&JAA`Y-d2$zS+7aS1bG zj9~+-PMFE z8}xVcGustd#jStW|NVRF{|f2<y6coP1^s>hu`=Ax7+{Qn70#;#Gux#!(M*$Q;0iy zmHuw12R@!$hb_ukERkWff-{7{7|yK> zRSIk}C&@#CpS!9XKmwKp>Q!SI)@HC2tp2ppc(?++shy8M)ZsGmREqzZ41-QG7|@NlLul-lis+A(sfex!E|xE=6;_U3^buA`)+473%CL$Q z)%H6(hn@Pup8~tFL2^zV;FNZ>ODl^ijVjV3*!vZ3;Eb#zS@UYW9Y!Ddow8G=%7~o- zI=D_Tqyk<{QAh`v6#5zkTw72~HeDy%hey8z)93>R-Iwn{1iwdGO&e;UnSrWJD;c!d z6>$9!-z9Noy%JwM4XMYFLJfuj?W4vwqjY1ecb7^;oOmjkpe^ulf!x+L1w{lhg;Xkd z_T2$4RPGuidW`vK;qvF;!2=uN^}s>2{Yfaay28M3UFeH4EE&=e5%wS+VGn}`L4%GP z&2l<(Hi1cVW=G+OG6oa6p|7L38)sQWxuD&-JN70o3_4+c0s*}aS|hXwN!jjIvL902 z<1o0sOfbK4CibY47!KSnOc+pu&TmI!G}F^(dWPTtZ0&=Q17iumc?|LaU$$ zbq>)w_d3bq5C(FsMwOY>z&$(`16S7R$5fR7O(`A-K~rl2;E;K(vz)kl9SaOyiEw@D zHG!qZD1kZ#6`@&VGg?(^mu+*{#6{z|bbaEO)Gp}gC5=0eTan_tgq;;Usb%5BS;Je_ z!$hs;3hjIlJutg3tZ7XAKGC^-aZI&|3La!H)uknQ>FxkbJFJbhe#ra{vH(r-nx_>^ z3s{;qjbc@`$S1tUVH0HoDo`<9s^GPY+8cq|96Hp|C({`LJioj>x(5%oRA1b!eCLgf zZ6g46+obj~y6fjQD~<{FD*eMN*sMO-8$y9$)`1tp56(_~e%x;RRF+J<&!9p;B zO(L;zA*<8_4Z?IqEAFWgE0+O}z@eFeMKddeMR!qg6q>?S^+};;;rspnzv2DA&;L*G zBDgyoe@z+SHvR9qt^b7&0ZIYQ@BII_l>g1Vlf`NlFD0W)?Mg+cy6JEnO_J=ZD}d!< zXSZ{DbkshsZP(#Ufxn(U3GTP<;~|GnKf}|1->>V^Cx?57udUKcRQN$~Ke7rP93Jnt z_Na^n{Xgu=j}dyEc+du;YZWk&d zQX|ivqtcMjXUV6sh&PL zaXAhSPmbHI?U!T`@JSDRv;!yxGO3OG5~?KEabnh^sB$0=wtO0bZUVA&Li}6 zlz@@IkPOFz*o2eBs|@7Q&{bg;4g4!Zqn=@POXp-~`|M@AwbMTCV0@03tyk@{&dKra z!3(q?u(dD57GFN4_^G3ybUF0)A0j|^b%o&=#l!~H zXckoYM?6Wf2`-Kvw>1L2s*6e|iOQFu3|~4kE@*QnJ(F42^NLmVCq2KoBr^_teb=g>q)MAXvLfb@=@BVEgF!@Z_*=t154@ z70Cv#uS+=8vF2c4AlX#pJ55 zmi+IX|FiKpolL*-1+5uYiv5&R4j?3ge!Bez zAIym=)sdUg_4j83#K=@?nobPm!`UQFr;p#N$D+Pyo<#E|s>Q2e#&>2`Zvg@RNpByI z=6%_1UQl|SXP4naeEald`^e$xEF>6KD)_;@`m;~;!%nmAK)~+eHV{lY@5$odfv#B) z8Mn1I#{JA)EaNfo6y7VnfUI|<+wluVGrTdGdN-nz_#*yD95;%i(BfIlX)B%tNBga# zv(`yx_r<}MVSApp_Bw6ozEa#ApSFWa!@QvHuuxX@O(={FciMFqNJjS(HvK;RD+ea* zsEa5;)&%&n@c?f*(Qg=D;n(Y=H|R!_o`@;D(O+-xw@$WS<}NttK1@Lg?dwNfbvl`m z_QATuq+ZDZ>{iybcuc9f@UpZD=#KFigTKn3CF^SR9N_`CsqfwYn5X-8kwbgoIZx0Sn+K=fvO?LuhHoi`S z<_7Ba6C03fE2L49xdWzNRV>wSr~+EeL9g-c+ve)(`z?8~h@Or3R_Q-9V5Qf4 zUo8z7jd^&tdS6{^#%D+gsdinjE7~IUEq&m&PT#QN5{kzk<1Su~J~85o+~8=-fK~0r zhDu15p5%oE!N^LEz%d(~p(=hdh0VXqKcZkZLZ)hvj6MVr2d858jSU7gOJ@H$-8{K~qiVU)PZFBA)s;^1<+!n1osl z3jiKXHiolZ-r(1KXNvj|Wm(!yNCqMC8JD|oy1I& z0}OAgtQOd~fkJ{@M&ofj!k8bU01kCyjblIog^mW9Sa28(w<_SCNdc@jK9a0ez%xa- zS6I91aVfKcpeWv%Vl}@HV>#un239Z=#w7I)hA;`DKJdhT&A>|Sj7J|=#5OqOq(p^|i3_B}}qa+dVKrSf6##)+R(5TyLJU*4}Zuwe!o_$;_zd#h7W@7~&M5MK4dF&~1j_I3~cTA2;lm~}6Y?1F(v5cQ*1JG;k~tKOD)6k9U@ zKV!VEBjgrT_vY^Q{ z7|x)d_CkTNL@+AqJJc&CXf(SS)B`D8C49%bU04B95A{c6@TD%Ygygu(5_mogmpBS^ zdvdO+fB;+&nNsMhWFy3qwq{S|DpKTscDmCS6|?cS@{~UeOjagKL6!)I2+K(&KH_Il><_r%}5n#ue%Z&LB&1^ zcs=wd!MLt7#8nJNoDOTn@Jv!{1 z0h9my@bqA(zGXGV2%ZfzKx_Groeqxm`?94yHX2$5r9NlN$hO_Sj3vIiyPh+dcIlhJ zo`Pt&etRWJ2j)+)o&eP+JvM)8tof7?$$D^JI)lprM=-LWR8O~xCdoQlERDIlnf(4i z0nKGvG|^!$uZoyUL%BbT!F+WqgXy!D%uD)k+**oHOgv6dvwplF`gz{RTvQI6KEgRX9K= z=b;a4Za*-bT+;8yv;i>UiA00DNV*cABlF==*DYRH!=gh~PbuC(kgYK6RykXJNX`h& zSe({X>|N6;HkfDsRr~1(vlUwF%9c>7(x0qaGJkk$a($*R{?KENVpgBWF(rs3j=5m% zXqg~k0!*zJ&zWZEi&$ifwLhHn;)#SUb_O8=R;IM^)GjW}OTlQgOSnRpB&E>2=VXab{1Zc3DxoIVpg6>omxwF(zxBkPiUPquj3G;Vczk2Xb$V zisNcfTa;^IS7GOXEG@O-;h1(r7g++FBE7F9vn#5>HLH&ts*-vsjyBx{F+XE#3LF7a z%PGJ_;CJQ4eE;;mRs_wwNo96Yq#-4hI|7ld)hHB+$|WKtFI;IUqEsNdDinwa2(ZS~ z2MbQQpaer0r4)6DSa`LeF)vOS{11vAitjE&owv3iVb>?d*_S*kX(OA;P6^UyWkiPQs)0>!S@wYjIT*FU&Cu@d3jbwgsBhZ8M{@fUZB zE1o3B$fy*}dI8USSB6=wi|bfqDLl#lK1;5W0S4xW!V?|JA2+qVJbqv-d6EXyjs`Bi zelvdfDaIXZZ%V?#P5^XgA{oot02Wa*x=CZkgM9sT^GKGG^K?563P zGdDI>LC&La%B;C5KO|l&O2D>ODQd|;Y7(B>J2`NKRy&5E6;nD#4Ul`M24vTDhkA=_ zKN@6g=(!X;M`F+X2wt0Gct^{ww~3@oem7vaNL+{uj;~=G$IgYx!Cq(gV5j{i$hxSA zvuaH&rYGNsfzTA;*UH+$O`?b*O|no(h!1s>21Ka=KDUmya8Y;4F(yUQ=Kd@j7|iMD zj-mwSHm6%5y<=^)p1%}lW>c9(BMcHlf#dAY280rh+f6nLY+tJL*;s$j%2Eg0?J%L1wQ|t0Yzi7I zEOd(cs$>``+AJu_8{H9iCh-rRWEQ5zy5c;j zq>@*5M;v<x;D8YpFsFQdo_9C>nEa<}K znL%i~TgJ3%^8UNg{d(OAb}Aede)i08=XbV}>#0R?dr1$oArXrzoM_&4U(>l^I+|Xd zWhk{$4q&>Ei1;QkT+bD;TWitHLBV zn&qJjtZ)lnML3%#afYgG(W8J=9Ai$5DOQcn&ynsc?OsJ!V`2--gvMwzXhu5&vpb{p z!={eZ^UxV$VNa{4qYu?(2R(`kU|!V&9l4kEb=bHRwDxz)>b1~7%uoS4P*qS{*_yc8 zsBYy+p{=>k^QU=-Uv<r#>KNXh6H`XnHo@(M*b&OQNr&{zwr zKQ6xg+q+TlZu)NW9)81*_dnvB_tnrIXx&u{aZBn%&2{v3>-b>z;6+dkA9-EG@8~G| zNZ!c0X zZrE42V+4i9$T-w9D0p`G{0s};t{loWvkzrjFQAEs**|8=-xb^9smV6d~vY*-|d~V<96o=i`;$E=Ia{D2G9HSheA?vBxOpmUjfWo zn|h&g_igJ;`~n|cc+radY_H&6if*EKMYK*&UIJMI6#W;o9qUc6#Ix4U*(-FJR4(A_ z8+=$55^6F{sfItf6xv^hNTaFbR@rhQq7QvLJjNNcX>>V6Q@#|eC~KG6Z+1H;9RRyN zAFNXDa{2P!0++s|l&p8?EELx|*;1fPp_Xvn+yw(%{EUmkDNA;P2$$4gWSN@Cu9jO= zwQAD|F;nGx`_>b-9_#vo+JXVH|s)8ZNlpcYGk z&#o)N;EZ%Gy%-qCx0uQhI&!wRd(iH{%FzA^gEQj#=X}R2#d+W9I4mq6ov%cwPQ=^M zDZ4?yKgb92wkA=#did-=0ZB`{2hR_KA2a$-c6Go##DB3T_^%4ERH40x(0&fqG^Htk zj@P*kYzMqS6DAC*%xh3+F*ms`=c+g7NGG0Sw2%|)P*uSzwA=6kV1?3LvXijlcH z1hhHaaS1vdt!`5+l&V>N0FQL8QUYMNPL9uxVC|i8*)7*`p%5w}>TWQxhw~zK( z+r%>74X{+W3+&d;&MxMJY3`xLhakzjP~_GK13XY|32T0S+dg zy`{+L4q*CoyTf)Cm1v+$IOW1t?+Fi=a${=ByL+8c3p_&C+UNSe9;HyF9e%GCS@sfj zeo5F334bABC`25DG|G_1VOPH5OdxgpopsaW5et~ipO{);IcI52YTU5;K$old;4IHc zZ8rM*EJeak%QRFabaCvg2l!G0Rv(?xc1awmdhhhW13A(l)kj?#T|vD*GuG^n^^*I= zFCn7r8}-Q?o>4AJ>FDE>w8NsmVvD?wqRkc!sU22UT^PMN!KGT{cv+-*G8HM{t5#Ix zuZxt*lschqJ_?jcb970bqUb;m$5soW7Bfl)vq|jSLNGRJnd{Ve%l!jPPoaW^6zf6| zwXM;E2bm^qg_;rNAjYd1#;JbEc=O?61+}LK|8;tJQaC39g6(a|Kt|g^(udw%P%J=v zb)AQ9lnT>Ha*?3tszj;Ks%(MhHEzsLJ;%u5uq6;zJRlXAvK{o08 z){@#Dh#U&e1ZU0AE__e*HspTqA9m72p);0@Uv9f6@@v+@3penMca1yB;3s+ zB@Vy;?!GZj%Q$8$>e-AbTy{yGX_FW_e-lj6tO917*9mVVjyJ-7W+J9x2yI=8;+LVT zfkYE#)7Ap-B;{zEIZB3%y*aU;nSDis#TL8df4OLMgYrfx?v&Y`jNPn#JGAyr``PIW zG9b_{_f{Z>Iy#e&=)RQnOiMfBFCCy9kZ^zl9R@2K<3-0d#oEU7Q3z7l&YAAo0E!30Uwk$Vg-s>byo%1T>Q=)9kY4@BB9|j}oXiS$ zYu@LatSWQ+mBy({@(>gvu4B^E4bt?37%S)LDPuA1-wBbJn-H-N)DU00yGV3CW*;$C z4a)vFs&@ppWmUgzAht4IAdI)T14mvwa=Fm8j;Rq3O4+b-d?Bo=kzuu+k$HIv=gY+1 zNDCD!+Izvif?n3TWSfIy!~S*A@0smu7Q4hGNpVZ}&b*|Km_&~kDU1cpJH@ugzC@<5 zN$?&&Kju%Y((?-NmQfo%fOvrPPGu4U=Y?G#Qj~XIcGM4HvuNVy*k2QKx^J{Lfn5 zq!y)0d{KuXPZp@R2wK|ej;WLQtwLO}q(4=?t6Vk0t7dq$7GAAmudgud8F)N)G*L09*$;1Yrqup zy)sI#xAfFWU1b$7l?%R?HtFtSYJ?4*o^^qlPkmUAIDBWFA^3qlKeQAF}*nlW`2Sa z+GNNVc_54qlc~r8<4Jmzkbl-?G<{6*lBKQzB=$tYgPnSYxkw~)6v834N(+-w_XBKASOFI?f&>oc|NdWMp`qJ7KDEfL z3C``bKfR7fAOt4#DjuX`W}@feHw>P|lMnGA7QeXIt!H=Dt_73dwRu^8}zpu9Tcht+y@e4rL@cSp#K0Q1_)#1Srwt)Kj4wQ!mj<)uX zJ8eL`o&D|I6ZFb$n2Nidz0UC#%2FH9XykXD(m&K zxKH*{)$ePc*YP4r-ZXoaht0>Trh&7r9zAG1_-3WL>EImGhlz2D%@>n*>U>7-I~Wkf z4`ckqovP(!WSovf05qNwNzEir-fxu^2r-5=xNfkN3$d^lM4MaXJDQ1hrfV=-IbN&) zi-RnhZt8DmXmx@$>JF1>UUHB3xK7qXN)Gw3$#`jA&+^cA++D3e?vSSUZas{ z`UVc~{U`SceQ1k9ax@iwmyn`_Jp?v`1Pn{$d@E9yP2?!dDAqM0K5s+CRnisuLZMzPA1 z`kueKZT7aBEfO0`2Ms(V#Shgjy2xh~2u#rjR`%CyZs7WjRMI$b&hs!-cWK{rDD zRb-Z^$pn_$&dib?Fr2!kk9=yx@Luo1|L5YrUIYBR{lxkI)*d~6tmD70tvuxX&krBn z#ee;T@!w_N)doprXIXd=0fCUwzX0#Q+H=Jx2A2$VkVA{$z zUJ8mOAQmnr;YhMj$P*qkE=qzi_$3J-G>3qV0u#1M?4~FUsYau^d>IYLRW`XnjF9{K zNBP8TTaLM?ewl5k^U(Uq*RuMCsy1X;czz{M#_}=_L9F(Rtw0^>kb~FdzXOY6#4cs^ ze*~hlFH+7-)ew*O`yA~DZkSVboTkIq@l=<%w#13wUl}#a?;EY<7NsB@k(YRZUA1yquEHi8K4K2L}*8MpFCiWluzo^gMb;p+pVBUpQlQg63-mj)RL}>AoI-jIh7-49FRQ#EwJO9`*YiHJ- zK3tHK6EfzDks2U+?EMhGFmow)-ok2cCnI%Vk8^`5{`*QD0?`kM^gNzUPy}*|i5v)m z#%L8tJ!{7q6Tl{(p!#lt5rMTw?RWzG-PK`m*!K1wJ;$rGeX>Rg|?F)J8e8uf|#b{?*9K>@BjSy&pvkY zuUq7QTv>T&&;R3f%Kx!)m;dXNp8w1w|LRhSa8g*z884z|9p&qG2>@DD#YYjr@#A9FURu z%VK*XZFG|(Wo{`#VbR-oTI1YE;dGYezJ}*1#*l)a`E*L&tm+Lt_>%F>8CKaiN_)5Z ztvmYvKP>%U!2eL-I z0VX*!fmVReoJ?10b+H!~jjpH~KJX?|tu?g=jp6eKIXkf};ZI%kblmN9k5R}7i!i(v z1@r`i`e{Y9k+`GDLp+R@(O5xI3ZIBIs`_b^AxU=r!ZbQtwufi+@jng2QZHK1V!G za57FQ+nG=`B^e%3Agu`!OyD?$!xI{SjY;~8Y!}-;LEIv*)khu3m6L;lJN8S zi@BgNXJx6qUrO8K!&=%>Tl`1RG7($Uew3eU_$gNDIu}K=THh>em^n+IzyC(FR}<|o zbWHNEJNu6hwErlj|30z&@8L?z@c*sWW0wCtyrcg#&RYjW~;8MqrfC7di2y zTnK=J{>AA(|NKwmVL$rV?B7l2fA!(oisk>-i2r-oTD?2}pYHt2zN7gE{sPz;he@Ub zxM_#e>|=9R+rubKX5-9af`xf+{hY2gOX*dA9($4}px{E?+B%KUt7WC$OE+t*#uc-;e>O!~Dg4kBsW!|K`6h>|iOCCUmcW69sn9}*xg2dw8+W5$ z!)?&yC;r|n35ln-3f;sHw~k-zw)cP8lv3oOF%Glrs;`#DSJ9?pMML&#OP48H-38)p zwKwx4_Rv^NE&;S?BUT2@<^J>ix-m+lVQ%V1x+Ezcgy@|)abiA^rxeD$oaO;8jE9-- zMbfbASv7KPzmCWLsKjUbtFL%{q}=n6?iLOOX?=&OVvUV5>$(Lo&#_Z`wQ`^A0?msD zI9Gb|O^UoKP=uZxXGT+w2Px&$-z5?8e}2$xHYL`ls?}hBo&e;GuMl=L2$ck3!!5)7 zN>|bHcjK$Gemp@JEgkCt8o~lkL^ND|aj@5}*6W3A1430-x6zc-L}kOO&|pJdr!(zG ziqg(6xEVj{kn5GsR!K4nnjlXR?&`^$X+l*t-+i|!y5n!n89(8$SHPycs#Y7We|LWt`W1#sTuD90L9<4k?T%aC5 zT3Ne0|DW*u^S;CR-%b-W79$sZzye(|+dW2IFe*E`>129LfxJR=>f(~({9hTQ9Qc3} zl43mnaWq*5)|%2vAr28jFk^2$Oj9~SM>b9^?6s#}#(gw0a9gV)RZ!JoRaod}-4ovh zBehmxVq?TeEn-T3%tpnkB6+!uiyT7uV`KB28HZY3ARm2{g7Bp}LQlQf?lT8n;6wV`naS%-z)I$M5J@&J_ zAR!#fzf1-AN~O?%CX;gZ-DaTIg{67KWbVSAPa?dh^Q+&ptKkl*;l6jqGQYOBmfjG0 zC6JGt>wJL6U?w5?d5dRk1pB5&VKNJc!eM>Ri%-!#YR5kvwi`cg?VhyjuL5DoDz6Mv zI!%AX&|>7uZuu`RQ*jEQsg(MbET+-{HA>MLuoR;_Tk45dYO`Vr3A^+R5DP_Apbx+4 z5mlC`f?BG(gQ{aB3?BZb9=Fe5zA}N7s5<{X;{<}v*E3FJX4|4~?)2f~=~M!})bDxi zNWb3dEuOLzk|`fgW-?=V|63sKu#z!%Bmi~5)0DCbpH8>Tld>Oj^xvtjzBRcxih7DA z+HjQNIpZt|CgZ{1Pp3}-(;SeIQbW~xIPGO`~+oY&Z42zUEFstL$q1%(9@K%+s=cWTI(pI*y` z<_7*Ed=qi*K?)OvCkcrX4uzuQUQI{^WYM5x9j?gy5Lv>PxZjTw9f^VKn^q+wiQG+1 zbhl z;XE7QfP)Pu!S0DY-3@Phx8%JyC>@Y77J1F@mqNO%YE^D#JUm!4n8eY!LQW)@V*2- zEGZ?9k491pugFW1=0;x5C*AgrGXc4YgYtV^4rY}os5~cGY~D0JBgm$`DdJZY|wC+`MUnhd-H zDow3_bdb_Zybz%D1^RKoNm~0@z*LTZDNar~uRvb;amM+VDO6)-l0HqZQkI1P5NI83 zMf2m>NR?zQ`pr|g;Otu+fH%jhViT^|M!PaLZ60B`Ro|o-Jhqg}wjLd~J2%c`f0vW9 z;H-R!P@Z90H(bIa!d9PiV*1}csk zH(#pZ9Ej}?+kDR$QJS15ws^NjNsMv(W2(7zIHFrDrJPax;7r&Pky&EkT%cGGJk+Mz#}HgoCUMatT4E;acshvu!vXwQ(y@meT0M5iZ5GY?WMpyW z7VHWzzJ-Hq4zY8BOHXgf$^E+r{{WJB27GK^#W2Ti!hkYlUn#}(Rv}#~$y_u~9m-=7 zb$-G*WiO%xn4DgYQg@_hK?&`Z8KdR=B2enK=Y#z=I(eB>F9!-PReHTyT7_Loi*@Av z+)B9crM2ioc{O%FE7p?toAc*1ZwR6&z`T*WA3aJzQ!+#==mdmCxh4@d zL4kA^fzVYv?OiG^L{W^<&_+5{8x=c@eZ9lF2rmg>GpCGMCZ`bn+VBg>TIfUmjlo&wVsSeb!LJ*76RIcsKkOg8+^@PvQUP>+y=F{j^d+bUsv(UGM{F2JlRwru8m6oLi)~0+lV?Gk z;z-+rjzQt;C@~^>3S=2mcJK2Cr_%>k-rMZy(4Ww+8_L5m_@7HxJy?4GKY!mlv`|KhOxz#CX>guWSeI~GQjyBUnd9J6Y%|DaW7sT;-{DQFVfyeR zwd(DLDerZTi6A_W0^;>4e3*?OgBtPKImL^-#sF?Wk-sraC8;>OSlIx`zJHJ7m=j>N zqU+8L4mj9=+CNb3AKUxKs`~;OF(Z1~R=b_8r@L+T(%Jt>br0LyovmH0#2M-oeAqtN z@3#MZ0`)sMjjg?{=WTK&!W#PV<%_N3?g8|21XJmr>>gugR?H=;b`QEVNZ_6uQ2clc z+dMovfB|+J!OIuz;}=i~M!5z5-$r*MEDfC=AHico?YE!rcAmHQx7%3pfJz@996`a8 zu2g6QTSuKP_K1Em6WfG!RpV68Jdd=a;E`9Kyf@Q<& z=sLSDu}}E(ES$W~B(SWOG8Bajb67&e3`B@4Ly~LOp~36|24YXM*(5rfL{m@LuvCHS zA1-L9%o8+J$^;FSC1*JL9(EXW7LyM)a|6{<5y$vg#)DF`7SD^-5JVE}WfwIgC_7HK ztPn`F61a4z+2OqDSCcfkI5fU3)kd{cr~~g$rxJ6Jx^Z%^b3-<CT6z@ ztC(*<)ue@`I;+Z5&2ox$(KZE+@`~cM>vdYHJkLiR=x zry{@?!IM7+)+51IINPRdx*ZWHPbcj3&Zb#b@<+RdhgZ_305}sd_;xbloS3Va%n06+ z_KRMVz`(peiqKZb+`N-$e8v=KMV}0I8^8d*rqLBtC&PCQanxn4`qteIGE+A-TEAE> z-VP$)4iB$ol9jzRT5KaZwbHioAtoQ4?sfRBt>iiVwiLs7yz_;XKBxS{TG z`VJ?BlB(&iNZp@K|13aAk%Mmpv8B4?P89IU!Izr`W=GP%m`rlFlAC)#W&09{5*2VB ztW2&M$5kOWOFm0xj?VnBzoi=fb~{uhv-9S4b9X#I+o>n|bh^Th3N8E218Ab)W!~zi zuuniAVT&1?{f;oGDp9bQ3y29eChbIHQ?|J<`Rei#{qIQrZLO}zucc+cRbPMo@SEjU z)nOFf?RLf;d=TyCqzd|2Wy`UW;Z#=T5MYAGB;(etq^F@+8fG093TSFWz4-ShIV zy0;28Ng8x$6v+IqzQQVBeMO);XAmJ2;aqX5RtqU2@|ffm)+AMscDeH0#t%|pRQ@*0HGh1WPLh(A(+sfkCAVy9Zn`r+_h)`y zoca09Ge0kx`T2sGpTEn@&r4^1UOw~lThBa1z&Wogou$V`b#lULHHtGrkOeL2CjdGp zL_LDqw?~xh{f__tXW;+K{69Xi|JUl;%BuDMdbC3RUyttmzdpJDhxmVy1`mz5)4@Fd zkN5DoSihaig_U`S*xJ(e`? zErKak=*C?TE~Ps(5x2&(*MxmDPQ!UVOw<0gs}sFSC$F1oYjSb<2Y=s@MTBjCwX)K3 zHvtt9{Cd@W&DsZgzgE~8ISRRbk+-lb^2?hWcV9(5(0kAQS26IV_g)52<?YB(tS#1iowJwhgU*Q13>L!yikmo!a@A}V}S2y;`jXsCq)Mh`Ff+DhAy|r zUBizAc6+Z4OG5}Az}ejK{~yBt`}hB>KmO?6pEutB>#OAdx!PJ?UvE8rOz~eDk&K;*~=#4nskiX8N4(KVi$nlqaIPKF*NPvcSod%MS$ua1L0kZnioy= z21Dg$@hC>yCdtO!53ecM67mE<4cD8BZVTHIxeNeK>~an?YmKJ@ z1hU?Y;xYLHnv|s*oN7F5s>v+D@)VS1xvykNs*JpW%4Ucp{mZ$)+?d(Y_k+`#v&Q zoJkYdwDTcCr``){3Hro&<7DqoS;(C#MA^8&^;~2xb$-2}dOfwA((xhGDJ7mx;G%*B z`yskaBXmQe$M1dcZ>WRb)DXn)8T$xdXSl*s|2@nE(^x-<6MoOs^yPT=){T7-PR8K_ zEa${N(9}Vt+xbhovbwVVwR!X6pnF`Y`kPWkqi}y>E{Sn?aCBTjo4 z+fdzu?H|r|o*!-PHB{%20nKak ze?{)2W|Ng?p>}FhwJc;S-z;oqadI{Y0gGL`$$!l!oMJQ635GAHX);u`&i>ZU&e7S{ z{!eZzbm+JYkS;5AGxKwdgi}LDyWHB9j%&fhv7vXKw%!}v1wG63>G%94u%G>9FzMM< z4FQtca#Fgr+?;JSPW`4@aMx53H;R1}SuxoT{Kd0kSW3QA2fRa_*yyLXu8H8!TLGu! zI!)o~Ofi7K{fRi3v8S$>bHM=we1m&cr6km?hFWRNU&KW~N=@CcTbRjwIGc=l1e^ym z*N0x)Nz{8oMocwQT@37CFc7Oh%zKpGa{kzKTMNg=!Hu9aMm16#?NyOV9w_{bQy<;Q ze?Nl!H%I?x7!6_ckwZY!7kd1U2(NdLE1R@d(0zkEvi-|RakfI%1Pag>gSk(>4< zJZB;|&OS=Um)pfi-7xV>4`1#m319jQsV@opBoQVuWrF3|xT??F$GZp5JNr=21Ohjy zQikb8oVa0C-zDaKDOL92QJ?0db8(|s!JH0Xo^*Cf;$P|5RbF9QfI`DEdE@Y+t$?3L zn2L`;0oKt?v#KE^7vJ0rXHkgBTLm;^oTR&P;{9>28p|!5ChIzN8&B*+ZNx)e-{N$) zI0Z>O>9&vZK@tloSp7(Yx{YF}L~ab_F3!}dz=kB(qjZ*4jrD+IpRG%>fws)Fd%U&3 zv$cD$-zG}hY>$i!!y5w4;BBB>sFVR{C8vb5%^~33(f|KZ>Hj(R|K%sV|KVn^_x~!! zf`|LRb(jC~-{SuFRe&h7tBxfgeAOan9Yf<|=6&R&;^D8&;O_qaz3+ej{J)8#t7Y_1 z`KS!Q;`85n^mt{BbMz&!+%GdFmD1A?VwDh0s2A$6B+}t!G#q}+0EoNcc{H388!;V?!lYmRaVzV^@i82_ zcaBSY%doVi@fHWY%QOY#xhUeI(**4Cun^gnvVgenD4#ZAy<3L%Lr_8lT?n%WB=0E9 zUgK5LeiJ3r7qEQ8Xp#?whxO4swN`KN&#Od!o{Z&3H+&P7Rm1lOubo2MVbY6+PEpF8 z34=qYHyR*M3RSfw^U?Z#A)L;Bl&N)+K`MlygelDs@;2Q!9H5Otp|G*4j?4>WxN;lX zT%3E#ET@Ss?nD6Q_IM=T;FjLNT(E6tL>Pjq0rw72i2QzQazS1zWQ0#|xE5-Zr~A=W z&23VsTQ0Huo$g(i6(zkB0^I~1gKlc#UxAUSrtx&h(bJuRx>;IBYIA!Mh12LT9nZ#e ztZP-;RQy?OOw;i$W_PDYC#)9RoSX2gV@d(ffgdz^j;r8wuooubMbsB3ed+_zLA8+! z*d;A{#tA=j9 z;e^xU!M@Y*u9Dw#cvr~>4ew<9`wi}7{6RxQWb^wC4qKl)ywWpAVpMBFZa%N+Pm%J z_SwtM{?5Tmt<$E%FVUb8^tICjXH`ChnZDekyoJ4Vm|4e$TxYNZFNwOzzh~2&d->iC zBB7o0F0veQNa^DqTzL(Q`)R`=&bbH|>@cChT>Gcf=acXp!$9h|Qh1Z?+qPANjiYKE zTjyxrSaSn4{FDTdzN2k}+8)L@R*naR?EvEkGbf42_Q7tK?Eo-(L`cRGwBDCtAJ!go zwGLy{@iPHe=8Z`=*}VJzs?np~&oBs2g9Zg>C;cVSkSS?W_n}H6&yHwVkzBhN;Pfwn=YE@@=GO`VI^hH;I?8=UF6VkjrVFz%u{ zJ~6-9NzdsCT@1O!MFACb-LYRYj{Y$}Ipo8ZQhg&)iZ_fjuMm2%I zm&bs5s!UlJ^5UlD0Cwu%-C~R<(VIA(W$(2h#8&>x;UxUF&5S=68T1OQA5#oOhgrVV zP5g#-%2v;27{k^tC3p^($-{G5G<`bDuDh_DvrJ-~^M{+bIcVuN9G%>!3z)B)xjO7? z5ocG@s1TBi+awWDwK2qh3au9D{hR4&)96ivbqO~iH%=a{nr-s#Av!S*)@8VX>OC5o z16MT%e#{uF4J&f-cFB{y%q41(yzi66D@B%p;~_x|y@2I8zJ@{;K=Fp$ogzki*4b@u zzc@JPwvTL83L22rcvi3$y(=pSu(2b{iqgV3Wl8oXV-~&z37!!-?wQg098Hds!7PXp z7|{rVRP8d%gnyxcic0R*d>s3_n{%t$iiM)1oIHEC<+1X-)h&4{j0KNYaaWPLNbS-x`%}X96tRyEv|EO>-h;H&sWnJG zo}uxTb1ZJAaz!A?%WPO|_lBtlbMbdx%=Zr0&IewyE}_X&*bwYs_#u9D7kbq%k8Z1$ zFhwx8Bx)W%<%JLAp`xX<^9!S;8^>88c*PV-v{|Gc>_)?=H%%$rX*TO&bT*8iiHRpI zk*ncfpVmr|!YwJ{leZ-WTSwNbrV*x>5?24#*mc&_Af_`?9RzTn8& z|BX6Mo(uqJ`jqIj)sW0EWOghCztw2K<87;0$xTu#JubK8l?`RUE^!!*E|Ol722Gc) z)TE?sDto)e?W_l6zRc6xbl-4aKKR-Vw}9)Ih)I_O%^$@7&(r^3enR`7wH2HHb+xrl z_CJsA?0^2v^#3*oEZnAJAih3{=D*;7jMq{$VP4;LK`yA7@A$v>=l^o&e|U!B-{~fiDPmcDn9*s?g^cAZ9Odkzs%N?8Pa{u7Cja3gO zec&Bn4ba1lf>2`^3e+CrT|v1oU{Ts=O&P(LhCdfFE+yY$Udw(;B2Y5E6fa}+D(4Ug z_^VK#mPlhXE|+^r{@xh)0v)^KQRKIv_mRE8P3Pn#%=%DVLRN>)5(HU%W++6`Um&X{ zOV8HfKkjz+f2hE#P497aQwPF?nn(j<`bY}JhSit9qjB83r~Uv%`Khi6yB5=KwLf?T zi{+Me!SZtC^|fR_*401$q3~I^qn*H{IdPaYv~G&{@f06N;yCdvwzN^U2n(k5Bv-ZbB$6 z1W=SU#v`)DCL6YB*k@9Va=DP}2_lmfo9*)BVU3o9H3);y>A`32!Wt&HMw_Bd>E-LPD88XsfKys{4rJBUKo*39nNM@-b*ReDf9<$@!Rxb zv78U?3wkk7u6!`hRiUyvys};}{j5q?jGI3jg%@$}EJ;l*=au{su?6OpxRd|3w4Q|KVfu|5;yuxZY~5KPLMB(H;GNNB`3$+-kO(cxPP<05Dn)R#qRth?e2X zK;+g}m=w8I$2;t){6xvc=`Fbj<780eC`#=1k?jT~0V8oe6?_wWuZ+eWeC-VffV525 zFeDA(CWM;`2+LVAWofAMb`-wlcZM9H!wGYze=*V!1unH&lc}DVtIsBpB>;Zh-P+wf z*ft3tL*P1C835}RCT`L;Tb<|=4)$oSZWA8}=;WCR;B3Z|&3cy@`bjr|QFo-e?iwf0 zR5dji$gFDG-Lj%d1Safg&5Q*04N`XWO6071N$Fp>Cds-1MY=kMxv5p7cI#@y-H9BT zUY>Q2>spqJxD#k^LuZTWoU|j`^3_)oao^cKd`Frnn*f@&XMpU6&EcnMKU74SV17v4 zp-0#NBP1bFmvQK!P@x~`GF9QY+gF#@M17Iw{3;$(5~3bjIsQ>mn|uh~42f!gGjwSq zb$=JrD&tFekxlVf)T($*u?gYO5;V^D&i--xXuo~Dykkmfg2XAc)!puNs+wKE#d}ji zQqzVlEBYs7pel#hXGiTenRTQ0D%Wa$4X_ z&?X34qyFogl3_gL46lLMi<_AP5X5~zy%@x5h`NnyB58nfhf-|JtBpjdZai)1aFCog z7CYmvIP?rL-N1)aBk=_QXm1i>oM5V+4!n6Pi5DCt{U!sN%$g}oSweY)naiv+tQlT) z`MXI(Vdb+rz{1cJGH?C5Ii6C#ayr!Pqf;rz8saNU3!73d7bvCB=EEsLkM=8o4_;?= zSPDCC{gO9(-=IQDV&S^c4bDjYejSm43mqYOWx`0(*jYZTQ5?R~Hf^?`MtX!J9Tc>@ zObg-c+VT^%zKLcPSfj6)J78|aatm~PFeQu_TsVjI_NVn7jw?1sXO%jJv)!2%oipv(P| z(4Oh-Gna+#ZPU4h61kt8v?~9${GU(%bDY_a9RlXusMup%`Bo&jHUiu)co* z4EjCXCd*fGmNjQdy!@I&KmXe76aBu5lN!z)R41E+(NG2zj?yf{{kxp~HExEzW<0z( zKqWd47oCjfIv-2W1os^#pwGV(xb)s3C~~ZdazAAqdS-t%I*%r`a5AYYP43gf17)9n zUiqb7w{<$*?%~#UyS5Eg@Groe_u+s4_=nO@ucrQEa=-4>rWApu_IFTVUMLo4-d%*NYo~yP0X%|EINDmylpSPFK9`QY#Z<5t9wsL0Eq{kUWW{rW` zrNj0TNP+1z8jXox>Lc11;o64S6dL>yb&IKOQu31#GIkguMU08m6C`-q;Z1kScPNiy z!l8!~;uuK1#9|B%RSZPQ#qe6P!ZK}7s0FBi2_Us`*h48l=XLEyREcE!<1mSaUUqct zVs6(~LXRsq2vI~y9R$IvV^k=wK7#vq!q;J$HrjW^iYhNX=0*uz(3-Q+)hVOa}ZK(u} zoS`cf&6-dPKekp@R5(+~uj;Sks`{;gvR0HAb+4j+lr(OK^_}5mkse+a>0v;h{nx-9 zbAL*Dr_oGcSX6Aq&Ijj$-~IW_8>ol&aRJZu?d1ZAa-Cp(2qW_XK^xwOYY{8 z4Pvuou^t(+q`%vek;w1|J1_^hUhAREUOPk48)*7>0O$jDF1k{Gi9%`8ObX<|rIVE>R%dyttc&Ac4z& zYW0M1W01};GoVrU0r{+xkHAVew3Dmxqe`SyKyj58Ns~q&=%f+)#fxlO_X~xeM>IYi zlZ~yiVKmwU$qey+)Ad5q(h(?$0gSa}G$lifpR8=ESbeLBbWOX|;jLsfq;62W0oV{l z9MDX|kT~%#O{Rq;pts3ZswWt4$_s6XZSswhc3}QudEsnKf7I+RO`*1Ow(KR8_iuqE zbb(6L`edXSQ4Wje?J`QDH<85GvUD(Rdjh<0Lq!)2$*AFyk4!rv(RPK-mGEzf66tU< zosGq0j-aY!Sb-r5w@Em7nO?DYnk8wO(7Q;7%ke4D?--Uf&o<0kOJkKPkvvF2L<#XG z6JXncT+gQIL|o|{4>!M4$Ej`LsQmpx(owGF6IIKxD)k;Ke+u(5>5qvzBIeMmT6Z1e zGL)&4(7)3r$k}jDP>4|M`0Z5YNhQ z)j&MbR67I|M=6G|5tiLxx~vEzicJCfNTC~N8*Zr9PIr5EtK03i4}n{)81}bO5p!Z!o)y5VXbGQ6*)5Vx*R$*YQ|$a=7QnYF_Jk6Q-0ZdL~#E7R*`AB@@d%(}?f^ zO3tRv*(ZLJ*jiSu@Q7^NELgBD;Vc1DBCEHQkvfvz;4{XH5G>8hg93#(yzcjV-sZ#!luA)6r zR!=9xD4~t|itIj7%hMZQ&uO(GJ6h7R*?D~+Div*Fgg(mh8IXpU89h;7_R+`)-Jvi^T+H3gPUMb(H*8a+jxwIWQQ?yHKwd%|K4%PVIy4flwd`QW+sCj=kWyu#6E2jLd`4UXd%5lg4 z|4Z@zrTV|iPpSV?>fysR>;H$bz}4eNk00IX|310?@A6+s|Mws$1ZchV$o;<;Vs`0! zLSKHr`MQkFq7ULNv@DKgkaJC8Rs?fL!C;}_KPCS6&%cf<{3-2!AFe)nxX$svAFj0? zwOVZd`|$4kf4cK8`wqu{D^aKFe3D*afD3qYt|EwKq0kB8SP?x8J~X1%ciDzIb(5#?&9q5P5Hu0nmrsLfd z8sCX0W+1o8`FK;f^96Cubtv@8Cy94{7$(u2Pw2#rUQ6#1DBXPCi;@|Kx-9?RjYqJH zSZdDq-Xz6XK9f0f3Mc(I35Qw9LiJ{oES(I}M21FzruI&Dk2|}a?y*yN4?r_Uq{@NX zDMe9nVa@kkAoo(MiPGrqA7C-jKhM=;>w;V%4&9Wq-w>&z|8_(R?!8$qv;Dw`O#VAT zEcs3_R8NeX?1i((%wVi3_uo&)%cV1*1Z8e?{r2vmlkKz$M`BE$^PAvAy>Q#JNl|V# zKOr=bkEWkY!?)!-`}Ta~Ez2ys=67>FlgjNvV#&yigWr(wyNc688Do+2YZBYjZ$DU8 zy#dc1z;60E7qK4^+4D&_zKnZVm~+Ap(}{k-gQtHp#?10z`SBCQ8jqgB4J zK!*v3o%>7y3^1ISJB3_#h^hzI`TPO`5JW?H<=;|PCpQrquk`a_dX7p@nLH*G4rzHM zz?oW-nnOBwyU8SoI*Bt>=2))a`@Lbx+GvNAq&kGGE7#x#bmijuBn+}nhh z6oL%@+{_L7ieo;SdZ$ykskQ-;p=ohwes1cBmL^WVdo7x;2w9AR8yXorl^g<6;%}IE zUW&jGoJ{q1_ZUi9Jc8ykuec6TN&9*14otuSudDn!9SXi7&o**>zNEf?vY+=)_RgLj z9lY$ekIoLa_S@ZG@@36+aht-3(ifJ?B0TKgj1YI=i-xulrw3eO`hl7U`Y}rT5v@f7 zGg)&JvdIUOzWRc<+JfbIJHf=+OZ{^lIBq;i0ft8UaXK0U`9UGku3alEgb1{}XNz@B zB~hbWj>bZ{>WfV$+W4}7nG|NuKI`OaHT$aG5Z{f{=>c#+K+SpcS!!fXQ5;HVG>ZB$tan2>K`WmR+HW!L z`ELy~CV(b0BKsT1BTsfT^5W*Pn1YK&vX5e6I}pB0kQ>FJY`IU+2vdi4DD-&aKx~_Z zq2$T#sxy>iHo`h&Gv@rp29l{61I**b0qEL`R-)zfJPO~wh`HlE^YcCWm39_&`^`5_ zzbUnX-5%&)@6ju_vZ&J)r%w!O0VED~dTf5aN3YV(ZM&UBq#nj@kIc{a=vLafZMVR4 zMHCYlJKlF5-Uq65_1kvtux!}eW`2H1x24DhQ@V$f>s-f& zfVRg|>DoL%O-ZL$Na<^5pWbzwitXh`h;mu78mTM*AYu5P0nJUrZS_MmK)D5jjRMIGPvU<9kE2(`o^xD7S_~K+UEp z)BHq0xlbQ(!fmVXaK^`BHU&OwFo@{BIrJVsU@%U*?=YG-aW(^9P;Q_f-KY277u)8d zfmD55Ltujv3LJ<0i>nb&N8#9v;4pp*kGDWJrnw?yp#7um8M*6^)va!8ZlAv`=BF?g z04A11>;M)qwd%6h2xO6e)bNi8$G0~1lzrpH!6eXh}s##@sMe>);% ze%w7-hANf$ZS1Gi#0_m^@7zWK#Tg=lsv9#rZ)Gv;pp?{WWMKT3)^UUZR~tt{Upug7KaV??({`~LWG;Yr71d;&``YlaA7l4$!+Cg5?;S^ zD^$tDbtra!=VrK;f5nI-5^s{E?6wi-OIIqWt>Cdb(#054juBDM*$4(I-QB9 zf@C z{X-me7b#xM%0|O6s_BO{Kc|taid`@k2lT6{PaJp z16rw7k1)JZweBAcTx3*uxRGSY^&%U?`b1{a`sWyDCAuPwNX?{8K-DK}ZfZ{EAW{54 z$5Bn|agN$sJ3raZcT$X1V|Eaz`#k`d-83E7tTxRQ-#<8p`r9ukcgt_$jDrVi5=|L3 zzz>ZKOsLB(d(@>tzirvk?UUne-qHj>@^UuKZD#Z~o>E7PgIsnz(6VugoPc%4GtHn9 z#1LZ#!!6N^QXGd?@|eCVy9VZSlo6&@HEnINRBz}w9Q*-VTjHpF)MV3|fm^VFEj0)1 z3Fg>=6|;fX0MD7#YG@2zZ3rWTnZwx4OkQvzDl;IpRJW6B6mAF(v5#TZ%qBC($7#Kc zqE>LSd=pp{bdI+CIyY9yp=aGOm11>rSs~OYLy;r+htJi)Kninpldf7ThOs?PGk}5@ zerFHo_SqF>)s;knZn9sf*Fg#*LG`t%QFY5y8*Zkp0;-tbf>*B43TeU@)TZx#Eq^y= zW5N?g>j?KI=9fcYt0D3<+f?`Vi7zN!wCr5#PS6XbjBxUrJDox?=S&+|^7hrujd#!0 zuR7`UO#2py&8zwX$i#aFV?}bTzIPWND9%Z)fdo;MNCY0Yv=IXB5U zrDRavSJxD7K_jlBq`Z}5jy<@jg=3BZSExPT-*aBE!t!q8(b3i>5Bib(a#pvWDp-eM ze}Z|lhgq6~k9_WM4=xTVGST#!?H?(FI6=HkAzotVqLVy(wl35eoC}vKtFh6Gj-=eZ zPI{LUXb#Y*K5CM~Q*IXHoM_3o4Ry?+?yh{xN}$BDanvJ^a_t3(TmVIeg^Fl6NfDWV zP149Qqd0|O9|&I6pN&S>=om55W-R9scVd?Z+W>+Mjo;Go1Vw487f*UK^i5BCkpywV zKjeEmibA2D&_D{-Z`r?Ch~5)guCGf>y{|e<3Wi5d$o5)qZQwdKZtd(G9~|zse{Ap8 z_P6%hb@eK!*jsB((ibdQ$Vr1W$syH)3zO?5e@ScF+9du%4pA*JrzmbvOz~Qu?~MH1 zDNv0pbq%;4+8N_@;tbw54l-#iBh4_Pu^jC^hZ6`Xa;)ptE0OBFBW79I26N7iJGTy^ zNlb{MaIUv$hIwA69d}ps*Uk5Co;dS)t@Fox;~rU$f%y^K(O3s#8O9e#$HvS8yJDZq6>rMN`1& zf+N_5kuN~mA3K-%9osVV(wp%gXNmmu*~Z9oejm0>wJ|bw`SW^mcEIb&w;`S1n_sSK z<1;Miy0V~O$4GU4r%oZ=a&4nUkEW7}MOqqpA^cI6F9!c?q(#O#nB`-LS zw$PjdS($efa|X^g_Hi;U91%4aka80!?b(`A-`KY;>h^v^|2L1|1}y8AnuljA^E=7K zAIjTrTbKV#$SI1bP|cZ>e+ga3BrDIGnN!G!@}YAIDk)hUb0xn9cHotwg}U^EHo?cK zbWk#wMiqq`sEr}=rgTzh%C09=@N}wp_U<>$?(N`eU_7EqrdT#Y2XmnJ)Vp;!e6M~8 zLsc+u!sMx4@LJ6IyMZ}3J}9}tpctkn-z+CjjT`~8U%f3fCzSUrJW zqvTDkdc1eI(>cl~UUQ4We5w!NMb*70NSa2G7f-|qwdNqKVoXM2J77E|L8Gv#`d4yQ zxe<`Ql83z5+_eYS5HC~%cF|Z+zCr7AIbZhgltl{&T0uw6DvtAcpL&c>8ATYg-jR^a zRV&=PrSJAKQsRKc1v-;(p{NywhRyFh>)r56Egs^(J9<*~D~eXwyV- zbS^@o=)=IbDvk5r*c|p+PYrGlozTqZ>)5j0%U+6$#~lW3WeXw-mtqHI!H z=MhgSKY#?}0p=kg_H_io(7K0(Uj@YyquE#c!=!6#vGbl4t$eA4le_t>bzQb`8 zwQlG6)01w)?cH4RxlS9DR#snTvRtl8p`o>=`Kki& zWcxwESdc-Zgig4JCOKpbD@-9{uQ4eeEJOc_(jB83hV!_VHI9nYkdia7@kv7)1Wq{5 z6*Z=l9|6>#N(w~=&TxLi$k$9>JAjE{twk!$WMCyGL;Ckv=ap~rZz+MxlycGIG zlcFd^YX*!vi+ypfi*pQ`H7SV5C8mK!rG#|qC4mc0>CBJ{SuIhiIdN23*7#hs$VgWC zjW2&kJ)U9OS_%{i)nsL45v!-P0vqbfKKz#ys|oVY$nb4>EDp=nZ2S%Ng31HITQbUv=%Xe+4V0xq0Ojr3l(6ec~7kri5;QzOzn^ zy{NF94OK}spOEoW-EFlj)J#sHFSB9PAdyhmj8#?l4~}1S_McZ9)fb)TFLp63Bm6$u zcc0LR25^M>&C_x?V%t+!h;!sk0Vaf_o?C)LEX!1iL)Y-2S0AAPbA-Yr$HB|=bfBN* z@A%=D20dV*98@Wl%tmJ%K87TQ+y)hQzZ9zJ4`4^p^J5)c*|vjRfh-j{tP zo#xt&e<@H+h2}(+tlL83shS%vBN_*>;Bp%JMXm&A!RjV$B_V%ruh{1H1<*}Hq@6Y> z=I>T=jnSMh%)0zhGCWGNv_F4%qLy23h+n|tL<*o6lV4pZ5VC|BMVxJt48glpfMe5C z7A{E(-fC%79@bDIFdit*YfZBE##zIO(egF&NlbF1p35a*|v+>*CM;3C&)| zN?kZC7Ge??m)vG}&e(oq5h$+i9}EI8MnmD%{PS4+=AXoy$9>akqM-GR0{(lz=#TT} z)astGDIsJ(CJ`dHs2+%aBjLJ8-%DiyfaVw(b2A0DzN`hd*OnSOd=J0eEFXsx;-|qj zL5(GC5yT4#I}ZdAc_B;@No{*yUA;1MzN`(WRy~s$8d3#~Kw!;s7MwC}YwszW$nbZ1 zlJw`-aw7Aiqk%9?dJfHI(;dbsnF1VR6zg2y_h zF*tSJHZRq5<6p&gckyWB2%V-V@V2m+&rHGq4E?XiV~sE>m3b~5bE${208>5%L4-{M z{WWeTA%F(+$S)0TOIY0vY%SntwnV6>w_~vsY*GQlQrdQKKf3yn;tyip&qDDK<5EFs zZBom&O!yM6kXbl9LoyrVm7*&PzhQ0`-Wk{)rhxMky6W)0Y^d|=X_TFXgDDBGR@}0b zwSmp|bsAgVI;1OkxAn+x@*l9qv1a&r}RB%ZjF21w7gSoS5tGpFQj#g~QV}{A@0)||pA+L~95D^3F zVjB|HzgVti%JG6Uco=S3IY@MTgMuGQQ@PNF-rHP+LpPGUgg|v)-5d$k@;C;}5FG!V$$!f6 z|0qm875;BMezf-3=6`><@(}U=`r6|={QoKbG+$K%_|J&|f7)u52Y}}ifv&;cHDNLi zFDOYeoLZ*!*$;@EW}=vUnK4V9N|4eX>KfF9cocJ@uw;@B1`Uk3ZeNo_2?r8@_cKxp z(2azYFg2kgN|S1C7~&O_ke?jhT^Wly)MXU*DS2M4*?m#h_KB2bjT&*(c7UnTnR6id zYy9T98J!M{hmvs3Aq&qC#WzS1FwUa^CQfV~zX+OeL%m9B06nk% z{we?-M*RjaoBZn;{8F!e3!tFB!&FOES0BTShcx4=s-7TF9_ekYE*ukrBgN(zM#;tW zlEyR*&tXxC=PwyhGEuv`YJDXMnlK&ucN(hI#(LvXnk)!ba6HK=Nt|V(5onF4&aO{^r{OqPJ6X{ z6H;p!ogm$V)I|5E{e#19rwfyS0|Jon)z>)sSS`c9(sc0i=__>%Oz-P>`br1h`X%`J z6-60(MZiaoOcuQ&_2oZaE#rSZ_%DP1CisjG5k5r|E)N8lDLsY%uIROd8G41df?jZ- zAp4Agdti6oK#l!Z_=Dd{NE~h>O;Y%b9#1$5bfcp8q)?=m;PsAe65Rp*vHZthXbo`g z&9F}kwA1cxA9W6oI|utg^YAbbzk7;&k<4FlglP^|tk}z2oYTZuB4EWWU^B6QK#>;Q z1Cvy}i6 z@emI;j4R0EX+%kvfJ+BdgdO#T!bLYcCN9}El^6+~z?W6s+N zuEJ|)T<%p~!}}o^Au2v~JzNfI@=_J6t9H!}O zT9-it$6VOUDI6dyN6L9%PheMFqzj-$v_?Pe%_v+D{07K+O+jI>`KuH$`ZQ~*XXx41 z;LLN~_R;;WdVbQ`X$LT&-XuPUi3{Z60-fr!j}JXG$AWfKKx_AGPu~7_z~z^_oQ{K9c$g){BzM z4zpAa5A9H3rfyG#9uZyj09x@do?gpp8LJ8y3hc-TGr}o2-I=kj$Rf5((-czmh$>*? zPoZ2D&5KGWCl%-}eDeN(2!T}HJ*vt^M`$%Sxu2=$Go;7#00~r>;6xN)H`GBVQ11=k zzeeD$4>MQ1$w&{t$|IqqKjRfZ0$nGRgO4Ge9Ulr}F!-v;!&fgcCQqz^>W_8`G9Y*3 z1!2WR3P%95lh@0f>CY{NMZzS-IoMD(g8?E%CxB7m*g0+Hk2zUyL zoX?Of1gxl4eYkqq0)xk4G`S4NymGLDQ}sH*L+6H@l7p$&)eN0zS~zr}fQLcgRPs&4 z=_+tqP38~uBO-+fM)h&gFC}jeTymZEPahySjv-uIS>~;M0}jpv^-YL&QW^>s2vG1! zGsTk(Bt~mxrLnTIqOtyz-?!*pn54<|D4k`ryCDx=5x#8(CvwKT;iF}1Mu&3}j^jRb zE*Y)mKyxow!0(8;VW49*4buyNAGFv>e~l74il~oKm$Rfl!H6U<C4lQ7!m-oj9`cOwGQbN0E={NcNTEYe>Ni30q>2YcP6J&cnK@>CjSmv!KIBX` z1RJ3NfB+07enr3>NAMR75I_sBsH7jTZ5BNEbA;um;9bUKvzb3e7XC)F-lZCG*6`3j zlO-S+V1`X9?H(}#n%)%fTyhJnKStyuE4`BvOR)aK7hv3>k}9dxFfMXDT$TeK%dG|H&R)_ zZKy1D6O|Q|Qdtzrqx8bZ9qdQgxX@xJgb6dibHhFkE@ZpR8_)?R`K0qsB?FXgTtdA* zp-jQ9c=6B1_{gF)Pb8|qwkYakRPU)rPa z8UUZi8c!@y^#%y_exNT#*oe3neIyil?0}mnetaxB%P4*}Kpmho3I&!hJv50fDEQlj zM3cldW*=}00g-LM4jrmj%fU9{7QW;F9Hhthwj?N} z55tJT9nJ>gSZ@eoK24*5b=+d18BZ_~VJ`1G@(?osh_`eNu&H)tu>jA7It&0uOhe?> zG!S4g?+Bn2SvkboX5x11?!z@DsyxJ$G2SF%; zZ%DyRqA7`fDWl;e8q&33mRbkSva}Y(VWSBJrW3ckWf76Gp#z3j*kwAT>Gcu0;|TWv zZL8PObwDWOdTi!S@m~NAre-^B^T2r#NY$d|MYBO|EdLqrjla#}X`P`{08c=$zgxB3 za;0=}SuKWJJD-5S(pv!$V^=l*4Ll+6-BpMCgi(-L+6K!8%DScR(x;Zl!`HsKDNIsZ zq>wW^B2^p^oZ1Ocv)u6(YHBxvm*i$6{25<5p->4FmsFUwhPN;tNfL-Pzq|h21#I{dnezxVcMk!^5>&CUGy@M4pLz_UTxES|70;7i z!V(9kz&crxZkF8J2JUL464O?yyulDh8SZIjsr^yh?++tBzuNG?Ck|bYD?H$MZ7pkc zGG*{|6*fda^Q?x^U`q5AHLgj`K z2822j6qK78=hFdsrG@aLm?aa1#_Pq51KQ>L$jMI!$`D7DM!?-j2#I=+73J( zwgs6|&<3VFTPD&x>c@2R%7p?jkwr+v9jUkYN!42QfC)zQHUh+|Q3p|Xb?AhVFWYD1 z7SpJlVKW-ff-uonC+SQH?eu0$j#>%;=~EJ(aG)>}?opQHk3(0n{8Mi=qh2e9)sR`r z1;YQ&sW$BzrHMHg0H&i8&>^+BpO1sZ^M0qMFDve25niAvS#z}z26Tmdn!F**(_k?G z?GBMD{YGHOWLUGj5wI)-UmUbM0N9SXM6fkldl-DDWuF%3JhajCn zaG1DZjD#6#-ihN?e1Ip{S`cJ}2wGFlUzwEAc&{n3%$23rB!beZu?ed4cKqSZ* zg=XuHU+OynLV!S*f(OC3-q;@5Kd>BWpn1cX?ECvbO-R}Q0ftt9@qvYim}Mh z7^9$q=88L|1@5O2i;yPKD1Ad0kF;P8w*hPdXhh?rtGdSX+7rtb0not=a~A+7b$p3% zsRw1mSGKeMtQUzqFYN0jlcTx3Ox||^^A0e7KtrVN1FQ=0fsrQ&G=Oo3BhmxNCOH$4 zGZGl@0uvVV4p~lwARrXeC?=el?eK;kxH#HPkHWN;@v`&>tmO#?p9Zq6_P(@SA!W?E z`To>&JfqWYJc2uag3N^@%QDlmXQ^y~=@s=HFTnq#-z6(MLe!z-C8tpnipDT`_v0djo}q!ANZxkdAub0i1=cgp>;=Vz#cqjX#ybLpzxu;Uc z&=;Wqlq_K2r;IX7PfBi>V->^YM3bs8vaI`d_(fu%c;f+RMe&T1?2H8TR3RD+=oaD) zLIY6L1S0*)=V;1os2wq#=Z3TWsK~;Nq2X()!M&1M+HNi#bcYKJNv_cx+hJt|{+zEq zk`IgEkSEp*#LV_JZ8)jG$asWwUen7-I=di9N3DnkcS9(l(n1*GFiBG6LrlOKPNGHk z0TM2;E@`eSxo0QaIo-7q? zXgW`yCo45VFK%GE1rV|rU%*%aL&M1m!XXNsVUaLwKWrC@9&wN9Ud6*<;LXA$T?_H_ ze&(6(EIQ{*cwo#OG$_%>8M$GH=rOm4CU+1^buVLh(~pSJLzYPlf~i*2Uls^QjhQx~ zuzvQM`a`ZD(XZjY(&hmTJ69fTz+uVr_ay8*&DpG_nLvi=P7{nhV&4Vfl&qRBkhkLo zDU@dBpia85h{HvdLwco4W|lSz=F>)sXd_KQ<~N!zJux3aqC_-U4Dd)hl@-#MQsH~6Mkypva2_T_qd_n16vk+O9pl<@dIhdsH6Zfgb0)1&7 z5rV1O2>KK#N>twjB5*R@cMfbJM3T>o1`$>wT?ZnR#bZ;?8J|i2)q`=AI6SOXMt)^*GALo$X11+35-0B87Df0p%PeSL<6&T zAO|lsK9n}@9TW*Nb~hf(h7NnK0g&YggjgvgkkHUV-=n;gIp=T!6||zuHL5~=SqUyU zw=N92b!bJGK$4p@97LI1$)K)@9oK9d9+N$$<8W$6RFsJ3Ko3LYMuZS;86N8E=vp?s z&&DiSIFcwM4eF7om9h9-#aW*DCrV-A5l1gKio=VbST!OgoIOTp)@0aJtZ?il;dgX? zZArIa{%OIuX;4&jaHvyzwR})_ELF7a2vDdl{4@H3KDWBtoeq(8tON}e2AoSLD2g;_ zL0BRO%7x*ZVSbKA4&;GnoZ4&N6*S;xTV)stcG5&xQM8u>wknb94VDIu2oTgLO%NFo z9RbvWu`~ckAryxM z6R?7DGK&~78dElGne+&<)o4dd4oAzn0~T4cXv)d}`n=XmGg@oB1WiA#y@>|X2^{AE zjA8~OkU$&r7LX5)^O^V_3g0jz;ur~9RJF0mGOM>~@+`V?WM+s?yncdsWW*!{@9hw{ zM1pcsu{*>~h#JP(n0Y@Df3axqJi_%iYlFs;3>Q`OE3MMFswd;B%ANAec#z@{>4a$k zYLnHRMkKToXUN7Fp%BG7qb!MTm=x@&ACamB7n%3*SS(mHzo*S(`rIU856wbWyHHYh z!c0S;^{Sys2MVy_>GgqNNmFTom}iH(WQfDUVo8(dk#rnK$2!l5(KYL#g}ZFI#4Hgo zc&IMYr@-nIr4f`fA!tT#<7{d<2^*9$Fs5l3Pf|D}CMvE)HH+t(g0V5Ab38xGN)IDE z(&^h9u<8-_lS8be;$hq<$}MX>rV#^y1gX0;b%2&%c#f->k8`hG4dlJC*J2Jvo7vKW zD`WAA%rNX>Vwz+BsY!sz`xu*wnI1{R!il0BWg{WOb*)lMLT@=OvNo2O#D_RE!Se{E zC8Q=8n2RAW7lU^zJg?`(G#2}qQwNI`vf(md$qX>Ry_WIdxRt|42Es=Y!)q2=ZaSoNMR*}&1`|!H%Su&ad9GYt} z@UKPA{CAyKyb>tlJqgHSJFojWc&+&)?u>093Qh2pv8jw0rMiu1YRGnuWhPX#Avknn z2}jqth@okxm8Zk*Q7r0A6aAt#AXjg+aqPuxs%Y(VXj-U~+OK(mc! zl67&4L4G4*VF|S&7+{~-Y&2$C_}IbZ#=?QvE99jShNj2@r4FHUtqB^fPe%n0-3<7N zM^ZH3wkopFj@~SbK4#Uy5K#o>+tKFRjZ)q`?2B_-UfTorxb=J+#8aecClYm%t}e9c z^tm^sYR5Ne(E_qZi-^x>7yzb}aylEI`(~Y{Eoa%^cVZl6EAVzBFc9>~tAe)GNKT~4 z_GVd-JF_*U7|4trJ=Nt5qOU`E&G)!4Fyx{rS4_ZQlxd;AuZ`eSOX*=kxZc>l#|2{K zld1&u3q($@*GmwxNaL z4{(J7lxtKE;lh|+FH@*e0FOC?V2uXjH&hE4yE}}nCpy`w_@lx0(a96!i9@wwcv0fT z-|P%6xzS}Xq-&C{cT1OOy>*CgxPj1utalT$S+PfhH{^9QHPS-_JEpB1 zySU()cqb z0g4y(8uK;a5l@Djpokp8k9d|YusmYJ)Kny{5Uk)7k4sDutZ~0AfhI-=VlZ|eg#u~f zNQ3+}XsDv4%6L4y_6ZgW@8bBH2%DwvYYyMyA#cy3yDGVTt6GAC#l0rvB7H+)0a?g; z35T5sccW2642n)b*Du0w1l3HAb ze2t)7NLwN;0up8r6Ov)MKY$Ie)v>4>W1==>0A#1Y+n*KHCTOq{PK21|LU;jR09wLG z??mBXGXXOxmTz)4N;8IZ#fyw5y;PhN6Ljm?F}# z(loX^Fk{kIbwH?U<>3L%*V-&*+03`WG>D39?unH}lY5c)AS;4XmZL-DRE%dGNi0NmGPvS!9TaTik^AQOw#H>-$g*NoFkmd93yNYI|h>O`U^jsjU%?~et@xnp!$GG6+Opr?2$*$ozysbCA z1z#e*JhSetXdEPh3B)VJ#bDeB_J?2}N|Ev=uuCWa0qP_WdQbdKvME`#8E~;mey1tx zTfgW?;d##=D14VcPKC9^162}b0lmi9r;31HliBZbtO9$iV)0OY){%z8o{JE_M(UMKEmeO!5q@Up6N)p~hG;qA&}>QA+EUW{yXOh&@MQ^QR4Z>Aex0 zG+FgW#5oM)P2_hCH&D4vY6GSY{h%IW&h&W2ZZ$!YTVR}mWeOEdxZ@I0cxYCz-?sV!bc zV#!KthRPr&Oo++9^t+55XHXKcHN?giy@FWu$e4*_A9_=@zDz3i(-9f&^Z1d>p<=*n z5;1Z=(_Iq#FBB?mJNl>O9Nn=?<32}YM%OFBCDI%nQ*GAkL^RSt4v@`d(iis+ONb`yovxF~K(4GfcukdW{)NWShhbvoX^Q zh=gz$hYht4xb!bkIArfJpill3juD(~UwH7z_9Q^CnNXO#eF@3wO4htsE_`LO5+lQ*?AOVQ0~N5tssrzjGc(e*- zo2p`7iYmwI5!G-B)$t}B!j6ZN7@aQ3?w3`vaXN`P42J9T*l?^VHGfAjOp%@wTXE(e z@qC;l@mof=L{=E~pYSu>UQnKuIU+GbfXXr8hWnNxc~4GbA5Y3{BHWOf(+(xM0Mi;_ z$ZYUJGU+QhP!P|SV*L;djRA`d*>0Ge3!sJ4*h-$uU1S4xQ&sI` zO}i)hY_W!g>KTg5naM*Ar-t3*@diXq7@wwG52RD3%1y5r8*0jaut>@Q_E;R3C@70d zq)Orv%{#~J%FJH8`ogv++A_@Ih7e8X3AL|t5!(2)a@>#VUicQBjkAp^$4dno%gB(O zNQuTO*npr7@NVp4Mmv)E_?WE+b=w@o*;ufV)3DeV(x$wj-9hYViPYt zK073=nQ8NxYwLqLK!D?q&~QVMmAV!z=!G-d+Lbf{65l~De>Ov#CTV{iJZ6!WUo)2hS+_QifbN{?ntIBHrYdap6o_& z_7=Pd+oXCmW?G)a6-nV4dsvByxa*fsZHblU#2OE>vz{ky69YmtY(aZEfkqsCo8mA^ zT6uuWuAwej@sed%KucJ$s2}`um|mdM*wbq#Kv+XAK=^hc77A#HXew6Od7oj9!$4~B z9+S&~?iIj;c?Z6bql6Rraxfq0@-ninLDB?ENia|Sww zE8DVIb4!B5AP;uO+O8YbK+wTqP8m@m^w3^4Vb+UdhUIf$PAAt@V)Cr1_&~f3GiMY; zg76@i!!CTI6B4kU&=rbbYypB`=v2!r^dt_+V7_GZd7WIuJT!;Tp`UDPPXWj1f)2>( zihZ>8MD(RW`R0_nYIIP^u?*ju@=SKkvR(vDi#?`X60V{g6-l#<+|z>T971%I!mUTg z{hIo4Ld|9DWd~1my0d_1r^N|mh{if@59e?YK$@Vojw54n$_pNdJtN&ujsOg3@Py-5 z8k-hIxh#tei6FZ~fk5KN9=3Nph503AU1pWLvjn3yO-T>~D27d`=u8JF@WVbZZeymS zf+50*u2aos_kcY!LA7;UFxjmxK+RZfA60{n6wr>Enetbv7s7GJ{0mw#&6a26AwdTq zAXDpQ5@8TPYsMjCrxc7?jp9FoD3*H&C`?2;6$VK4YaZrS(Rzf_#HG>x*3Q*tp9(X;ETO))>Pk%3MpVtvO%JC-w74KNoP{>GaDp~!JBdL{~SrzGG5rm47II<-rcGb*RWF z5TTpzu3;oOVkeQ2&jy-qm&EEKhT9nu|aOk+1)@pO3Qi5&EVr?cgT}xi(<%Wd813kI?-~q zlaI-n5tztO+r@waSwodjjd&B%n?TzJ$K+0g_svk-d}^O}OKNxl3yHKE>Hz3{V%u2Q z3-@Qg^m2|84$(l=_G#dT_a<8fTM}>D543QUo6uX6gK_Qxw7gx}D!KX#gTef$4U>R; z1PwXP&Uagx@iRrJW&DvQZhaQT6DNo=Lq9PbRR8E1})+`v#GG)rQ@9TccMehbJR znDE33D*}#S+XNn#Z6%38HhvmCq#-S2(Hf&w*{M$0B*C{GJ@P5a-{x61AZ7Gw@RTz< z4GzUVsT)bOS$)GXwIv5i6A_xHz<6mUCO8^c0YssUK#W#cyBJOivAJQ6HyEV^w=zmm zi;Pl&TNU~jTb`>GWw)AG zw``zM?{;;|#~V#qHs zPJ_02;j?ffkVElz0rBbF{U8HooOf;uuNK$fwYkOCjl#F6#=zZ!`^MQk_z;g~qY@<= ziEo%(wqY*KiUj2=BK_QUK_p*dVO0EH?~b{&io=+*FSrcU@W|ehKnAzIu<3|sh9>z7FVSX#OS?*$j zlAER~fxif>+#tn^BBG&o1g7PMh10B%&aA*u=y=Fll;nm!Bt&3j{#4p`LiLT(x}Pvs^*h1=E0j zHn7a_V+3^9&H_2>!{dDyq{fL#^T%hW?D&|2Om#??Q+|XsXVY;O5g$ ztrw0($LL|i=?^co2ULXIq&)#QQnP=Fb~JH{B|;;C47y>2n?tN zrg<-Qf~^`(&6g|aD6_tCq$^!8OnE`Pu7%6DGP+{voeNcR1}sNM!2hY(_ZwK!s$dx- zQgMVZ?nZE4X;~x6t5Rk_%3ScB7t8y5u?VnOp3(=Fn|b*-yW`{M^6@uAIk#Z4>X}~?^DDBSqn<1qKTYUq?nzn%9>R^~fa6`b(^5Ejcg{5L zS1L}-Vi{NJ7lUg(cQ0?ZNhs{QVT+*H)UNf_doQ(Ppv$Z6S#xO9dmT)SOozpwpZJEG z{0JC9ON0uo6}RRllD#r!&9J^nWf8H~1_#ZM{h_<$XEsM}Hh)onZ~Ws`l>8P1YzI%d z$|*LH&Z)w-rVbKi>_oxy!gDdiJ;oPIOw$yQyP-CAa1tU+F9YMlf>zRoUDGtP%uQ=+ z(b7h8#2RS?KqiG_p-k0K=+eX$lUVCwq;<~u#flNvc~t@qC$tzn8nKLj75&cABS&ad zvdMveTR7=%)%)E6R;2j;;zV!ofCO$!kZ3XE2Ti~TAIl^Z{IP6-Z@a=GgZ!W&imjbL z##qe9wY4@`SvOqM@cgLPC7|m3v;R(`Vv~p5&f6WA&kdW)!3>pSqGyW2jcE(>8_?1_ z4b6&v=IrYSNSvK!tUxIzM+z3mk<=~ZNb|SPhdG)Z6L|2n6S(rBg{g#K z18Ljv6szkniJ*7jq@kxcrru!&AJ1SyeL)A!eJKWQL0X=AxEA) z_ZKDca4uR}?=c1!csj#~RJ7n_moJWp^AgH1>kYH;POb-{ODTwm&K$ITa(wpm);HS0$gU1K(h#(C=g@h7oU=DBOMKoi> z9?ueoZ75EkMR0dKy`Dx{ZS7P?xOIHz0nfnZv(;H|IFrPuL_+E)X+iC6Z#F%j4Vt|= z6L2QBd%^Y%NOvlVCf|C2ZgkctIX1q@ygoXPKLb@1r@jfL7~tT-IwNwqCqv-*Pv{iK z#(P3MCpcU&hlkL-MxPA_T@(U4f=x-M6jN_dTdTu1p+5`*HbzM_ekE+`h=V4gOgji$ zDNblJkN35qqWCsQxP3k-rOpbat_^N_U$#Njd5^=KGYN@Dihd-;o3Q$2_WhUWYwmc- zIZ>3I^%;2H8QP#4$#X1>{B=Uwhu&2CE+Wns37c6q9)KBVjUAU{z3V1rNh!e@+~U3i zP$S=pop|D3czlImr1m(``Es<_n%o(tW5+Fk(WQ1*bC*~X8#G6a8hoD)-&*w@M_&}! z7_SS`ncXl}7aW2)V|8k?=|bsvH7*8JZ;hgagDvq8xp89b%8`?fI2jPwUxVfcl!g;~ zLEJ0#e8~oONYYh5jn4dqC~O*A7xRb;9V}jso3;;qEf!3Y0~Uw+YKapOH5f0G(B4;p zxQMX)=ay6BJ*Hs{o|b{ z#JALrHiXtecgwCU7&V2uJxHR%XtE2ueTiVtO60^hi$fn%Ok)mjT{gX7;q*Ab?mzK|vuA34MFtnj)Nm|IBo@F5?J>j{CWziv{x-hc%;viZQ3E&w}4DJ#-5hvMmWso90 zac+p^4MHQ;1g9tg3F*aoI>ac@CK{l&VTbvN8Wt{A9RkW+Oqd^-qdN*UK|WUzrGCbK zJ>@pt{c*y%bxHAPTOG=u1?S@vU}t;vfP<)Mr%jL($M+C!&@cSVbwZHTTTzRc_MPFDQ!NbM8U=+_;P0B z+GeQ$L#KMq4}m1LphX_&k-bz&vya;O6+2thPHVVEl=Tk;O541tS6^GFyEvLzYj*~K}uz;wggzPb)-;ZFr^pbJz z3+qYbX9=NG45xNPfpF9oYGguvr!@F%kt1027AQ9~09e)f7aIwM~YE7^WFs zEoZ>0Inf5u9WJOKY1PLlAkl<=29*jm#SsSaC%mbkpX5`HIf#(SKXV^+z>3n31Sz3s8$+*~we8L=Q_9HKce9{Y2 zsbFS8GK-Nf`gw)ER!#?3gFWQScG0I#%HZ#ng|%BZ)NU=Ty?R6KRlPKPBkPrMSCdQ( za;xbUK)KF>&sx;Cpa??Cg3p*aVZmpLhPvQ8T4H#gP3nb%M675vxHqhCDMby%6HcpR zscei!BR4Z=9WhJ`d5*$K8ydCvG##_0YX-17WCntASrFYKIEAh`sy2xd)@bVVO-!g* zTG@m+5Ary3u zl>&$Q)=QnsNIeyjN}HMht%b>7EiW591@bNdj%W(>LT!rwd_Nchnr!y6<}9A|no)no zcBY)Ek;Twf>iKLEMS)yN&oCtf54$E7b7}zJ#nLugmRM!qzYc#*Q?CclW?3r|w5mxU zp==Ed459)l3MnSiEiIO1D^kNy>%_sitLq#{r2%?R!w8)V#Kdl526Gs4xMB>}ZcYzH z@Vx|D>sMTjp*4ob_-qWm*s6zzt?s}}N;J%Da9HT0Pg!O#5D&RsONt8Z8qe7?Fs~D7 zr%2py@GGj>DWnnyZIUdzoM|oap%U|;;E#Gf#jjWdS!mW?wkFXp#s=YJunv~MBZq*7 zl4Z1ofm44KPWmP|vvcX{e3&{iAAX|18I9nI!b>rLJBho}bGFgdQZ^zI#ZHpDSAVrEIT&j7KtfhhJ4pSlr8PA48 z4mGTEHkg6BWJP|I^i77y?>us&MpNf36m?my%s7Z(K{KpIU`F3@X_H(f{Nhi=W@>u@ z-`tF6okCcUhVDQNTmer87Wru_I*yp=*t;Sh%h!*UH6Z|>$LJ2hVHE=F6+w$)2kC-> zqj$0)@k|72S#YEXXlQQx=$xzDW@~8d!7iDm6XsMr(lvFtS{)dwEitj;8`TLmC(%D} zr7U67L#6N3QKRUTYkJ|V0@Dc{K>q(uiq4>*L%kuQzGt#)2z?V#lymo#%b*dEU6?Hx zib`sSFv|(q@_5+c3o6IynCu?9NR^m_Mo)$sl$Uu*8Qx=FkRqK7A1G#b=@&_tQ%3VQ zwoqRpgys~j+x{*e3@PUnCMpgKazcW?yRYY$g;QEA$pm4ccQIAXlauoXjL~2V11@QL zkFAi(sZ_6|M0&hMNr~rpi;`Q$IOFDZ@HNsmHSQ=C7c3cXg{bguv1vvpcDu5q(z#tx z(vakex|!JIUUOhPhraE#gjuL8^0#=|I|ovm@RzMhIgkK`mAY(TAfI zQ+eqFYxo@oTN4v<=g>8omsxON6II1(SykGwJMPjWf;I!kOVPyi%n2W@b--dX37f05 zh$wTJQb`~!sZz@`t~z&XKrhGdjWm6niR6^vOG20UET~dI4PMZ%fO&81eVY;|aCkuZ z9h96X$-A06PDNnWYB68e6iHQYx&AOQwmlAF$4N8Tjh>bR>Voyq%XfgI&lJD zv6^`i7oy|!>J5?}D64Q1VZ6K$4L#qL0g<5g80>m#4xwFrZDx{js7;$_mV)YWL}beD zCxP+Y&1q2Ha@+tRoiuUo5Da3X#<2w($~n&7{*)4*ei7W@phk?nMCzj@rtkGRvCX6n z1Q(*3{E%2S6Q0WjXlM}RlSS6l|K;A);9J^k$L#>EW~W1= z9o0i-u@lEUHd)C~z3-}0DQ5^D1#H?zs>dDEoylEek54Xp9Sf@fqfYwEy%ghX1=|Gx z$WKVenk%G!Wd57SWVg_sHlwbAt0&|1h;uQu?lZq>_|C)F`lZI&79)FKXz6c-(@j0B zGQU-6Fu&;*Y3n!Ti2K-IT02II`SS7i(C;FpNcx=J*G9YL1B`MQN07QcgL&$bkmEE5$7I`u*`xW`%L(%P6R(bR4#Z^UL7&q|Jg{;^9mP@ zN14{AOUda-;BD;WywIY7SQ0u`gC57jH@c&fOg$6A4V{#pBRdrPbJT$7_>p1^CH!0! zPgwFU9Ys&OPY=%jN(qz!;&4EMUbGK4IX_}Mf!_{>_=Xo`TBH5SDxM$_0mFC#7%GJ^4cOzg8FI`JU>)Q-mN9CMo0&!xV+OS-Qvus9p6I6Iz z6g8j;3;j-)!uh*+u<__O%PI()j}w|`1sl1yX6OhDP$v1R$ie9u`zMFw#cQ+mOnvPS zjf~YgAEeP?xGK})bjekb&>#7dpXaiD2Zks0#OA8@swavlTwKxd&W3INkGo5TW+kpgf)pofpNVqCh2Tkcf((oq>OJ!Is;7=;GL=oa7G0BF7dODGr8k$ zkJ-qY4KpBvaB8|yVc5ByEFCp>)4ILTQ$2Bb?tttok%c&a+5D&{nujVR(kX)>3ovk#YSoO$h} zeoB3GI?GH(x3J&WNjp7NcEF8kkFgGW;D7^qATx&BDz!eGdiY{xlOO5v6!V; zSHhC$3Bi>0MG7}nCOnKRy_Y=QbzR#)VIwE(Adh?0Y6FXnF+a#&U>Z+nn&o!f-SCE{ z{RoE~H;G}cj^|#QV{b2=J(lbx5f_J(>yKmhcx;if+Um`XD;}EY?!Bl#n?yP<$OSNO z9JB)V!6k$xI_o*wu22*%h7pp-W;Rk7;(zyEu-8;upgHug* zX|a<^OnOe*DnJ)eh5^9na!Qr<#XFAxzXH89A?WAa7MFY?@#vZo+!>FY8D5EEqS1|SxCQ-+ah*yV+59z5uZ(#P*?Y&X}J7n z%4CN401=0yIBMGQkc|NjsH+VMG$PL@!O;2VkKssGStcM1WDQ6=YYG94)yY}_4!p!{ zY6d0qGctc1H=N+9FIvyHiE;DG(tL0>89!NwzGa+Aime0A6xJ-~06#C83%glcM@%Qs zPT<*{7uJdsemIMyYT|pXmxwk!c=ttd+TcAeU6ryFDrKu;?Ks|XWr`_L@<~MUlXp!^ z2u56&3A7HfeSyy?5sA2 zqKRXr*K1i@&S_`dB1Q_zF)pPpGrLaFORKc)jWV43yc*2Kxi`o32wkF}V~992c0YfU z69aUYC~dsKWLJ@83@A_soD8D|qT}4Xj0aPj7`HbBG^;(rOhAf;NnsZldtCd~rXeF1 z8HpsF=#R+=*90?gXbwF?f|Px^wI#G*H=3H?$LYnzFw)i;^a_=Vd$6$da+VA+$O5UP zOQeHnAncmn;yg7$U23%aF2P-bJ&sn(L;)<_6#!nGz5c^oQqB?HAnC?ytvAu=^Xwsz zPb5sHyBT*Z7qbO7TyjFm8KF@dF-9Fp7>!*@FJK4U^Z23q?YG}*r4C*1Ip++-xElOj z1-IIZ`+cNH97xovOgHJ6gN-?n7R;uqUIYDCvsr3ris58}Ax^jnIL#TyBk(* zn$CwZWG<%}?ZhbM+bU)P+h!v}HJ_`-w##`VUE3?cOS0821gbd@ShgxJfVQVaDa;eo z(=9umgPIP9OQml^S-QT3oaWM{h5)TZQ~|LaWmg((vBpE)Kn8!FND9!tl(`x`9 z?OM4ugW?_Ttrv&mS~kn(UkBwgrt6O9dSoK$_?ICzEh#=z%*W}grYVKIXbb}i2gG=u zOhZKRQQkG+OYRs^w+{WQZ!)^v&aY)XDf&&x7SQ54nT>M;r)V574vq!2c=eoYh?1Dp zTr+l{WGdF%%o`>(bh)%ig~}p+xGB zWnH{TTovNpa{L0$VUX!?IV2^bq}ZCKLP|%A7LUSM%Wv}Gkq4T%98RLJe~l`$F}a#I zZzS2>EyGK*T56kZCaR~XZ9AE-&5_||+06FK1j{3J+{{;axV%b+rv`J)kJRan*VvQt zG0pUt7mY0M>#G}UPc;gT z^8f><=DyDF4dZ9gr104g2R)M7v#kvK)S0Baq3CRT3stO$@_MMU}gFZ zZCofxBzY6|DbNcjw!i(lu>9iH;7Cg};WaGKkpyewozifFvRlcMOObxPP+z58aiokA zpb0)4X!5gIPSUHgnRMrj-VI5wQQcL@p>YPnbQaCJy>3~Ow2WGN?0HHtDdw-AlMU@Q zYxg@IxH*&1OXyCdTQc~Mv2?)Azr(^wO!t4LWz!Q_yl8shA7RN*m$^*ZXY6js(M=aD znh8JrPqb=w4tm+Vd31|o|L}!l+;8;Ki2mL6GWrnZ`c&oW;b)oerSFJTE^8(9Qg*l1hwVKSRZCU&FG#XOk;gKZs zfJ^Q^E)i#m>qp^Gi(BJc_-A-zWx*!cI$GdjIVQoXlnM=8;}Z1Oz(_h{t%%t$5;tgd z8LdT&G^Fda1Z9%BGAh1%qcVhMH%!C+N1ELv z8gkIG_njcQ*xY)8ySJMl`pti={kxI?b?*Gw%KvgU3X^4|_jPE5(L0D-#h>WLnFl=c zmkVZogGF;*LC224`Ni>Ef^9*EOx=mIQJiTG$Sa?XgC-1b`BhTu?9T#Sm+e@wZu5L% z-m-lvy@fhoNgcKV&HOx0l&}ILe;5PaM&95wPN;j`xE3e69a@>0*P#<7niyVRobL3A zON0?GkU~d0lyP_wHF9=)Mp#TCvP_aKj)|b*$Jw^~nWP3h4<|B<1=?1i)1%=K7Ta;0 zuev&dDS9T(-76G)knf_%GMevB$a8yDU*1`4_@kH*w4K1aKkC4{Wkv+05qhm0+6mRi zwt}Rl4{Q)XY;f;zr*l-PEMwGICl)P>PnNY5hTzG`yXKX5Qm*O#Jo_7}jL{z}*w2X$ zSB%}@0=glUsi=-XjHO>_O#I=TJd&7vvKF z@G%>WN%}-KoovX}=5h3AVvM9sJMuBqbg*!anrSSdWe6y(&Zd2Mr+HB#a9^VwRnNXA zk>~4+J0=!hqIqPJnGc|UlzHmxM52tE&i%7C9F`h-Lh?86#9X#D_?{!(u4#VyN_S05PRUU6u4de3( zTcDXKPE0NZNrHpM0~pxHns00CVvGq-CpsPit%mNw+M<}_kPJczYKM}RVf>mbJmbs^ zSLYG5MsXN6u^AkrDZ>R?It@b;H=Pxmw!drB(#Z~mdL9545KkiVuEj&|?5-c?y|A<@ zx3ppQnuKq7Y|0lkb63?F!^gRcf1m_TPiGf`q_-zwhN*LGrjhiVmalIDF*0eW9jchh z5w2_^xtfAO{8j?jicZ>x6Y}|%SY5qYmT~A4x&JYhhmH3fCwWhAW2Vf^C-gws9ngx) zdUt8?Ho3FdHsx5`)M4-VDibY^Zsi<~`6RqzX(nq0BMj+8V9``Z(EwojQr}h*OtcnV zG#e6M^7=tPl3(Phqw{Vd%>^*d#->4E!5DYb+6rT<10>G_3G+i{ zO*(!($B!bop5())>g-n%K{aqPYAid^pnGJEkrv8xY7RY+pnr`%Bjg`$u3HPO1}C^`r6h60N$g(O#ZC+r*+7#viaYF{i{8U`HF@*RF0B z$e-}9mORknj*o*Jj-s(-O|%F?E-1ne{w0M+%e-Ta{%fuR(#Lv8|xt zQEtD<09jI-G9!yv{`fpfk;;D-O)h2`ny?Jy0E<9$zt{J@tT{chhC1jrw1pNB{H_U?^+HCR-VF8uaf~qcA_e@W zHi@iAQ#G3PE_s2U0@muoiTNSAOo2~0=g04R*B9u$1Rd4I;1KX7PE+I=vSGl|qXanM zROB`fcM?r8H6dVem=%ZQ8D6{T$dL}G2Sqiv6-n)y0J z!adlDX44EXTJ7)W;a|g~F~+z3-<*?JC$g?E5kU_CQh()aU3i``5thXuIsq6{<_(SQ z8q}bH{eD1)VMyj}bbC7}2UrXT)qMXgez!5=*Bk{!?rU{1`H0y@Rr;s4_AW7Ob;FLA5(BWR61HWax z!R74|q+m`V1{U4212Nnjg*&-)2ZyVSX*k)a5y;sXDN2e$-uLV;p%(|NpmBsD7j_y9 zX3BsW!PSR@8#9zO7rUn^3;5LKKktA{ZUFi zT3=W2@9N6h8vd(V>ksK){L^~)_@Pn{*B-8~udcRMTJUCN?eY3&>a)8)zx$uhSzxNe zyPpAi00>)K4e}o@IdL+4L6!jJ=82?LMnrCkodf3n`4{y>{XKxKU3ohIqO9!il@|TI zV*mb{{$BkC|8CLW;W@nrBt}hz{4%7!zot*C`1d!|)HhW4oZmlc%q#CUwHkW8EErYk zEVwDDvQ7=URj64s+F5z~h^m~s6Zgx@TD?n^((r;WHnO&9(?=v_iA&mm z5|v(0EvI^9YPs`ZmQ5Z2@DBzLG_Pidy}avu9>(Wtd3f4tabFLD;B#H$TcFV5w0ZfR z^9l++IE6a+HhPQNUB1$mF3<|+O|8Be1pGoy89d7!_$H0}!3?RtT0Ni}PYoossgQzI z`nsXM%+$}z+H_w2{YCw}vi$g$S4p)YEkjq>M)WqG)>`oJTR_ry;94$v4fyL#9a&(7 zkDD?keEah+o6tK|-H|Sqqz`V8i{dL%H$GAOC%d~1coR-TE`iO$QYNzzdNMyfO2ru*J?Nov?VutJU`I+nIT$B!Sa z+};15@cx&5hwFa}?(r)L4@bF>IlU}OJ?{kAFIBch6oJHq^ecH+PjhATFAhRjP>Bj@xKjyqQUE_ml=`y;=vk;rpW#~z*N}R6Z)C;rukZjl=X1aEaQu?!*2mk>6sq5iLi+R{|y=k zvTf)i!QoK_5dbadzo*!U_}XxTrR75kGsT~d$@+N{$B;Mot>FB5Xoa3(-MbN6D{&YZ zlY;2JSg&h6DSzf6eM_TK_0r;%*jrI{wW>4SM3BR58!`908J=Cvtz-#uEQIw6K08j?Usy|<*) z-C)T|UWQUArv9g2X7^EYV%A(sxqxH~0eDRF2q8B#ZHwI4tRo~@v~K>|cjvGDJAuY; z!JYp9pH%-(bl~NurT<$i4p%0tUf`5Tl0>%KVWtKl z`fLO1Wn3 z_~37|bjmT}C?-=jWdAFQ^`1mmLnxhb_7QHuq`0iJ5jID~y-@yIY;T_K{v}c1lVI)2onOx+HIBpQ5`64Vt9t3Y$%)6ajBS zF?^9!MS4EQSS-{QW(*i}_99r1KKVUm(O@R=nmX!=bV}?bK|veFut_@P0=I#25&GdM zr0fOZlw2#)UT-EYpy)Dzq7AXer=Jq+l)PJ|74|ZYr%jn9I_ly429&)dRZP-fV;p}m zpN}*0?QtTWj%O3V{t<^|p;oT67XpTn(J|LKT>I-N8mrN@B+Zkc?Yec0$W9^R(NmII z8jx@wmbyPf`*#35?W3{fo`hCYwRLV>8|oF^Zf$-CnLT^Ty0Hl18n5)D4BqthGOR*- zZ=>D}Ahr5-^m;U?Vq@gwOW{zZ2VH#4DbAk2+*g$u82SxRx!P-J7Zk5p6F8b`P;ts~ z3Y>((E;O+_^4O;1PA&kHkUp`gU4!67r+a*G^pjZ-7o#jwrc(?h${|3=%R>?lO`GOO zOU-YfKSDaKpz;hrX=4EfL$~=o%wh;@U&VnfOJIPgU!|a|DjLQk*h9*31LJQ($91Z< z)yK1AHcR*Q*JyGc55EV7Z4x3=s%n1%*cxA|r%~^9lmI@sd1_rmP2RDsJtbWRRI3!g=Ssb9%IExaV=d<`NbS#OE6!}o;DN7rp>)r(L z()Sn1tQp455u9dfY8$9kMEWnn1Pw>1wQU_tFID6MLs;v1GNXBRp6($AXGDQ6S8yZ& zTF^Cy=1ksf@#OWj>dumbuBt94RX5W^e#Q?s)Z@a8N8uEf>+1V#mW<=K&32ego6uZy z`(RJi_V}afPUC38BW~lZ5E*1nsXWY0;am^J?jLQauQfE7?)xy<{?+$yVmN5c5X0X# zXYouHe+NIRm+4=p=~dkOl?Tv`MsY74;#EkU_t1Q1nNo1!cKAEv!lE6?;|=dFzZGB} zMWgghq;r+v)t$xYh!yp<41_Pczs@j#?`%ptM9yR4wuYpAGq^lMY3662{SW?kpMCb9 z-hTF3`~ULUfAiUY)f`=(O@My?Z1n8EgZKZ7&pwO)H=q62pZyoZbQXWs-s{4<|235T z@8I2kYL3I+r1#kv-u-Xk-TxKp{|}p|h75L)k^xGk+$?d{eR*8 z|Bc$1Byi1tHiUQoKX~`wV_(fIzW6LkW}kibU;Y>H?*9(;gC<;Z(FAW}q{9Bo{|4Uw zKj3|(`IbJwFuI5Ez6S6ApVY=E9Dg>8Ch+cCc=!LJu|fZ^VokU-unp+5{r?84`G4Ge z6SAlZ<-2f8_dole|Igt2Kj8cShsO989iBdG!Mp!u3H@&{)hCnxtULz#e|2qbd`4C~dtuV0+VDm!M$9WUOPRvNV9V+J^W<0 z<9>jD+mfNMLzF!Vttq4XKrJ#w)g`8cx@de+I=LtNQlxKk2!uDMV*Q> zEfm4v0w`q7C}xY1eUL-DPTw*O&pDp{=Zcc$WvuCf7A7f&;U_ATDE$!gw_RY)modc@ z;Panla68evR-l+AoD5vedTj09bw$g~`p$Rty~*b7^Ow&U?*y&Yex*5i$p7VJoFI}V586iH?stEGq1iExA( z)r^EJ=bX!0#{qK$XU*OK8esF=nU1H)X^B)fo<b$1R5AUz$eW-KbVVSTL z9M}ZF(~86brJZ(Z)k}(t&dRbYHZ0cY&aN0JQgm?9%_J z)bYU~d~7x!i0D^spBx>v_m9t*L~jytk*}n-j>vaQ_5KE5@+a;|zV!Asl+H9?bt(^y93CBPLrdFxJJg9< zZqF;se{=|)Cz_bek9HRu8utCyyPf@Gd>tnuLZ&ynou@cuWEZvruk69$F>w*$+g}Uq z?_)!WTFy;*Z|jFPF-5PVe3iW)@xzBD&e0wg zAF1U5f5Elu>~HU$?6kRbZZS;@_}+QfJ_Q&!+dbIYIkP><%g)oIt)ou6(EBknTfJ#` zkui95Uu+$L^c)CC92_4w;|k2KTkg(z2`iIl`OLSI z&W`hK-TNk6uj@T}v~It_>bc+6*PU;`yUqQ!vvpkd4L|*`*S4(bg?c@TMp$N*SX8^7 zuw}<|aJ5qC;LzDiwcPol29HN@VC%Zt_D=ih$#c{8L10hq0crE>rs1hIL)7)*EIB>! z(bF&L@azr&pWWXK9p;Vh8k#iw2c?`I>e7Ke*YN1=H@{;(|8NL@1D0B9KHd5O{yq<1!{3xZIYJA% zOf{C&(tn0`p=w4z%x7my3Xd_LX(DTf=>-uk2eT;;q=PuFa5m}7(aCPRd$i3HJ=lNN zd5$6uQ-EvgG13#R`AHUuhyNw0Ozu$qXqoawKv; z9&+TXVl8vE7pkEAM)txv1J1DOADbvSRWCUNWS4{4K1Ets9U5|^z?HbOB7)=5n!}eo zLV{y`-6c4F-|-RwZOG$I5#R{{eU3Va6ys$QBSvf_ZPtg+%AOCvA}_jaqDai!lkO2- zLPRF{VGP`pWkjD&5tM?u1PLKzzleCsaIvQ+o!uQ0P;j@GN<9u7F z&vb~X)6RaUQ06TvZQOyM>KQp@`Xg`7FAF8YE3d?HvBcCb@w`~#!Ycvv00I}4klVZN zzyZehlVaV2lcVjnDJ&K1rig7&_vlrsx12ld>D*FlQi=lW11(orf$>$A5UmidBa{tTjhVyb*_LASQ!5jT)9~~VW?L76`J7rtBou?Kk zx(BCtceas8UT>~DiveGb^?L`L;q}%_{eH!1=U{i|wD=y&@12yDKW*FgSImGAL@fb0 zb%;$^Q%gIz6kpxvusXsE#Cc|5r+wJo-w`f>Ir|(rfApNF{|gTZ@sLpe(jQFIEU|b0 z-VgRbjb7tH>cyhsd8ssZSQt~!SqW= zBusavdk0>Tel$w69Om%~_=p#$<$d;$gr+Cm0xr(#wvT>nA93WNT0Q7E*!Gt!?FBw)c%NM$ zVZbU3w+ze(IDJwL%R2ZMqiN~_yi2gU;mjG!sk3>egomB?P72>griEiTsXug%3ndJK z-+I~EdEPD-2(NSrJnAKbNQZqr4!9t;56i~c9~qwe>CUs`gYNz_T}Gg;{=h$I=9Cr6 z<<1=7llFcWiFzL*rV$CriATn*(#4q9&s~`3r)XIb=33;UYI)Z!jRBX?THHH$ho`#P zTvv4;*O+2nnUWshUUH}*>ngb%PUaUQ`wV|>AgIC+U zE7m3;ab|?zn5%Bzm2^J!N51v4IC6PcHt#E_jr7t&Ab{26tpy&=mrR|`FWzc-rMdXt z$(+)onOmC5;-u%4o|ZJd^>R+(@Cr-&Kxx=#vt)I7pk3AvvhMnkpf?UfsjN*b5a&WR7wrR!?-h7|1sTBoW;@n7|a|;DAvct?W3*;-D zTI(CFhrb_V2Q)1k(pt58aA(R=G-YX76PDHon68Aw;l>6n=f}2M5z)D{-ef2YDooUF zq3`{2Pe@!nu)15+p(1H`fn#Z+8%4gRv_&mKt($Vn*u+qCKUZipk{bpA*-=8R&oPOmFHS|#>CrY~ z+;nlNgQtJ`_;{H%)qw!lLSN!+5eQIcS|0w3u!?j22k5(Q% zenj?PYwLIRU!UYp^Y{gmNi85QtmS@{l38FfJ-WoztDBtywTB(m?EbWWaMcQ>(`R2Ov1-EeJ zyV;8`nD50`aNxt`>rBZDF0(liIZzTWT@ABlP5YQMY=8-dIk6sJ9rqT+>23br3!V^j$S^=3=~NrqBCIc8G=!f+j2+U(Faop|cvU<0<<1ck~g7RBi3F9%%o~t2nbs;$vGV2PgM44`m$963o7c zknE5l#N(LMdI$ynI_U-6P^Eh!V7mZh+|y#W15=KZRV2edfssKcWQX3Mm*iXO0JgA+ zS)C7Z^{9P(aoAOy`e1kAkK!p@bP{%RPVJWDoSG}g;A!n??@u7I3+@Mvf{#K|olv%A z?LQErPeA~6bN!;12ww{l(#VEi6PM3M-XXLZ=qiKRgqF{%nsZoeEOKv@sil2RK)J{R zloDHc-lL76+{?5X{JWI@&ZGaC7W!!P|Ko=b=hFXct%og5|37B>zXgoI9sU1F{6GGn z&3RD_%4CQUn7S%@r2`FE0)oV+&0EM%d#NWswH{kgx#EaZH`K)d-c+=smG5VTg{@!t z?Y+UFL3T0j3sK7M+=vCL8+Z>?CCDfsd_c{DA+VZ85)^6&@Z^-@E0ISD;^`{1A|A?3 zbmWFx8xc*0RSDU2X9>HRL!W@^Cs~AZce_pX3;Tx{2IIl0cZ^M?p z<+2Xv=N5i!*Uq|U(`|Z1*`C=^o0DuCXKh|atV#En5b+sNb5M$d$YW+q^5N#Z+oo~2 zVzFidWHOU^oK~8t?n~G!%x;UaqHSG+v)AibEP&3D7TbUl5B}RfJm?pOPanQ;KAaE3 z1h-6O4_>{3|HEGwdY#=BZ8oLM7Z0ESJVtMO(RgaeKa;hcGsGtmw^@Z6RokL)iTLHe zg>RLueqRll6yb01X+t6R12vGJiL*KUaacWgg(QC@H&UW zKf~~TsZFFGvc<%RA^^5PT!5#hoPf7p# z^xw0W&pv+mx0~d@4_oVx#Q*ov%Ic#Qk&Ekh@!vklpIhWLRuUlYHYt#U%F>7afhN?4 z{mC_f=pJ*4=n$9B(pl2yYg*nMaiDU_7e(zCy z@TLY85(~vF;GMG_9OYfdZJ_MmisD}at_&(^GQ4J`C?Q)dJ8N(}e=z(@?MCE?Z00*9zEYVyQy=zW7==B*TIm9Ga#dg(O5x>C!GL6 zPXp)y)rEzlw{b>tYQ2LbT1Q9aWth(}?!~`CGng<^2QUNL0T_j8Q0dRCLIJ&M2qj0uzk&=fn zkdQ-kdFNQ+Fq|Q(qL5ICM@&=0MI9!h#tGStTQpQbrCPqERf&N)OElZV1-n|<>J)`l zji;mzc}dwA$q)Q0^}0nJ09GS{Ba24>r4x0LhUgMcL=#SkA_{U21*CwP*g;Mv9AYMW zoC^E~-iOoL^DY_rZ-Wji9A2keoCT~kk$~5DT1d?=>pX8lNRrW5p6{P%(8?G^48q>D z0Wg9D8j^$&=?741?krrwM`RdXz+#W0Fd;IJ=K@@N9~X)>V_7<6jo$@84LQ!gNr!MS zB6M)7AWJbC6NI485II0$pmk#XY3msS&6pH*!8k#f1PCT*g@cM|nB)izv+OtTKw#xNhU!m6~09{j1IqR0?k^fbTp2_MLJJ~H7!3yrY3nZ zRVpul+cR59s2!`xf|$ac{hjtHcGQpFdN)jA#{~V`nrMSjsq92hZkRd4<9H5cF-?X2 zgX4C$QrW`j6?ifdmiCx>tb&#u%=dPDuyatUJe^%+$k2p+;6=k8+j%LNRt%>^j3pCI_`ziRf-c61nh z2DLx?>_2_+*=Ozl!)O2XXa6O-cEY?chThlk?*B-!@!(yYG}B@Kvn_ak2=D(-pZ!lh z`yVyQ^=i^<4gdl_ixc?Phj0I99p{hY{{>2w#{UDnTZsP$yId0gZ}?8}|CE}R#Q#%; z_8I_<9mwTu$jCZlEr{ zL1M+HlNhknaXOt|V>$fqFq(|wER)L?E;H1jjISGNga$Y8ui;olV3kD_=hZO^!)7S= z8=Rkh+M6Nnk|2U;SBGj9R-GUcL}Yk=4Y)THEf`K1@xp-Mdo1cZtcgvXr<7a`nkiPMVra`|XYaMEFcQZSkPG86ddOj_HFshS z(-94kH9Z4&c_~rFk~&FZ;+pvG?4UL(6;G{mFM(N+G6kMS2`_AnO`G|`9pVlb=QC%pgw~Q28^Jh?QKnbHLt?Xd8lJ~P zsqDdr1_K%fLjqpxQ_q;NO4`J#nS>BNfi1wr2K9mZL>z3Uk3$*6(*#D}5ITq`SR}@vom&IRIqH+O z0+fysZEQGfkO4BK7UTwy87Cz*n!t*hlvd7aO*7IwW+~|&t@$v?tA}Z(=R)V7+(kJ} zA%g&@2$au=x}k(UPVz&W z5Rs_ri5vhT2B_^EWNAp)ngP&EFdMY0hVmmIRWgi$)I@gBTUoTd>75X^tv2RA*N`YJI)Z z(x?{rAQ;s54#7olF_)eSey{s~C!XMcdl!?Bl?eWZ_|K0YwOl&a8tbHo4fx&|tkYc`n%$Yt2?g*zl!s(81x+9$K2&aEF!YMFrY2V6i zb@?5>98koJ{e!ck_Vf1Xp;PQAx@f;0V=+mF8%R)%%1-C#Z14He*|YB6S-10-Hjpl> z>j7L2%OCI0QXyzI`HZWM+Ea&WSG76O;=VeDpGWGM+JZZ_jThd>9K?el@NVcO_o+)) z`N23!YU6Nv*}z-)408)N#00k#?y;W63-S|J{&nzs3U@`U^g>&6K9iK;GDH@VOsii3YfR0JkR)=f0- zNq_gahk8Azz}PD6Ay=c;p}pVcHreG1joP#;a*v0vTSH-EO*+^tZM{E&vAeB1>&ycj z=zp-4#_`cf8>>o7{SiF;rXDP*HlWM$U8CgOv@ON&M-dZP(2(8D;szBr(eBust@;?d z@N8?h+m?lLn{!9KaCzi$!2;=~7B3QRFm`4(x@?hhfG>;GlSO)0KWr)SZL%Mi&1Xr33GCy)HNoYYGlz0Ku20Lv`<-k^`k~MnPEBbYj=T?H7I{s;OhA z41*4StMSz9go|z(i7vcwL~hqeY0%k#<}n9=#yPjc2X_B%gEK9*e3Qohr)^A^iB(Gu z{@(+CA-t7?zG>+;7ZmCeUwb&6WV)!gCs2Y>r)~^a)%yw!`z6ZuXMTJ6W#`G30YH8h z^VgEvD95S`w(AUAFI!{xz9~6sRF8JzW3JroSIiV}Ky^?Cs=47jQFRe-}LA8V)e~l&7n>Ln^^>PYeiwqG<_zPRvyn*I$2LxP8INU~iXIZ+H z(p`x9bIZV;h&C+q&Ojc>9N?k&5Vyew`8IM$;D(lpCcy|v88y15s)s=2tRxypc?1qZck+DG8QSCwiB z+-<0B%9gc-{h%9j_A04T(-jOuS6gn;102f=wBt?+oe1}%w^JHX*`9Kz98&BajdJvHEVA`8NRzkSe1u#K8eEDdOTl!rRKw@ZoQ`WOfxtC_(#BF(qHH@#b34J zARC&3HUr}lmlSbsFzM}kdQ+{L)SVA<4M({zO7dkGjk~_?~ZDb@l#Ob3QF2>jy zkV!gGwU{ueiq*F_tfGp)`bs8JHiDmHj5dT|=>Yj=uCPBEu5zz7r#YIr;4W?#A$l`U zCE+J3>K}>Uf_WU*JYuz8xT*O{@owrx+?nj*9D=mK^35TdG{OA$+mY3Tr5W4&!DBG~ zM%~R{{l>!WZpgt`B?oTd3jVfW5$CL$;bwn-X0{`o>lXam0k(FZBJsnIJ>qZo)sE`^ z4(x26FngX()6O&+AvDDEL=&+gkMVG>AZCfxcTW}{)4Iw_9=y$Bw*WGm6F`b@2itnY z<%A}F-N*24dQzwvnlG2auZI4NJu*_z#s?rLY9U7<74VL}!n5h5HyRt@hK3`YM@_D1 zng*ir6>~}7VmT|h1(jeX&ZNo!1(Eo3Xu z8{#cV(a1*A-;eyD1dnl14eRu9Yk1ev2zgwz``GX=bJ<{LhKp9hlBd7ZGQ9K5bM#zE z;~%;_QUyoGrd2CLyOC)W^-#*Cc%Y24#igAy4c$d>dV^;{_P$t(tecdC$a(WQcmeXyOa&|wp8S|Wk9p5c-p&EHAjK+^&pY0#)w>JXIOV25_wMV6FUwMKuoJ6v@H#CJSdA8NvZtw4O_MhL_Xcr)2 zE9NLMcyS^x+Mfi;I}lcjTH{8vI<7kx{1U!{zgNeEC1f?{QO{VKxWxQxXtX|; z@UkN)$8KeZ;1**Qu`PYv#kkzZDGCv3jE*ku52a;r!1_K|)&dwU5L0uTULEK3z%3sP zf3Jlz>#}eKJuLW+D~Myl`aD$T%km$1_A*x`>sGpGxz?UMxkYm;Zfnl_)(z|9&HBdm zv6$(@7U;Wwtp&2vUbsRf7sc(dMs1iT7j<)POjCNrOs0?p1#!xYXHzo7TTbbnw*Gc= z`u1bbDYs9b;*tX116dK4pZ%NMQI_hj^`pih8@c<^H>PXwVGf5Oo5ghcUI=t;5e4_7 zIyFu7IUOLMbP%Gwberq|Nip*7{QpA#kIPTt|IvE5^2qvsu0397|Bt))fB(w`GY6uvcjL=Xh$XWGDH_1_v%-Kd)G*2xvV;5&|;^#K* zisp(_EEDN0D&=suyk%i;k{0?zF;<}!vdyV4u<0p$TeKp^aAZ!c^4@ZWwuSGGrQV!& zwF-3}v=~_W9XMKz+76#}0+d$cZ{!kdOYo*%v+Sk$%JGO4*(03c^+x*r&e2(W|M=)9 zQ1SVuuI2}XS;tT?TPy*>QJu@uwH2SVerLr>T>lOvcYR&)ZD1R!IRb6h8imOstTTsj@VJemN@^14=p-Sc9!h&v- zkDO&F+T>O$wR>m~StkR)dcC}?*!MwUDN4RNWkr3}ye{v+RCzVuW?ENsAga8YYsaQ5 z8Aw{xlbMm<)BJfAeFaR_96*=X_l=QtUFT#i8m(hM;tyD#z&WdvlT?`%a?e(s5S*(0 zVLyuc`Z_zDz_pGi47Mw04YGhnf^&NlnKZYEAx9SUru#wLsyT#Fq5XxOJLFNZO=nDn ziY`4=`q3kaO54_CQL(y18Cgl`LK10CF^^W7Q^qHn=4_8o5zHx+CzA@rawO5B?^ac~ zpkRS~T2#=dpyrh(+aC9T;ChhZH}-zA;-s4IsWN(X5zD^JYUZRNFYDHg-D?|nVZMJ&T|W}Ny!N2Vwds( z8291@n5TRn;+qlDJOCiG*+s~zWL~$yPq(jD?mV=(j>TUkb#8&rJmBZm7wa`=|HT~a zcDTDU|M%geJN@rn{NFpR z<(<~@PHTCmwY<|>7PXdE|CmktaZ1tY$^zTrZ9f8pPzxs)y$1aChFvo7(YVRr>rGGG zP7-Mjz2=JCBO@Ir78w5)p*OJ&a0f&>kQH`-9>QxFlt4eM&+$y3WdL&<>dOq{wO!iA z)X&1+{DMaJILx0{ez6|v#zLBEJyBGkh0d0?1$aA6;~ITh{YCrW(14!sfUvf%y!MN4 z%gUd`HKh=Wtu*i*_KKm>=0;-5Po9HTq!?Pr*eR(IaDsS_?|+%y$GKzsB@@p@-k|x; z^%~Sps8~w-9+@ZAG-s#qJz0f1N~2Z^!^On3?kdCV zr9v|kdD1=AJ?lK%J9a{q_;qseO0e`!=V-%`SsX(t93`~=?CkibLo&-O4Sa!>kJ`@{ zSAN#nZO^T}{o;nMw_j`>ople}+nuf5xvf0i{b6w{Pj?Ttf4H%k-TfPy>Hf5Lw%ghN z!D-?1cz{|?;r`W8N z1dyZ(o$To(eH|scaq?Psj3Bz{7BR=8q?GH^-^seyBVDG>QB~p1d5Vdd@jW>Y|J_8W z%N-c^ykJ!pS9TGl;E{7evMv}sUUn3zj+?XRswC(uc0$A22eyh^(w*o{+dX)RX9hv# z?6}=MHo+qm8!uo^<~dkRBHWhU`F7T(e%%RjNdwR^Zz&k-SvhJT3PH}jsmB1~ty0+r znuS7ekT`zs+Th~gx|DBV$?9S|xKEfP`2c`#4@PQ0qZNrNcfWz9hP0yeEathb8?*i1Uj$L$+I#fts3} zM@S;Jyojb({Td_HJh`YtDpGLaOC&aR$2mgHEyxX;5!*(EkknrqrY*0B1+7yoSR{ST zq+yO&^!}@r`VZMzJjX{Ky@?dE-gyga2MgEol_C~5NDJoYTQq5yf3bBvemxL;r*KoJTj1TwapWXidCjH;#@2~%R z^k~J=|E;Xw>Hq$<`p{&c%$9IDahIhEW?W3cEqlP-z zZ>xi6>i9*w+g5ug-DCB%t#;baI{WP%JqU4Nhq~M#RDXW_qGH?9Te7ftZa}%=BBO6+ zh7T1E^^hw@0$|exJykejL@syrVf$$B?5Mr9Q*lE#(A$?sonx%ETJhhvPutrk#~fn9 zc40IaUg!x&H&JmyO;k#>4o--PN|`#r9bZmQP;sM4cmn?lMvo{A=Gg(ffBd^C+?iL# zTt8d*6LTmWa)NHusc$1^4F7{ad-MXC=I+N=w4;dF(9Rq7C&ottqBiB^jfJQSqSd27 z8DkF95RFTsGiYU;Dai7oK$5kQXlp}t93#CgqA#{sU2rflB5S)puJmybQ`7JdGz~BK zPO-r^R6)+^)*$@~3McD@)wiSvxB1gCI zFhuzxy)UmLa>ha(rtiz^c)~@j=~m3><5`cs)}6iR*j*@WjNOBdzxtK3O>x?E*S=&! zoRZ$km+gmB)?fG1?Qlxxm%e;UauwWlFW-+`g~FmQ+!8r9s36?n^MOAVJIVTI1V50@ zs5Y45Y-{*0Wt%h@xSlVKEzT*9n7L3M1~%z3dCJxDwOqVisQq-9_FgZn?&0-9eXXV} zt*TLeu@-b1P3KgiyP#xQ2I<^od3I1YIFy8W<;aZkWp&`$L9jWz>I)Rzql>teQ=Lv$cNze@G8nhf-AReE!)y50f6;g%eXTQ%gL1*awN!>yV!$HJYGetEkV z|7d9C9j7sH|q}N>lIVC{J5_rP=ojLkxJ0#P#xuLM8 zbB`^mY`T;yi>uDnYL`^h7Z}%^uh%ZAYPAnkcY$iVYy<4&#?=?9x92nt) z_R(O=gkCi7%)~c8)=uaTkOII6V49-xl(TMT&U!lC5z5>j?Hjg z`)pUr%s8Bet(x2k+E$#HZ*|{Lo-y*=SuZY?3uY!|7OcnO=G?{cN;VWB3$(CibL<7{ zmaFJm3M^jIoEeM`IA%>ViVLm{5(?eqV<`o}Ke_(@ql5suDgMu+){2e)v$}%%|3|BL z@qg~(|J*5>?-b2vg3DM{Wj1dySW`j$ns;UsnNe~S4-oR+rl^$AM} z#nZTFT45WzC+FPYda#c~%y2h8pM-#<_!G3#_@ag#plqB9ZUmL@CnL2yP}(#KUew?|{#pG2 z-#(aSlLtZ=JkUkdFPjxoy5IqXg-TS^yG&K}5L475RzHt=A?{j|nr5q;rUw1t8pfFF z=~0J`wa#9gRn>Q<+GbfLZ4H;Jbh}!fRoBh6N({tqu0-;gTro3!N}A0DaZ&7tLAT2`!LH~c@3Jep0GB{$zs}9O!nufLS9G#I^^3qr5*8sdI#93DTlw?m)Kc4;p?#?exF;N>b>9f%W7i#tza6vX7JyhSc9;`fm zu=-H79&bEc*=RjhldDX@b*H|dix=SG?k61EXo(Kg-MFXKTI+s5(pKF4WJU0MClPt2uKX51}7I2ZAD22 z(-jg02h#v5hJ;Kw<#2cvUc>30kw|?o8xjHVx%y~&sGxN1Nx)L2(Ke@mL8`O{-#&of z4?3MeGhA8uy7lP0!d}=Kv>mOrZ)iWhc>srN zm+1^>MZa~dg&PZ%nsB2){bw_Pgh@n%CG7hIVFb2q#NJ(Sm6D*?Hj5=#=i6sOuQO2B z>1?95)fnZFDefcebU%%FhvnkJW@bqY=ul-8Qvu)r>H!=PBt{5t)0D>g^x)vQdwjHY zxczK*>v}H6IJ^5GMx<$ z9dZ_p2z;ER9Eu3GWxymij&ZyQM3xCHm@T6gX#E4}e?#SfR2L->T@{3}wgUIU#_FRD zxFalpe&ppSPGs(q=xNOofNpxO%PC2dgV^U2e3#*;s%4`>o!) z0MkXP!T~(~+e46R>eGGE-rWUO>%n=PJjgC{hCu50;1E6nqlo{PZ`&tF#F?PL1-@zG zC|^}=9Z~FX)f@f|KIKuwlYH^*Z7AOB6)kGB;Px4BB&hdAm7 z!}$CG-m72Ky2m?b@bZkkQ@V934~-li9bjtB?Y$l9TP?Te73M#k{qFG=trsxiQ@~~U z(e7eH!@mD|x3hnYuj6DI*f+bKr??Wx=57aG*@MGl;(o)ozZTlx$A%KMoSX9A)(>s? zf~YiKW$#D)@TRcbxJ13Nw`)gR`!FgDY!)W4c!7R{)7HC|Z|7(a%OgkUeK|flc=imw zjI&8Pa6avI_qMi=4rqR({JtGO#igB|=a;qpXPkEQw}jv023aXVz%QH~Gq8p4opRSC`zCPC6*OrI zob1zcAaHkZeBg{LFran#e9vEIdj9@>zrpIc z-`3r4dt3W+zwK-tmwm%eKkT*l%(n~mdK8VY%qosamIWsMr}j2L#sMA&;`HGV0dxc! z*PMC6pD$|gh^6bgh3%d8)05|>n}fh24>&X(Oq>j_$MHDQHQ=;5ZBmQ$P>0{V_3j&Y z2z5aP=2>?JO`6SvGENV=ipCtK59fuq`}m>+%_y@wU(}o_V`($dI(J>DjR?fn*65@T zP)KOVuM~Kw3m}GTp}UT0RE{lg*r4G46p z`Skza-kUAAkz|R2HD=f58sd2#=FtM} zsN`+%dvzOJ7wbRltZ(jYY(5^lnCvj!d{9o0!l`(dFaGM%ae=xz(HQPezS8dzv|9GA z#iy-ygSZ`?s&|z`WUG9j>p$3MsUjEQ&|!A!DN?OOvs~=WY4c#u6eIena9ibZBj2vr zWlPnwjg3S(#cA4ow5n&+WMaH`Xbr>f4IGlDrokpP4g|d=CAH)d%*cDfVb(Gr5l3e= zxPN@qNy55}h7*g=Icpv@Q)O<^=ZoF(Gc_u!j61Z>`&5a^ja>qcaYPPx^#(pKFl4rm zPh0hdEP{KNikEZ|RqS+szj+2lJa6kQG2&MjE=1}RWL)$vC()>TX`O^W8uS}{K(y%gDfh-G9y5n$U`T>Y}cyi$OBe?Z3zKbpcliq11#tJuYQV(;&UzdHsvKBe3ox%Ym3-Btz?D|uyFK5=`=@JgHJ3LM04>W|%@$tcr%}%O> zrkAz%&AqpcbOHZHl{h}w%j!hb?`f*AcUV8k>Su2NS7dom?d^At+eiDVjKsQ9m9}C$ zyqs4~B7SE1llq+UBgNS2ZJt{`z4^s{+Zvp%fbx+`#yv`NHi9l?Zw6rM8b@v9=v^$H z1oXtk$&fi{tPp>Z3`G*h>h)?XW#E^Kezcgx`rQ^ zOS2!t@Fu7r5v)yM9NtOOQ2bHYMS6()MfHfpBZ;|Sk;z*B4C^~&?c|K}@RH}iD7nO5 z7jw!WNT5^pzJ;x#iaKn_1#Fl~>{sCGb_``&jh}Q2Tm>Nh%$*!e6MIj0A96g?l-x9q zJVd8KaoRoRZgz(IG^cM9-L;P0GicpZg7zowP;2jV!1*^CUhTaL5DC(I4G<`R1F@ML zkB~`NI5cGeFkW>VC^!S0TDNM*F{Cn7Um)XIW!-{=Q5YsgAh~&Ta%yK- zbB{zgZ?dKpKS8d!Bu&uN0wPIZ77(O@4j5Aw!4Q$OXIgFO3|OP<@G7=pneETesDO=# zXK&hjIsLkbdk!d56uSkv00+7E#8zdohz10Zc=J~JLst-cHlzH;hEtr&AD-qFhy7_4 zr^1N*dBrCgz-#aGO2dwDigWp9Uhy#56RQBfV>@7F@fv@cRJkC-Qd=A%7ntjqg3xl|f>it(^e*nKE%g0tNr2S8i zz5s_Hq+V?-84Mp`n_K2}dUJheV{>QY`6E7GQJ@=Cl~KBbp0`wd{G%v7`u+aS4!?%0 z4?sGo2sF=AzjlOFd-Mt{PIg1BmZ^vBl(WIvxA$0ufp8vjaaSx z(!Ku8O1f2PfSs7+d9i;HjG@+FML+U;iPh3e70oHe6!U>sl-9^vP-VVDT6cJ)$`!r# zKL(4j1z7(OwF&V(G9Um5*+&duoI)a zjCXM+98F709_4-g`~PhH-%2l@Jih(U=H@or|8Kl_@qBZG?Ekl(E%krDj{Yw>&p)(y zT!(KZ+qIxin;3O2Q85yB&UbPPlfb`vJNPiT1WwM?3w03Ajx!#Q)QoI4)@8*(RETCGKH|u zhi?-ThP=<88$Xk8{7lC2^Ek)F zSw~Z{JJNaC%VElAGDDIZGHYs>%*<7`vU68C#e{wa7y5Z@=x6ewpT&qS&WSp!r6(tI zS{Ga`&urzLg8psjLyBgki50TDby94u>+9uwIK=FUwaB6+R%ft~)gP%iy-3?@UEx%d zKrMiu0Zai(*Vz$v<&%=gqTn9>8A6HuFo)rc=_RtCHNDxjX);wKR)cEn=4f8DB^tj~ zO#-z5eg?42$)q|v!mfN$QlD9qX&p6kUCm*ghjZ3>myNS25VH6}IIOzk_Rc~)!*F0_ z$q&rHI;*^a>B74YtUM$pR$)h2Y=e!;l#;ao@^rV}Fa5C?e>CU5$zbuA%@L@JGM@|D zego|`{%Q!DW&}Qi{%7C+6zBRi{6C22>ziBT|6zS&eQRTD6LQyIY%cGAf6Dl;`pz>W z_$x(fl|fz+4X1tB64HH37!AF`K%uJ%@ET~%3gu%J!@71S9NHCiCB)@81dgD8S0?ZB zq91$=`sAk21a*}SLR%T_3f(N5WG|z-E}iWzo$W52?Jk||E}iXKu6325&vv(~Sh3e0 zMFWrzjW`;NI|aGtkX^ov2j`>7nEvet!z&D$$j*0FiB(yIy!H!I4*l|4K~edR>=n8> z4Ln(qzkV?wek+x~`*r=h(yod<@JUoxMPr!gEIA#e);akQ&%_lZYr`uAU-eq1noehS z5vAndvZt@D*f&sCV3oPXVOS!;OF0kYamU4kV zj9frIlk>rMetoXP4O>ZB!FuM!pro*Zt{_21^RsW}D*m8zyH$zVmrg4jWJViWAb|n} z8SGHW6@)95$motE7;tN6_EcWMXLs1W6bnaW;sjNcYk^_`y$bk&7pRR?F_I~m!0`Bm z1=meMnT4*5P!e$!l4iOb<4AhP#G&r$vTqxm`U-}*h5}EYnpnsujmD2U!z7;`QH5@) zu(k$-LZ`PHozvFQ3Qn68c9v`Y!kLHo;p1~hEYJEKTWn+DF`?oUlf&8Ju z&FOa^U`)>8H~u)srzqqsGr~e*L--W2l@s;xZ?TfSFkl_*aoq~`sA4^4bBHR|B*UQq zganFg5FrcW;T2Mka`MTnjHBZ^*lnnj{q%)JRM^2oB@&|0l7xin358N5c={*_=HO!a zcBDq3m|DnZa{W=1gJFf1_A791@&gTD~zu0)OiTYpb+s|LD zKco0RTkGq~_}^cV|1;|>c0>*Expx&z=oIN<2Ayaep@qrky*$Zmh<^k63hd+-QeS~_ z=f!jcXGX9iHa5kff2T7spTx$bB8EqCFa}C1qv9Z$ckGd6KY=^6XgG0&*L1RwBb=z; zk8W6Kte84r+2CZ3cVvr8?sv)kF1g<&_q*hN|C9<@XB!*UvwnEta=?@t#p%Q*`WPO@ zVfSQ4UOKBy%-UXXnE|pp9mmlaz0s!ga0VlcCU7z%FQe=JP4y6_=*@I80qT>P-^M)_ zV5yw^LGY&iCOhw^Ft|Zlot=wO)TNBtiYQNpq;_$|Hk@Q9YbiGiE_)bnv6mr*`;i@%8?v{xw<+QH-}zdsFPEAwmuOyeM!P#kz5rv>$S z2%G;Z7^lG3ufu+C91QE@09eJ`?7Uv9{8QpI(}Plm$8|VlF8uC?R0+BV2G0S_ksXcc5(m*abJ%k4V(s!J2}pn z95@i|i(np(yk`!3jK^gR2bcUF1~+-wBTL+rVZ{jv4*mFpSpBGemPwuM3{Zq)gw!UI zU5>>nTvW$#9{QbK-dtLDQ`ydC_a+A~RYzvxrz`{n98IY7_-2lGE+*?K;Gs_VTb076 zD~6t%J?h`h*$oR%Msl0nyQ17b3)f3;EE^+EBGS7N?8E&WStm6OIt%Ji#>@@*P(afg zId`P|{25}QMK=2kI4nlPYtSr;u<(>iQn7IPd>XPa2%EUv1ErAa%qsqsj_MX3#B?mT zL>+$1gS$zmG#=Yc@ju~T{5lp#k8xs4erCVEkKFL_s zsc;Pqt{#npSpX#jv>{bh4N(JP7EQ-pRD|On@h`uLSK=QucmIF_M>k;)d9AZa{k{6t z+6xC96QL}S>PD9d@7rUt^<@lP)qOh&wDq;P!erz zK1;NP)Z}U$O@}>d?~U`>Itg!szHX1cGTSmx&PQCxY4zqBn0&WgdF1H5N3EX#GmB)w zsVy7lPioyo8wu$gHkaG%(dofKR-1@Z)Exf!?B);;=d~xPH8obZK3e(%z{>`qh)hJX z0+18U%FMXr0-#n^qtGV0%{+{HJU}|-seBVpci9q<@r-d{#q$BwOkzyYg07WN@$E~0% zZgbK#f$|Df5qtJQ)ecvQIbq^oY*s&bj?Q1Nrz22`h*=s}T7v8eeRmzatv zq;(4e(2@-`)SNWd!KJoyQP5%)$tZ!DL5~_F{Upw_pwcMMCdjeFov&Lmtb4NPIrQ*@ z+lz7F0Ff*r!I8hY9805kN=@zIbZ~CxtSg}M^q@rj#t(9y07#>;RTPJ+DM&a0}}_9S3>Y$Qc6j_Ayc5V;F}Q{otH9 zN8phXv)|+Uh?+G){Th}Xe5oHQtn^I@l-)6FSXfb`V` zulgnZl`NjI+E%9DA4KuQX;nk2Q65*hng!4Ac7qWd15tOHL=BP-!m@A+Kk=8GeMz^^ zN8|7#u#j%W$>4l~BHRQ#xGs(F&ac!BiT~{0|2q~?Hz>JGVLa;lcjws6K6+b@#%`TG zE>JW1YE5L6Cz}$=?hvW@R7MjjB*++pbAl#Qh61Tho)7pksA?zfh;lM0*10U&%NSRk z3UHmC+R^CA`MitQGrN1bPLm4I^-UpcKbQnFYV1(~tH#1pAPK6PheE-c36$gCPR2fy zGM18K84mUHNgxF0HBU_@9)%X+PLh5*>y?+F@j1uD?$m;F@ql+ z@eUIA9!2)|;Nx;6gvyF%1cWQ-0V%~ds4j==y||;7hchvOEAWSqVxgGhhHZGPrBIKx zrQipi!MfK@=ky#03G98yqJASGw{D6AV~dYrSoswi|n7 z9BD4Jo;6cSq=SMYFCj#NG*qpjz)g8~U*Kc1uX`n`O(v&G_olomCxuw>G77+dG4gNm zRG_vC>z7bpRYmykD^Xl6?lSW3*WXOzyE;8xtl;$y#8GUH6qNh(r4tDoPX z-bra!!oX*NU^rC(kU}J~_yr@Y01g&;{k+OoaMJ~b6zS-mJrL8`@eibyr?^Gh{1P2taOVlx zuA?4PcXWqZNaY+rvZ+t(zz%4y^+>Yo0FX&kS`ItAYp-z34={QQO#y~(4OeJ|1wKwM zbh^_4Ift;}@qkb}t+e)+^eHvcL>6$r!42O8697xHsf66u%v!z>&y-<{f3pbCyOfv`1(Hq~%S7A| zIKiawfsY#fcB8FD<@=R&%uFJ6PZ55`dGZ(}-=gtCb@8TbUNHEXLXmkO&)F{>ke>g_ z@dYQsjYJLDi-Z*10`#znu||)l6Zmg=<)<*7`hD24sNJ+bjs}3z_{6cA9LKJMXKK6# zi4qS1CPTins81<{=6uV`z$4<1ewmz&Kk~-*d*F|!x`@-_Fq8o%J;=YER(ue)FXa0 z;$bN%WX(BVD)1gW#yE|}SpXtm985?XOpC0(-n~OUH+rV?>ghV`29l9CcgfCWrTnFn z1$O7afyUERd%Y*TY6JL};vnq`C@SK#?F3(McTi zF)Ua?;v2ePxd~7^IJzMnVcGAmNI#RhJKo&Mw7L8oMV{;|sI7>tL>1Hc&p~XXOrjHy zf;O1}G1PnBS5j1b@U4(>J5FMMm$Df9(okY%0zM16{jJ1?c5_}J`Q)>O^CkJQFjXh0YLk|RaJ>@e#o)4>SPlIiReZ>;G%GoA*S1vjW5U`{u9 z^Bb@=RY+Y?@x|f9Ujd`S$V;+Y|a=`TmI!VzMlP8BP$@dXOqz2P?;uZWpROsDt?9Gb+4q_&6JvJ!Q;<_H! z4#%P!MdMyLL=p&GGRNCYLx~^%`j|Nza|w{vO3t#Kt;WZmqpG_)bet2_FxQjbLG}t%YY2T-t>m-RA;=+%Eo>z$YbW?Xg zx_!$RHmhl6**HvUMGRJk3?!`^AKGu+%Ul5Yeh6f@M5AY&tCVX+ifOOHK35pn4)1SqU5jQgQ z`>a9z1aWgFgE<85?K0Ly-fH1O)_S;{6pu4cZe=|JoOOcRiNx->Ox4Q3G4_Mu3Vp!F zcr8e4cEy_cHR`(&Pz{5d11xRnBK&6gB)ZCTZa0E;SdlPiQ-b2@7&DpbShO|R{ zEES-2ucSQ;NVHgPA@<>}ibWJ)iwsw!Y=bnSaj(9oB@_RIUkqh8RYg6y>z$Y`q94-} zXUUnX!k6OvpV%kF6LUmZSiE9V-OfMJT`mFsc?G+mdi&4lBqNYL*Qt7m)%r=^qx8v` zL9l){3Mu+fgd}?jpE^tUE*gjbh5nOgf;~%vwUPkLA$o-%0fr_{m^6c}F6SKUnie_r z)3>^e)8CMF`LN@5h!YpMjrR|wWyd@(m0^lB&c)nihIm@2I3!@ImiQ) zt$i@3l4<>ud?=R>Q8r;ot>5DaC>+b%FW!C}6F{Q8BCQp6=5Kafa<^ow6PKZ&>Om1$ zI|M(Hs3-mUqq=bqJ=PGXBd_jChzQ*vZz*`Je$}0~*px1^>2N2^*m8WIMO>%*a`p37 zHqtxOzri_eQ48uqJ`PxQASN#5J% z@05CkTBT+TzsxL?#~vq-=lmcXey~a{auO;iO8d{QZfkG28OLCZ(NOyVZE3&}yiR49>N#JpRafm)6Le-iv2FbGNNyaAT%)}<% zwRI`vGiB!dU{^(wmL+F+zUW-es^R#vOc;Jy|4oJ2({?pkWmFOC+&mp#=OLLz?NsZf z1j6Z&TLViC+N!a@TU*kW**dz%6mc+Dlg*w6g#s0Gx0)e?q>^(CM9ev!1k1VyHVk9a z^GPYm!vU@i@z|!w&SSFmRQv?M*%Qo@_(-~3Gp#sMdZ{y>0bfFe*L2Y&PoyEgDSHJo zUD72oFy47~Kfp0x@Kv_Qeew!@?3Hy*X7{4ZS0lKJAiGV}sv+-$-Dpgn7Ih7;fD{5c zJ?1K-5$q&1iJ>P8=@B#-_VBH+IpLu7e1~=%SV`sQU?LTHG}n$#hU&#IWpw!1PjYjX zZ|;_3(hGA{UWF;JUb2ABj?zYblnH zt6W8j>6!6%=s%jGHEu_MS$I;Gv1cwnWmVTrRlh?~zx+bSBv`P3-)k&p=N(G_P$fkl z3udz~a7CxiNN6fT<|k|SXCJFJVkL-a?t(tf_D}XCtsWBNQ(*?mn^$s&8h8cc6S)`3 z*LmXudB-bk(Bn5-p2zAHJ&yEsnH~|+l&Frgoj($P}3AcbeM#^M^fe8x~x0#rC} z2q)rz)&N*P@{Y|gU=XaQ1jveAa?OU7cj!Pq#AS)?)tt})5IJ6?oymlOKd-=s7~%_g z*+y^NRn%o%>Bl`4QoDL_J?eR`$a%AUWw*G-tSN2 z>jcPbBQ{M3t)~pU=paQ*l*qPyw`;M--(w(}xksW_wR9~SaNe`*i)ls2sE>c+GeO0J zM!m@`Xd*~2jekTV!9>R%)lAS`b?p=38*La4*urN`@`W?GAa&gK;u;oZfCm^K8x$xv z9LJ~#M2efk=teD5w%-FAaUc_&8TANs4%%h7K-jSONof344$?i{*d+>NxJ>wvZzH5_ zK|Cw5g(cw?a+-Up+xw)a;t-wb(}AN-u}kT*E>=2-&NG6#4e5zV&5B$`%auXK>^TR9V$D;xLACXqRGhi0E7ofKa9@c{>2nkdYGf?F(pZ%e{w_TV82r=5BZbS zaXmR{=E*YU7e*NloJ6DPsC|uM(4;*GG^*U$r%eZJu?@+x*DZZTWMOiR6QEP&m>l6B z(}O)jO>m%|GEWc=aMu<=HRZ^SQZKN!BuT*`j%}e!yLn{JJ+Y9usOvTZmQ)vS+%iSd zTD1c(NvgLIOUar+bD?}=Lm_68YCnC73(sYqJ_R@?%g8wk>9aI@i_K7=QzhoFu|$6? zl(pKDCrT{3qjL8U%N>?n$z$HQ=DBpZkE-B&p8f1}*jto2r}bE{e3BWzU)_AoEbGz3 zx=1BO+m=4W{Oi>szH(+eBB0j3nq4OPk^AaVB6-_``4fM^pQ2}Vx>5vTe3Oo4o^U8DzgSZzh~+#Eth2EPE?}& z{I2O&m;3k1b~`htL+XXrTi*Zw2>1U5<3CaFs{KsptBTguup12PDUNB~5J!vAJ@$UHL0U?($AD1y7moXogF&~#PAD1y7=f-@L zaRT@2?~ae#jn?@)9s9;k%M4rSu{Srdm}_xhk1&27wkB1l&vQak6jsk>K$!z1zy7X{ z5>&{D7E>q`lS##l@(8tH%HpR}Oa)89GU~TeK!z;AeEG9z_e%$?!2;^H4M2yO!2;@c z(VIUlM)yodrC-&rygCv+GADTBm{I+!xPH&LuPq2hC{ z&n3Rkr*JfN_n1>~Uxu$Yf#>IUZEgTHmK@CL{;XJIi;e4ZA<%#q2z7>+<(w77Te4Ni zB5;`VK==Oz?|*Q%Jl6ehV{2=Di|&7$TX6BiyC5WOY%K48U*qq)UyEYmRXXn+>w=;v zZo&UHzt=Z4_>ys4#71QuzVJ<4>5=SX;4|WPi(aMuPN3M|v+s((u8G=^`5oo82KbsT z<`VBnw@j+qz8glPIE=l@@X`)U3>aH=;tESRc~1fy)-3;gFN;d00^6r@8B)8<54;P5 zF>Z)Euj5=JdqLcVJB3o1!?N(3IK!LkuzQ`{d|t?rRbt}{XUD4mD}|QBYiqA{Vu9(dWTmJ@;t$9r(Q3T3F^MwhWWGgpKi_MCL3aK4P} zFhW2tZG)f_$<-$HU{+vbn{wdG;rcv4eMx+~f%_0n>mDuR2oW_Y<5agSoJceYQ>q49 zUoYirh%UIEFM4+{5N>6SeK7S{xey>^tI5?^sDiU`5qR3XK+8MGXB*v3EbU4zE!@&U z$ajeAz@tvD_;Aa-SktviLJDrELo1n<&!viZPcA(@(->*m$%a;Rzj#z*-N#Z{|AZPI zU^eRw8pOlfPk|ND9&;4-l|{)o^^e zP(xRhE`2v*>>U89@c`e^zZ<%l69GP-v0#UMafQRnesCMgD>6w?tf5WT2v{YWT11b&)cIAj6tg4>aSMHeKm!!O$a8E3kVL2` zs4=dfnr@|XY6z4JV2?0N%)uZo^P)@9C>M&8D%h1y+ne|oE7g+N_4;pw`u~cDG_6V} zQMCgcV0ACJ^wCLerSpUe;{R1V6^XS<&L^tc(N%Tx*}A8rr&ihJiIx3qow7}+(y9q| zTBXpYRa8-%sa175R239tbuX3y0)+}d7vvd%5=YxD)|H9 zUy`jhvMyMcmiP9YI{9e7B#FSY8;L`!#+>@M2Vs_Do8DE&Ki5V+8+6_hZj5_;zGplmS2-QPq1 z)IPat3$9=*azXjUTK#Ir89G679gkXO>W#8eD&AoQ=n|K9HET7$Ak^thdI?g43 z-c5k~7xllFW}|6eYA+7B-2lgsn5Zy(kmaeJA} z{tHV+n8;a3R;X?(*drWj5o;BJ>|u;r#0H9S9bV##1-mh^IOUW}6M_V&DqmEUh=(t? z6_~%Rki=KwVbyME5PC{oZ|JVwSHgSh%mYmPdf9}Qe!V=AcB1eNRpGlVy$|D&6T8Pz zMb9P>smM*>`2#{D~oeAxx~oFc3?j)!pYbNCOXk0c?Ul5@9_Chljk^RYs*>q zE*46{g6uCpy?gQyAn(TVvC`#|r?J{3EXq+*vYu2(pmBM{q%f;!T>$$b>X=;kriaS+ zJ?cr&o+`#ee?(_sQN()*6l8+8wgxzxHEg4q}_`mp$#I7q0nJU{SnS4nH73IPb}gJKtCNS(gU0xDE~v{*5xab>t5hceX^(*0I68l6s!~ z^|Iy7em*XHIgj^QZ^!&_T*-PiPCXf`vwC^||APDfV(&jEU!(vy=ly5>#X9T%ZLUAt z-h94}?>`&s>&y3_udn}i!U}-n@FQ|9OAWxK2H;WyaH#>f)Bs#+0RFKw01H|f=ESG~ zx{293fR;wV#zvJQy<>VhnMyynzaKU#sk1_u=!hD*{CpJEFsT-qw6ZNITghT(5i6#e zF3CCoPWg1qvO>|;14tLvvB9_?-nNR5rJ08_+Y+awe0K`J8j$t`y`G4s*b{Hzn|!IF z6ZAS7)4~72-ytQSo!uj@2S#N@q=U`2a#Jc4R-UZDziY3%kXR}?rKB>4Dr!o~45v66 z_as1G8cq$0T4kkq5tX%SuDwRv`N7q=lqib^vpIz!E2FeDq{2>TRypT~b*KNf|NK-% z9Ll*83?!?OIas=XREM+_>{(5U%~DNCan3o3TT>NDV3k{k#P9BOumN=T?2*vKE^pg= zry3bf2j`i!j2D5NNyuu)sg!OgyPjnTmu?C@g`KmnCA*HcK}*-bhb@ZGVV74nYU$!q zj%HBViZygoastBWEyW>8N=^+KamcA+)sVqIoGNy#2UX9iazWYWvaQEdH%?HnEJ6qQ z4Y5yl!cC=o{0Q{SeWXDhZ8$?3_0DnY=kvq2t-`7#Cc9pN<$r~O+Wr|yk|J0+&X!N6 z0;swe7Hkb0h-$DKd>nwIe2d`~P)$gka{#0XOzdwa-N)buva(kI@c07r$0;xt0 zci`gjhoX|J73;Y5`$eU-$_Dj`Aqd&MYH%B}(_>Qol6qr!&mXE+Op?fP|0|+%H^SVP{N(vsftO=J z-v!tQe9idi_XARLB{>Ji$6&BDK^1gh9k3jZ)llVA#t2$*q)}SG6Tv`#KLo)jwe~ox z_H;t8;=5s2tgR)BB9srq=!PVDG-WIaQ);y^DHb4DuwKv)FM=^?w$Y+A@dbvoWJvXx zZ3c`IozWyy-dMvlrqL27A%krZE$9GUq zqD^t*YcxS`eTX1;G*aw+)siXz7KKq-(9j&BYDye-(^;&vvKL&&8F~1+oK8OTZ>p%w zoSj3V2(z=`q#MBeWoMcTU3R`P4amtSZ%o;FwYVFGxLS$ql(C2H_($tovOK~#QeJGX-YBb_gS*0^*$g@X;`JYS+ ztYAb_B|T%&1=4Ducm$NJScZSm$W#7XX0MgRc@(+9VmtgV+_Fm14~ueAFED9bv_?9B ziNY$;DUMwo_~8)!ZFSK}*2fYBqQOt49<_?e%8AW;eI5+TOp_?4U|Bo_8>N?sU&LwQSNTJ9h7S0YWG*@y9b z7m9Yx89o$=LVk|t#N-*9?Kp8BqLIElc`0~QT+7;%I4U~O%qlO4nOMGP$F9xYp7Vy! zZk%^!4c;al>x&HBog)=AJnwv<4iGO{CsRC~2jVF2VWG!LP3n!>p zRR-o0Pt68=o4E9nxtce4EK@A|ignFAr<|h-7FNhE9m5eY4tqgo><{BU>j$h@e4UJY zPGL)9yA++_E5(;T26wOdKDZ;hyizKb7Q>w2Ve!UZkoi~>JQU8D+4_T^O)wW}f`w2f z>yXOBm*D=`5`AznMLLX?-BcW&&1fD1Gkp+6Ba6+{0lbfnJFP~o{*L0Be!@2oQmLvP z9K5O3e{An~VrKNy+&kPCMMAZs3x8QS)Qpg(USVZsAv?BdDx`-S?9_^2#xBG$z#`>v z5Hl-`feckyL_07wXTJ`Md47}GY_D7_rXr^)K>F!(NBmm+Tl{MgLtDDNLg1=6k&R?Y zdgq+o1G`+pC9-sFtg%=#6Q5=vjCGlRbQDPksZNDwv7)i?0~4jHNjv`V4X=^(zwJDTFmU3M29C9D%c%LBZ2Hu+aID>vU?qH5rH#YrZAZ)bfU2tA&D>ySIr27^H9<7| zJ8>07y^FiR%&v?ck`ZP$MW9jAys|!LPbFkxzr(&#lfll4&QG}#zf?vTcaF`KeJAI6(NrTNsuLlM)AU2>AAXEAlsM`50lg*KPRhH3LwG4;! zDGH*`{#w1$JU*Ix@@rA*O_}sP%VeVzm+^I-e>yABAf3=vD!S`QOU_j;xa+BS#$we} zSJFM}#4v(1d5xciD2`0`u{)V_u*5SMVMS5nY;vk@5)MI4qD;a80N{-wMDYv^krmuB z`Ixc1|Nrst|BJr=e~AOQIsU)5HeakK-~YEapD*A4zs4VXepAa_6vd4%@%vUgY03(HD zhDS!Nd=FnoStWoRAn|LldX5Gvh!z9vL+oyZHr&!*k#bvtrhnc5STnXtxt#V{34lDV z-~({Bo`mgD#+aQ>Y$Xc}#dH(1oo6H_V;?o`12?p#xK;+V;^NLT+5_yR%=IzmT286% zT-@2p0Uo)b(Y6GGXo?mmH8EgK2(~+6J&3^XUXvRR%Mlm)P*Z-l*egWJod8bGHCo=L z6(eM8RT#Lh_I=*G>p@b8FeVMbe+WCluaddScgrjv=%O2d00$9AkaN-%yeNIOR z$0G%ku~YfjlB-~JAIK|Bsxx{NGpk`>Xd?p;tNOcNKGu_8_UnnZoe#A5%c}czSsm zqM;z|Cyq*)R0aGifksIup|-?28AW~^UeN_P*UcmDb@XQWR}ldIMyMf}=(I0B`mlFc zlTn(_!j5PMfpJe)sZ?8y+TLNKLgTuZ-s<<3-s)dHuidJ*DW0R$QR{lgZ~o0mi9D}) zR6jTcrWTUdnic$CrMef6J?{uDHTwtQl$}#>rqQ~s<8+g+D*WYJGU>G4z{yK6a z?=Hj^X%AQoB`!*Ejp4qYp+TV~iu>a0R_-an@R;Q3l7GlcF-ZT!hG?AAN?66iRHC@r@6mBzdA z=8uM8CU$H(!+X6!^wh!>7@Wgdnx^`yYs*GY{r&zPh2NrIx-zhof4sK#9=LKCb}`~y z|NS-7IGuBSi*o6>@Ip@Euch3BXcMORkc<6qJHtl?W47qvSe!t1{?)a_8!8|`PCrzA zvHsD#f0b=s3~-{EzwWOH!u6&c91BPuK>B^Jh=w zd)O9F>GLl!hh}-6oY6Bq*4PBDC_r69>y{z+dNU1gfBhb#uQ6_92m#+h3IkTOt()emwEyzZvSz} z+Vvbsf!fV%SC`Ow;mkmN)=2kA@r@F8G}^sMlcGV)M35d+F#qkv!Ejj zeKRPa_h|rEn`Pij?w0*X7?Gf*bnvicZDd2w%3Bz;k3nTbc};r@c4lY9%+*=f#^%cA zv##;$;NI+(Zww5bipk;ai*c+4%C6TM2M35;Eri>KwMP!({v0PyfQ-T76~I*Mw_(K^ z%VnVv<|%nXfd*L?I_%>^^C>?jl^Cf$e(=PFdh4dF5U>Ae4CD3ndRM$`Va%1Qb#_Op zSne0pUHd#3MU`8-ThqkteH!o4v$|%F$GSmEg&-iOHG1aQ>enW28`UhPXZUT6*UZhD z$^LM-aZB#)9T4!&%l?+{xzvB;z;Q1#A@~n&2Fz*Db(YfGXMvDxz4xmY^^+Kk1=Tu& z5P!wbMgTr>$s}bkkKxeRs>3m|gV=motC{!=tvK$BP$suj$zjcEInhBYOv8_0g)S#s z?$W~_-%0GAqob(-elx7u>oR?WU7|+&6i)8?h={W~#(&fh62N)nqC?=EamUfG#TcWV zZdbxO0|b~sh_&`Ug@80Q`X^htV#TK9v0mU*$bDZ+0^hQ`tQFJ!ey;~AaLDj16KQ@; z4^$45jW^#)et*;EZ1Xg^SmyfhJeOl8^JhIRg2CA6Yq-&z?6#@h{MeS;6S-G~x6Lt~ zC!LqueshMq3itTrdYMbpGyUn%@KE7YH{vHeHo%mvUfxN|U=OfT25N?L=vF3o=!nLK zWDr(rG1LB2K)HeQ)w@Uvmff=MWcMsj<9LU9;4BJ5k;V-u=3DjIH5(v{yi@es>v?ex z-v~)2f_znDfyR5?=SMFGRTNT$*$qlLsNth9jYZE@{=1H3HKD17)H?X9+?)`Qz7d(7 z3+ekb`A(L3{QD;u(=Vp!&d)XZPFPJx@)9vnh!m=}@vv}Po z0J1I&9(WtuD{yvbLxZh(mBSL}x}*$I5#_NAbU5SO;n&7K=i;-yx>guzy;eEkhvx+j z(xK(4{DJiCz3(3YAgYAia$*Q&ZtJ2_1E3eb6(aYkQt|1dwY_B^&y^J7>(0v_dvNW? zvLt-|bz?bhl0(3{R?9IzeYNO)OAW33SN`{c*mqwkXGAaw0mDGVl30R+RP}+>Y_!Q)DCp7dh38|{rBL^`^n76$zgrWIQ$~qFL2kgJe=DGAOT&zxl>!z zgqmo0YT-)L+l?fxQ{7I%tysC`&I!T>Rld0={HsQlgeZqI2JR=+@*1fk6}sn>CeJ$a zNTe^7w(5tr1bg+XhLVf*5wXJT1CDDxtz~8_CdM7^rqKNt2zW{5MS~2t)(r!? z`CiOLLEEv;EO@w0Nuc=8(_nclGgjo&CQuS7qy#TuoP8!x{w!LT_1=bXuxX2Tk|&O^ZAZQjdjpu3S)X z06l(-ft2|WA*vj<%idKE9=Cq5U9YNZ;W z4rR8Qr{&Ap_**{BA$)t^lFC1y&?Pnw!OzA`iIkr6|wlO(fuFY3hvYF4{W$PTw9RwO@krv!py zZy8>K2MHrO4U^_&o}q78RZg}ep56lv25H*brI8#a7?jJzPHWxIekKgAJpfKQ;tN`5 zJGMZk@;=Ef@FzkxuRST)(&+a5MmW|yGcju*@=vPwJNVZw=Oj*FC;pgUn6jD$T-PVO4k`X=Gmsq9MA0r?nfS}|0nmH-LV6iATD z9I){O5e8A>vrHvi4zRTguHG;kP2(3P7Fr$B{gtdYeW^aW<1Dagq){sY`X0ec?pg)S z@A&{AWcwW{|1)T#S+nHbwf|WB2N$~z>iDYT%My46MA*XsGa2y-g;(=n&qfELf~mQDoIMHa#81AsnHnTfrZ=sQcn8WP?r$ zhQ#g3mM1Q|%}5g?Y4sZNJ05b>Xa^a#r0v49g6pLEi?<84H@sQ8Nb3Q6Vm*lPoW5%N zrjQ`1R3$|q6#wQsMRNx$IAWl>qBTuQsShrFR$y%-Ru=mt`SD*3m4)l* zWGiwzdc$34svy zTmF!NDz*SrTkerUiEy4d@t>MKBtAqM+H9i=v5jteaVofVkPv8wR{$t}JNz~w!cCy- z34uh-Zd`|-e(way&S-5HEZfkrP}gUv*@tSD7OgL%a>K(*B3GL#E@WZNBjh$(DSziO`hjry8pj@n>Wc9}1qUzedvh*bTV(jE2{+Qs9cz z0(O=*p3E9Wh+AVQqp@**w^(R1?Il<+$m>skc~6i6-dylXA0P7?j`%GTD~R!@IhOd( zcErBE{^h-dy{Tu`!zH}D%!-Uphe)-QqR-V|1TnP!4&wZ{{WjLOh#{#dc)AErrVbRw zO9T&~r&%-+$z`&3PU5A=pwGwoGw?Z#EIWpyxB>b13Xv08uO)<98kmEQ(HpqlTPQFB z%GcE!4BU5bPn_&xfO>gyq&6xR|Ne z6Q_?B_XWT|Jxt%Ig}&h+WQdS+)vz_-5l%T=?WWA<;^&x*`T7O(1V360n8i;7;F~HG z8Tees867|5*(i=nVU`0wbDqEHSNGaBT8azT5hD*NTjc42+;PYq5=;`P#L7Tmog8n# z%r~@r0MoLi82;`RF@0ASFg_vBNUFJCMMQnPyT$(mL>5M(Vb_B3S{@`-K#@ltP*Ezl zrMGJ6yl&i?CB#>N8IhvJ)()L<-2sBc1CG}N6aFNqONcCVhxFsOVUYl{(jUn`$}9;_nr@J<*%x^%+9r{`d4RC!(S z8slWfc#91V8E!*HyCqV)@Pt5NvM|vrT@O$7CB{Xx0v2JD*?Pr4qm*GHjBFm;xA6oo zzW0nnuO*ZJ0QEC~$FEz&Y1;aE$cAryf$v7y@4S^f+Zy|xHILBeUTyl+=ic6=uU zz4vEB-{*K<58F_$?1zW)c2i!@5AIc<0Ud+$Hz|yie+5^$M;7x{+Nz;-7a3uL0ka`ng~JKi{$WINvaq zfLZs8BYL^_g(BNz?aYAaMZOqD!~1RI8hFG z6R!iTuHBh8e7ABY(6a&nMBgNv-@72?)?b7#z5Dlg@&NC{_2-inh#SB)I`(Xfo{i$? zDEe&bH-FEBzUvb(fTz}A7p5zS@o@D8bL+Ukx}J(QU2dQTe-sIm#}k}QMQHe1QjABf zNrr^gz>lki7V}32x>; z=*9FVIY**L)G;(5EJHzIIEN2Uy>d159Z}*QZK*5=PqO$c15}Z^mR-Zgqc~t}QuqOk zwZ14m%pg9J4prXT4rl^VTdwxlJ$N8~m{?$DpIdMXzo@a$qAKy=c~tpyww?7(U^GtL zPz-xq#miSEmX9w7i~^`Vk?dId&w^gH-e*W+{w^$`dk_Zl%>&*{@)pLqf6JyAeND@J z5QF7l;wck_o2x#uErr<qE3`bYaZp{T@U+{0Q*fle$9rkgfAd)kJ)uh zlL_Fjz$=9f-#Jk!tT(1)7hS5*gp27tWrM?Wiy@?D<-;Enc3qgod5p8ShNT)8T1O=% ziqn-ILY)cn!gIvPFKd?WvoPHuYzzEx?Xi>ASQ7CYTHaBs!el-dOv3HxK_~?lSX_8! zTQSg1HMdZ>lrRf=+G_zzu==JUvcn@)3~P>idLg2u1(xlmYz>jZ>b69$=12j~fi?-; z#BNwS$zu$-#{{dewuNtuRU9}OsCyI0m(1&T!D`Pnu@u4ko)r+fvS6;iw^=#vh07k= z*4M!P#9X(Tw)1>Dw*m=bntU4UaXUt=V5>Y}JH_?p!W=v3VKHi7xIQa8EC`u7d7{@A z@>lHK4&(O3u#PS?Sp5AZ=xAyMo;N5#-iwHk(;HdAp=r7cH_g}pKWIb(>8oXUYx{b`8bW@gtq=ERxets?tN!?nQb^pZH^0kQ1st5#^3qaU zjAgxQ<-rZ|GNP40x*q@4v#wyNxn-kPV4rcx&Tob{8&ge0n9GLQ)hbSJuH>WJ+Y{h`cG%U=p zu~o=+{p`=`ybn@GyVx+NZo$(W3ky$}%8=(~)Dd1Q=ODC>`XOKSS)B1{T2)V%*y^(j|KNC2xWiE|5+Jc`+aQZbj4E|>hb?zxEk5I+kJK1^yP(TswVweXCCe9|KOR+iV z_m2@(g}$OR0!MbK{mK=9()}d6P%jVs!&yJuiT8Tvzzx&}rFlyQrtH-}A4Db9JZRPE zq!dI~+9*xFDe6vtX8vL_vuwV?Xz_=Q6kj8id3b}g@705 zXT_X3nJR%~GO#p4_9bu#cQz0?%PI^>l%?{6c@QA@XO=OjGP^cd~T-aWmI0tRGL8{3S;Qv4?;O zMWWn-oD$Fv1zIRlq%7va%@?G7ZG~up#?RP4#Q3ES8oo&RX*ZQ`8YfV05EY(cAG>!` zM^A4@e)y|RU&BgA>Jb{nEkdS0l~DycA}MPXx;P4z`qJisEnsre1QsLY#sWGd$`z?bas?51sZ^B=h%R@M23qC=AIA4^t~ z-fHt^pr(~u_sg<(oKk9haP_`vqUtcRHCMe84ERrOgB7O!myvI{tJ%;4c+eOl<>J6IQ+a3hKFlbSUa8k0kK=y3qpvmEGADy9&4YW z%S)>OK(Z)x+kiKC567Fufgd04fcrND()kx-Cuc^X)Q@Rc%mdyXjK5Zb1y|Y6>ELK& z(vrcrdD?BNViEVr6oH9pl!=+zp5ubNGj(mtxiekIviTUj>I^Xm{E}nI@T743%~)Li zlqOv;BPz=qckgxhL~f+j4&=@zBb<`khEV zz4d!aYu8!qM}Hb6K{s9c{K_V?l)hAZaU_IDcU3t^2^+4IG<^noSC5@|dTz{49Ctcu zCzkshHy7Oj#g{u4gh~{!Y!B)k*X5tn?oXW8$1SA%DenyF@drD=OjK*)EAIgm1MraL zar`w%{rR(1C7Jyp-u?#)vfzS^tFoY~Qkpz*wMp*@Ny0!{F+Hj9d-&;~l!<-d6tVe1 z4)B?6b`+Sp3ePv96QgJ(VB77;r!B(ns{NR<8Vl^gci{B5|6tuD4z3l}=L*=p;6L=6 z^vv4JJlZGamg&5T`^V!p>VG+gh1?Rw#(!xak&WTpci*yEx2`IiYHnC;Laq0*LPCzu z4inpKS9g64^;x$5O;!%E98L9X;<_JS-u@o_!@1o)b}ct@b+^8VS0KGgeG&fTjr2Hs z70ok0R{7igFDFJH>&U2jNlMM`Wy~yj$*n5+9*55v-X0Wp>6`0vSCiw>BF~AhpNT3U@XhtPOua;Y=ts0W=3f3MtGr|&d9;7|M>Q{EHT z<@U2mb_d6-jEN{X_iw6-&FCOUbZ6+0Wh=pn?{bUru9~!Vh7@jbTw*F67cANdp{i<+ zSe7uU^21HKsM~+=Qwo#C_0ZLYIWf=DZ5D!(SVMorKJ^eJnkVP?5b*K^$0wQ)H zP7q{hlmUMKjE@{15@U|!4<5fRs!|e;w)F6rMAUFCLj$U-beh#%8VzY)k%=J3>}kX%Ye& z6CRby<0DJ{QQ)U}6Dlke3SMq+oqV&0CoL&+R5sw0!F%YuiNX%41JXwnHbGKa(e~G` zBb~;fr&!pW}h++~Pc zV#^yfwzQ+;*}=a|)&5d~Le$mCVjJ`!h$@@OZx!4+Kd)fN6(G#9zeZb8quwWj<_=R0 z5q5-yt2*!KZD_fGfh)cUMb#Z&$V;7rO@TTiA&x7!<%I0uDmni_SQ>DmvZQ6dS$aK! zcToQoZ#Nz5gNOv=FDFT@S%F)?io0(k><>QaWH%K43n!;lFy(wrX-1rRoTokZzMNRnV;;a7Wprjm@2e;>N;)`;iR9j?@@2rl=v9`hJEEg^)Jce7YoY5fQsV-4={JEWUNcnkVjrUWTPR`zv{RDD0d#nElb&u= zpfGizst7n$P^v7f@HIC$3pT~z)XYlEA3Lqhp57R&1XL1MS116 ztV(-Rw|iBP8XmF6Q?NqDO|j(zI!rqtrFVSscBFsRDbQb_HC#k+MXjmE{?O^@Mx|9) z*N*p@;mG_o{`)~VB8r1Z40k1A@^r%({&j%m_~x7?e`kI%ZW+Tt^d^RB>7k5wK&F0R zrFlAnFL&U)4f)+gw+p7UST0T!sB7f7oLDY3)}SF<+ns7osUz<#D9MBL^m0q8>eNrK zaGyh>Df7DR<_LhTcZCck3RtNZ3SkQOCR?)x@y-FOv@C^t*$B19Mf{~P-OEkIMc=k; zkKFir6!A(nj}pjxrnXCkrmqpbk^NlB$r*-{gNwf1hVmmYf6avW`#fLdSX?X`DP36|sajpL7_nk|dVt-?Y+=0K#)cdaa=5A7;RU24a$aQAv&mT<&69qvRKEzF^zexh|N-u#*I zQITIy;O&h{V^iX;{I*NJHGxvyX^HE8f4I#Ny+BX(T8Kw~ae0Do?Nw6B)WlfOs$-RU z)Nj-aW>7oMvI!qwZiK6xP7HU{siDoBWFG|sYlKY|tli}02es`*n|z7WlBP!HTv36q z{et27OyqJkHFpC$^83W1W6g4%v_WB12UHjoPb%*WBc#M&Xy&f~zTID5m&QdHywi+Qa!DS+?+x7ej1&cjb^gIVGV~QOkH913kyI{(9{_)-;8-Q zqH=j;N2zS_4!6#^k~>e8+^3ycIj=@Sd&thZlx9?#7;brc$#J(Tx>GS@)xJJMdhqO& z%e1kIV%fZ)^-mpTmi970<1(K(`t)npu}5j^F#T`?L6ii?6g)bw)W-{~+sIO{S5eCBNaM3q*CmXS)&At^ zm|s=)^hni~dxDHPHRs=ThE#f@3n|rK(qITlQr4tOAN?v-9N1jEA9yLT^IHb3L`-Os zb2$<-jHS@fx##kQ)+qz%{M8f>5bX;3R9Ut2L&c4yZg2E(D>Dj^4fF(+x8rY2RZX3b zaTI#WTGhlTnjvOZX9(Z$Oxuj$lk8d2cTCk{CY_OW*`rSWwSl0yv;9qsMVb{1HW>VbSw`bL7cW z&MAU!2%fCfb43LG+c{&{5!~C|1Y!jwDp!_Ao8dq`7?08cXOh8m%)s%x7CZYo-r7Fi zg79IFf`Z9(7i&;=^obb!5275_tVX(}$E`#!F2R|AI9FtzpFV)?4s0i^84)PA+pnDb z@uQ2+qMk*-Da#~9;u1DPN828C>ZtH2!%E6`LrJc*Q3BV&0<-7%9RN(rQFqI%f}|2VCK zrR2siGVO}&3-mncQ_$Fe7iQxP#~3TPeiqTC-fzaqBTs9Dxna(u2Ci|iZ6!q?HqfjN zxByR7uuK(8jRc?)To>_6Lxs(t+Nj#WH=)*$wE!u&4Ituj$QN8(P0aKTWN2RKTTPmy z$msZ+6lQa-<$QGlb34Y_$XVv#9mzo0iP$ml1!QbkB)o#yKpzl7T$ucMbw3Utn}xLC zS{Ma>bx06*+^k`t*aqXHaU)t!lCRipVh*DfGWoeG5vV1fy)48WJGcn8 zOvKX`$&^^47z>qPsQaoNhW=&_f`5e+dX?4vpr~>;<&Qf2WL)pn^r~+=`Q7zQ$5|ro;um; zKFXAu_T4v7RUr&({fVxNggkXfhV>UxdX$&uxGxoDZskWrDj;EXg};;f*E6jsK=X7m zVg)O}q>gaToo63?NTdZ^9AU%dJ;l(aqgZVnVKbji98fY|iKQ)Dh(rZ5BzQpV6O?d1 zU|R~M8R`(7Ha+M>)AaVGBKtaNK+FN#E11U&*bd{dBaWI1Q+*A;$hM*Jpq~fR5Lq9Q z$~oZ9=yTfraO5GcVA+NpfT9LJG2iBWmze2!;~Ias@2#$$lBTpq0`Zjj!^`nYQvopP z`FS%KvjlG_4oB6dlQiE@c_V&le2N_)0T@QZ7<4c%hJv{f4e9mgzi)zrv|(38Nk}<0 zOs=0y*BbA&p$|#*4q>jr_?D;f$}4ab-=GHnnqOw*uyv2Ce0!CdU9HB8l8yU)N<7oQ zZQN0O`TPs`O1{N;xhfT!@h5U~o6BP(Byz~R9@pjfV6piFF=K24Jd6F>_t%@uA6ZE* zSA3#T5?exzL5AXCe5YSl(5bco}==aR`T8BrWnkC5=+ym18a z(fT28YOMGPt20^(L9TPwhutvEbVm{{e-Oh|H;zOVSGl(Wsm|Q@Xp}j%Z3A036c(Kk zLSjDWrI*g3CvrJ{HQ@LT6w?BpU;|!P<`V6{Dv|yfIN(nM)Lk-g5NM!YhUi7kAzCpc zB9$c>+;@sesJl`=ASJdF-BHqby9t^q`KDj)dATcYf->vA~P#OvB~ zl9*xs)6U9d54y>cVczYsbdh%L(L#2mN&-!QT>rBuraRuwH!H5va~7pKy}B-&WTaKT@HSf?oz-gJUaMi>*en{jtfy%8=y^>e6>Bp z^MQwuhuJn|3p=sonZ>_3X+yzjrordPGQhN&^Y{W9+s7AYzXTqmSK?GDISn*z-H_~| ztj-8lVpDet+j~q|X6VG#@%{FdZk}!+>1dTgLXr3} zJusHV)c}SMB)SE4`RnV~zHc^pGR)q~QX`|BA^8=G>f-E95P zR>4}IX#kgrJlCD^u5bKdiSHjO?kY!yi{1KIbW#=M_jb$fRb6E@B*YTass+}172|_e z`9k}ffc&WuJEM3Dthy8#lEg4*@QVjU?}0k(TV_0w#fo7y4tGmrVf115@}%{TGabXi7q;KuNojS(qE(V{tvI-^ zuBEi%Sjv!O5d$}irYn*0I_sOYvLEtGN941`$QBUeM{UqG8p}+Njyood+b@5Wg&)04 zj$In_&lA=uEM_0&uWyU9H!A67+U2eH-Xec@io0e6WF|q5njs>ew(ldNqUtD{sv23F zs;lo;v_{%@9M#En?39%5VGPzKe5LR9-rpKUGFkE~2=lfDR$_@Ifvrhxe&~Tqt6hfy zRX>o@L#?NUl|nr+R>!0#uV6mWK*bp+7uQllrE7^ZUWS^f{3@}$;YXgu9l2q2oUBhl zKgTer9P^|PA5W7oj)=gC{}{{AW~c>cnMPH85uCytRJIGAip#ccGm%zX=FHLcT?W6V zVaTzB`c$rU(~N6vw;=lH8?3|eF?Ev^97WPKk3Hiu7BQnkA$D@K*@-X4%GDJrhs%T$ zuU}w->iBU3@mhyx#Zhf=M+K#USDhN#%X(`|4Kr6%%4jOZfMf#%wi6~5axyLItJv+3 zsTI@`(iil7!jfM!MuM!Nq;Iz>V_hASo;J%>wo@-J@4-JW($oPJcp zbVdNo{@)z(`-gvumSkkpC5}c&@6YQ^vOHM2m+^sSJp0~i;d)_+aq%lY&f@&`Akz{S z7sQm>Y^2!2y(wg?bEa3Ss$m|QIL^?s%2g6Zn#V(`<}wO;%OqsyJR`+CVA)X;>(`8U zzI=jCmXSRQ6O+rU^GN2SFWyHd54`>lo7h&-?B6&wxiT7wG_*+YGGbVVAkC#aa0TPixe=q!Mqd{)0Nm$BSp{wC~XN*kY`Q7)o+Q_x4RXU`BE6P;3 zlIB&meox4cr9?;D6v^s2ebqU9X8nQuz5XUH8oRYa!f0|7HW(2?5b#T(W1?i3Ldch; zO{@3M(CTqo_U8um*yy?EnNeT^UUx#b_$@*b#}#-gmO2ELr9=mLdRZoqBjm@BHKi+I|J8a#(>2u-U9Cp?#+rRMMrG;|||O4Qon`^OHo}_vHAL zF^EllOTUK4eJ8Knl7kmCvZ>0OQHBu+;;Ky02+Zh7c_dhtm=2{{0Whg5(lg`nqDs=tF zkc0c;gd6fyW9r#Bv1i8BqiR?ZQaYZBTV5C+&xJc{q`-ScWd(+d6=y$QTc8+ho@E%l z6WYawOnaR2(+0_v*a&NX*R$PAFJUK9aC9X99 zEvmky6Si&rG5XFj%r0c7RU7n)5PB^&jk zl&=)DLxSi`L1up9$e_&2G21S7URJ|ArzolY3-Y|_PS=QXsyh2t^V;@JpG9|*_%(iK%)4HXclpuPP(XSb{r8^i%WVLe5KV$ zF$nD}f7BmDQAq{N;VH>wnxC+BYEzR-lZ=|!$$9kvv4EApQt$7qjH zbH4PM@Wqj-x>oljwF%E#>!2f6`jOlggeBZ*`Nv8(M?0E>{5+3CwK+%8A`Xqzwv&7j zN&Ai-mtB!NSSV>;vvTQ%KW><@fl(RouDp}daF){z9CBXvl$GS}bX5^33?IOi7x4Ld z0;{7Ag*1FVwFa0~dT+#*=cN-Id-mVymO)Tl?!$!$XRy957(vbA2_|<-EUjk~u zrbscv8=(vL$Cwcz%UQoLVJksBuU9*gGN#G#XgFSTfBU97;z|Gq;T}`e<}tZJ_Z%uz z^^O*dF$?{r3G#~)lTpkyZ`-L+e>tD|#f}du+sn3qm9v}rw#)ri6|9>z67jF!D^ZckA%Xx%%5CJB?*@S-+7rH!5ny30{bTpJ8MUi{0VAC7;?9Has>F79eJ6@ z;=+rHQldjjrdvYO9cx+2lBLY%FTH-h%yS`<&cv@h9S3r?S&12x1@cWx!oo{p#{@2n zbD|-QNg%j$lS}qQr+9kn789~-uY>uuyf$?Pk_G%7Nq5{sgS{|erW9oaf;m22eMLYc zzK)#B47%cYa|~0IEg6EuX;t;UQioo=;AK}3p<76;)b(%eeSclA*0GUZ_Ws8B!+r@o z#=?z=+le&9F7J6F*>F@cUS!Hd$0YtRY8AV#3_MvxL?gSw`?!XBGS{R#1MF+AaOijbyX$i7DzdGiDPV^O3h;kKFarrf5f)ztt6*bg; zD-3-Dd7;AxiEDs{O^%2Yiv&k^ieyyXnkh%3R>5+laDq+JXe)J4Us;1tI*`)+GLw7y z3aq6v>*!@F>iH%5y2{)3%@h52kQNMSJSdxF(r(i_p^;MB;fkNSW3+&IMw}B3M|6hZ zz?3;QDS+bR%%L`psTX9O)9+-SDBZBzOl$jVl?Jj6$$9C)0i4Jf>38)oL94h*d z{^%JflfdVMpPQ#OS-WU0a2>}cw|q>^KSN7n>NsX_A*+881ZNA|9H56c%!k3*YyDJrO?AOA3mi+T155GcA2tB|khT%|qj z<{!ED*7(1Wq68z9I#K2e>-skg%uNpKhb>@E-!gdGsUOLdYjRm1CcR^)CvlWJ&`^_{ zM1hz)q&BE7hifIs99C*p?bPTJT0$o{8r)Q@3E1J9?3bv8$gKV&%`xnJM;jM<$y8~* zPvnLuhR8JQ$qb}%BURncj}nq68dZ;n^_=C<`#gZaQdNvvzxh&|=(nvWiw68TvA^o~qMQ#xMMz(+KJ5g;vf zyEqEgFu*SGh|{JdYx#mCfvP)mGS!DJYL|&0dF?lod%AJn!L;LPXvOEN_MzW0Ogo$Q zPuvM1D6BwjfY7^MGa1AO52`QHx#hdGcs9OW`}4lba!Wilb?df!|r#LSlVF$3lVzz^|wK_hE z1MPxucQ(0305f*l$db_&I=FP@1*6Py%lwDzt)I*Eipd&CXr5_XMq(frJZr)l;!Eg@ zO&qzgg)ItX`h>5+QW1o{mx*)2nDg%-*kZ!88BYgyNyf)(L0ib^9>niEr24fa>BR1t z6N{6BmBSntj(!-vkXZwp(;SzF^)y!TnrWSdgaZR>4n`?5CYCJqIxC4ypxE6s31r z=W<8aQSYoKq}*Q|O@b~jtY8yy5@DOBDJaq&G?rleyL-%EHbH{g?5KBl z$!lx^VmdXYYL@+nKZN6l+8*{v&3xbR&+a24t!jH1e^lj7UjP1D8oBriy&99_X)JYt zPG|(mBzO4Br51Dv$MMnGIU`SlBm+-0@k|xi1JTd*47@1dGsJ{<#Q?`^=K(VgRsWjR z=$V9ESpcV)9I1q?{<6gp^UMANEFFG zLS)638J2Qw@e!p9O4{tLb@Lo}1!iw-ie5#kg-8!d?=ZXC8rn+$$KV})E!Bd*#5dh* zcizQKCnAhJdPzS?K{^4&)#=|ZEbAfw|6YsIcCIsCiSM(?4L?Xa)Qsr|x({Q+%9S-k z=d}TmanqtmL7}1NnAou|{Daa-9dKEV(RHhHV*lS~Iw<#q(x%|@NnKcM*#6#?8s8I% z%ywNa3x|=3^#vlEdFru%Fs1=P4q&;x2WoNdLWv+x=Pc|;iEENfkA=gaYBKZypQ|#} zxm@lkCyR^D%z6f#XA85^6B-YQIUNu~gy8WIm_>zO5O#{uD$H&g#k^(Qu{W_FyvxR? zq&R?5F!e1LLV6CUx39DuE%(4;;)03{2bc>uTMbEyym^3-vN&SPNhW?W%1>sX&OiQ( z8va3)2auj^=hUq7@rQ4K>J6avyUiOH!a6JEY2s!1>*YfgZt$~02XHL?ZNQsrZx8e8 z?(Ay~13<&xoITTj-SqkX9R7WKV%L{okHKnAYQ2VByI_QhLbKPis>6;rO4z=5@ zwOcn{OMC$`B$vsqb~DD;|D%UCKG+MJC;4Oa3UURy>WlQq_y|o3Xa9Jh z9Re}quS0|ALOUZxyt_CRW#Hm6S@P9+4@m#tJ3re`bMAQ)C-GhHAJ>s!5;u-1FIMzl zi;9Jt(Ed7Xg@i@IM^~J~?u-8`klu$G`(Fa-fsvK>7LPdSylbQeU=mc+=D2FHwLr%{Z0UDYpL9i?EPZ)8^J6d#w-l{*9zG@gT zMU&%jQmo^|3nXF=-DTXvn#}Gp{vMFp_B@fV8)30T^fyDxYvj8`9{0sRV6y=Hn4&nt zIGw3C6!{U4fAocMf;%$;CNJasci}XjVLEAp^OO|l9a6`xCJ=cb*z)2<7BW2yN&itz zQ*@wU{T6~cQEQ>Ak7=(`-YRdibOow!M$d? zeo$*3wngpWK)kQDTD7B2v(Xmso1J%})p%QL?TOB@=)7yTMf-Ta14SCJOOEOXr+dw# zw^$9qH4je?nvFdh!tuU1Y_#g{;IsCodC=_qENVx4V!zorYP8!3LmVB8#!ro-j%dHb z=DAM@?oC4+G;41T8e;#r1=W5Q?UP2mSv$aLd(Bp(-Vu;dKR#+V{{0jnK$h669oF7r z!(2mtBDnYOYMu5mG}VG3wecMRdcNN}J`@MXZR+W18%DKP>(sFJN$VJT30-{uuF-i1 zm7uFN_Qo#PgiJ#EW6Wl?K2+t}#wX$NZ` z6HKBV$45sED#TL`)v+_wjYbPbe^?{P`|c8`Wjt0fg5@D6i7Ff$*JD7Ey$Vnm6dd8M z!6WVrh}AI0jWr#3LS7ev2fh^N=6&Vex%XE{LRQgDg~G#be+uW{%d?G*>Y0C2ZIf|y z<@)u*v%Ds*SDUOQV7=LzVvmyQkkAw-+KXSC-TI*yKlnR>w2m^ZcyJp$0D1&uN5)~O z_krSL1fx+0uGxixj7uqgLaDtcu$nBn#=j*j{e%BJ%ex#Ge`CJcLKwq`OXwyK>cL$t z7|S-^&_^9knQ^KT2GVdVkqcWfYSDvF(g))zf+MSB zYDcHLUx~oU{I{MF^lkMA1r7sNAR*^J_bU_J_Z~V-fvunxQGTd@(NztK%sdq)wJzP` zb7}iSMo9r?#s1sK>hC6kBYA-{f$9U6nI*l20?nQWv!_QU{vNpZh1z4Zctmiv$jBflVWw- zs&1vfv$~wWfvCFW%aJz%2I4SjSbgA+3Iz0vt&)O^N0T1r%LkB}>6Y0wW6M!e0o@UwBgAzAeS7 za`@@Ag@yz(WSe>C;c*^nd+1V`@z5%oN?4raj5*YfLtz#mIk2S+K5-@enOu$75#;3} zm=;maLNFk8u@&j7VAo7E%$s&~W8D+PHv{RnTU~s{DW<9<0eqy`6u=X=GVetC$4AO1 ze?jiutXw$IH^dq%i|C_Cc|u@C56iu6z%I6~ZS^%ve@+>2$_O)P>yPYvgogiP;Pp|Q zP`11#h^ULlh5>CHF07OkFsWieUI@agE4Xu^7Ty~j%f8G!z6Hv13&tLe(AAfO)(#HTF8JDPj3)Aioksf$6qHS6eJYqKZw0 z8i`}u_6?yfhm)I#T))Yn)%NkJd&Zt5%2t3y^MaHeCS8iFNM{4m6(rf8bewDrRYu+h zOa?rjjA6=+n&!wy^GyYdtFTk$+1qgxu~bPyOC~g0c8nEdUo1NnG z0f6wa^R^sLnV_1G@w$eTq)j3VN#VR2M{u=9v|!yCT;45QUME&L>;e;MTq^FQ1r|p} z-cgV&U)M7H)TP>YthIm>r~GhBHK-L!Yo}CEkgV;fmST*=Gu9!gRPLoa^b6~fV-Jre z?wOi6>XN;`ePw@RJ?u(P7@Sd(crgk3eG3mrmPBi0Tw=)%_LT#4djkZ@Etr(rXzXR< zAJRBv!lw7J?xw>ZF)?tGECM8vdR?qoQ&lP(%*}jpmWD?bYFL)?a#E}qW!iaI@SoEV z#mid2M$>ztp%9C~B*j-o@)9dz$}Fe0)MOm^tf`Ix!G;PFMW9uU9}l~MX-}c04z1%!O9~m1yaY(?L|88hi=|Hw zgLC!_%^`odvw*fGHv(2`OUJskGMoknMgz|80w z-8NFvFz9AeV0lA`<*Qqg<%44c84Ntfu`_&HDq~IFE6Q7!icq`4eKURHIV|z6NOsH6 zC1coywAsXN$k_bO-p|(IOA~-zfX>ovl51Dx3CX1gyc=Zealkf0sogCJUp5s>^#~`F zNT3A@SrR7cKo$wvevn%+mXts#%S#8y_yU1I=m}*=kCIUM&Slz(ELl@HxvomCOdg=j zELO+#kcu}Dc8Y#K1WQSwE<(i1*bobQ`+%6JK zln6B|Y+sVGB3)(K1qwz<;r%lSM@Sh*7|Cf&?tkrS)~Sux>5BaHyvK0KlOdfDZP6jQ z_>p+4MCJSR*))Rk$51+x?*(U*I?|^?p-{wsi*|;TkU*CF<>boi3*^dQPOcP&Az1$9 z!`e_U~8oC%V%)}4^BeAz{!^b6X1#*R=`|T8UIGRGy`E+60QaJ!= zeY&Wo<(GDCoye=kzctR;h-w~O?D|%6L7@kI8N9{7>h!uLS^*r&J$gMv`3*<>L=_#N zfvo+<$XwV zZUOO+sW~b65bJgXEVQz(qHye3ZPm4_;+joV?gVZIs_F_111FB^v7{D?WBCL063atC z#T;oTt(qW{0IMMBdQubO5S4X8S=M!d$`xc9bcCy>YJJL=$$l-|UBpM>BdDsce3PxL zUee@6KTyn2=q>H4(x^^enBj10X33;I@}h-Zz#+ZU=Gdy6Vly;)Q?3#cTD=BH_T;!G zXY)$iHaIg!Y$@iW_Ycy*8@fFPhdas3ksE#FYVs6)FqRMA=>I<-H zZf_Ssw$JMHe7w8|SYxrGEXb%(!v4!Vow8-wf_Oi(AC9Gr$TO31dLxZ1#0)zb+G)(w z@jnl9|6ff1f8Y-vP5*ymd;P_8)c@apvGM%*){8Aj+S+{ae5wEcHU7T)wJ0WDrSnb{ z^>P(_XsfafU;8NJmWaQPcTSRp6}?LP9qGh*Mo9VV z8p~=f$I(EF1_zjl@)H#mEFrTcFzvfxG>XGGp>Ej3DzG`asBP$GS+)nSJx|KeUZH3J zUmgOf@xr}c!AG7l_at$}D2qy^0{aa+!Pl90VKByha_80IX1=!en)MywhjBfLrT6Fw ze1ucsSu=o=P?YGSS^;UZE0c$`ErSxCl6T73(-UPmHRkt56ptxa89+|11Go>zQc{iY zzDNwbn8-1jBMeYcIOy#p{BFo+LKXqv*h`=tYIx=$pM#-cV4QIj%P2U*NjTPTu(pg( zjC~U5qU_GY*HM<*@mqmXtR_lX@w`r^a6fDG3R9F@XVQe0vRuz`Kw>%OySO7!wA9B? zRuTzi4AQ&sq~67b9fgPClr=;-H_~Mi=^P00UcPpD3H=SJxKXA@2opI&$|2K%GgxWG zBV%wsTN6WST1dGxKk#YC*Fv5(Xm^f4V->wD>>6tkH^7C&Bi0Zxt$AAGgDg%|*bTq$ zn6M|*KKj0T7#_%rji=s#C@blJN+CSGgy`oe`5pniy$Xh~_xc_^J|U#$cW`i_H3BI$ zkfa^%4^1+iiE)nT#Ztap^}-%L1y0#p_Mqae;6N_|*e9s0&$9uUQibK(w&&4%hfR6V zofYo!mXyKAo)wBjX?rLEJ!->TD#eX>3Zv~JAqnEL{VwEjAzq=&2)8^;;|@^cwm0!F zR;nej>-FCV_5T$QNo$p8QWceqt5S&(YCNHW_|Esgqk}m0Xf=LLF4OtyBngw^Hz*Xnfz_e<~r8V@_ z8fx)t&YBpZdIt7xdbW7Es&ztBgKh*2 zuQCk8Hj&5^Hu6-`oEWk$y$T#;Tj4A>*k9(vuW}iBm3ZV;T5a*n`+|rQmOJq;3OGS0 z@aM*xa6Q1>Gu%XG90>0o(I!NGunBL`U=zZLH37@g;N<~S_##*6GuHWYJjQ>a!+0V6 z#m^qzgLz?|G5Gtt&;DZX*-*@)H^Zi8#^?Ck)?Y=#TztY7}e*Usc|FGWu zUCE|2g92}HPqJdBI}L9UN3!;m&Jb;Wo`1y|(|a!;nP1=@Qz^oKj(1Eeymsy@+#L6q z!g$B@w0BH<&KK}#H+lq`wz#iA;kpX+7IhUU@;n848J+^?&dBfX#%#u1F6yk#R#x-w z>#I&AUDbK_aaAXBJk@!Nc&eLyB7BiEsjuKjYR1Cd%Tw7*=Jg(q$^`o<^Adi_>`6BK zehaV6q2l!qPEeeO9x2ACrS}2(NtRiLL%$dN=M-)}fjmT|)0PSv&aq1c)~Rj^f8bFJ zGM0Kt9rO&pDN;ANA4MOiF}6pL`nH~ma&3tNja1RdzQWiTB>1txb)?6a>~tk59Frsy zs-Iw7SyB&$GjNI}(YlEpKT0nxq)s1@ERI(x82DiyrAOqTK{}SfsbtH2LuHIdl(P8s zvYB#2^6O>Go9!m0>{&iiqB%ZN*g;Aq%RNfUH438a^8NqM{{Fwv``^izIRKmU{`c(J zvlsgP?*+gAZLDuC-~ay9{=ZIg9Dt3(kEkua^Z>T>0Jii1w)6nD^Z>T>0Jii1_J{NU zc9QJ^>|~}7uoG7;$5qLB91Z3JaV(>)lc`fpbl`tkdiP(`6iTYR7h{zK2QK6K~0c;g2_;BDU=W3WdukO3e=GN1OoPu&A{O zLPNzaU9nK;!smIH4NeM-*;Z~$2|7Q!^@7$dQw6j73C-_%nRh{L3v-)ODLp09xmCd^ z6YQEqjbZ1PSDDEdm~7nh6jclo$7fAadolNiPP71;t z`2P`&HB2o?lix%6)@D0DD->2y4a3?p1u2oUKx=_pp#7dFz0?&HL#|sJ__tDGkKC^V zk1Vv#rG;r~&d%vsJw0KpuCeQ>28b6rAE62nZgH6kEYl_gKAvRxfK4niMKrw!n zJ(rKN=Q27}x_~rw@d|J2kOQoJ9GqWu)i;Lmv_5Uz$V|SplhHDkKU2i2K%q4B?8{Nu zMm{PLO?Xtf#C}<1OIy3yY-GKK?cJN~rn_Z#)3!L>M>WBjM`vsBStpN|CSbL4@T`Hvt^7>OzRg%#lqpa?WQ(U7)sgyB6q(sBz6Mb8IP4pmRsH`NEQ;DfX zMy)q*<$zOFjLzRV+2LnYHfxyO>Z}E=LBZGokgks(=-S|X79hCP=gw6R^Rgy*KRIlB zmDXNc&Wti9TC20Yb(?iz*ko-Mls5}PxyXW2*Gi1REGYKbn*pW8nq)IU=tDYl36v6K zJPU+3dlaz(Kl1G|}xUx(}bvJfyen(u+D{DxWh5W1m z*=$-CO##%+pxdd9c%DbVTT0(^9uDRb^A@I`Ft0abBo3>XbtVwgI3JG7TxR1n3~Dx7 zBPW_&bsi}g=Fot{i1;gDPw8!J24>`Nx-((cx|0P#GH;v#tbuIu+xo1rDNZ_z*aA~M zyRu}vXC7T}z%h^oPOmwzP+xmNSQk04P=9;&nB;9BhsD#xD6hJ?FJ$4GjF@**9x{iP z3Hz7fZ>3Cv*q__FzJz2Wx(@6*3)!vPO-b8s{^9Qb3%&n#D&5C>{}s<(Y-}6*&rOW~ zw6(tdZ2A8Cr+fc(9)Qm$z&lmC&Lgn4DC0*JdV{5h4fHd8C-_R1dI$Cj2r3xkTL+Mp z0lvWg+q6%nsq1B7KN>FID0AN^lM;L21kxt7XZ`RZojSwjmhb9tpNKQ^u7iF*qYeM2 z`X;)i7Xd2=s9g1Np9>147pS<{cmA-~58(b#237)(f3&qMk7FGuPruP$b4kJ8K#f!J zZ1p)R<$HxZU*l4F_c4NgE;v4^#(1;qbx{TFd?Kt8yR#Im$MLRm(G#L1Q%0X>r@BVo z%_BS~Kf1sCCSGwQ#-fQL!_Q&oN5`Fa&7-%)a%S$k=G%7%@V`z@{^`-Y62~WvqnxaE zr`9=b7rnwK90$3{yj&?RFwegZix>e?)c|flyA|3|!o0urpcG7Xf(x*!xt@q*MF()A z9pq;PGqln<5mfqHjP2yiJ2uY=zvThK#&_Hfs|dhZ#d)toh420re}@$~)+YR|U{$G0 z{^}L`ru-kGi2oMFjxf0x1RU8Du@Z_`VtrSH;-yGV6r?_VT4JP8{rFo?a0gw*`Cr1{ zWYkYoB1{6pzO0voUaM#rWX!P+<(b$yj}*dl00-cTKfdag;XfZWwF#Ar+i=KkEm?N1H&WlNl1 zsEx0%Lj23d`fn-HA+?!*`Q8wVcQCj+aTMH$p96o)ySNjHpQ9=Nh99WXKM4DGoKS-m z+#iSNp@0)k0#t;;Q9m`-suJT%RDx_P znOw-eD}`>O&mF?Pd!ffbI@XE*ILWNt&M;xV$XA7l$h%U+NiUX*XT~!J2hv?HKQT*z zmCsPY9cFliW_bO#vNWwN%ZV-RCd+J48P}Gy>8CZi)oC^^$SuQn924q07;%N!!lwxwpRXL zu0gHW(;_krrEJ;2mlG65MMTERGK{k91;FM}9Rdm*MA2x)3d_D>6D=YbM5(;bx&JSC z|N9~bKy&VY8=ISS|66~y@#4kvXWMxH+j{&`OgdoK&snS8zUJc9~_5)!qedchuh$nr$HjA4iFWShOE zT#j4L;?=p2&ec6>^+zyCwHQ5zSZ>yn^vpN|mmEUM@&~%HC9O(MJMWHLe;TWjCIA2R z`2Sh-ztyPi9X7t4#>}Dro9pWv7X3&0-^TWfrTxcO`Qyt+FB}6pMsVqHBy@FKMwe}& zVJs+ood)zd>;qe$Yp+p8_gHL0N=6ad_YqXR8j=~{5JN1XyA`B1@eb_K!YVhfP4}`Q zeds73RK9N9o7q0YXgFFPLmtSmbi$vLBEHIaP=#o~mQB|S7`|_^!XcFK>OjBQ7P4&3 z7dd5<%Iq;4$)ip?)?ab_C_qoU5yl@f&JoJCFEhIgRoCQ&d&Nd(vP01*AhmX&(9y+z zkavicphDvnVnEU;r6aE#jzv>AT-NAyO+q{dAS)%FqbxsRc!Z(%xB-UCgMRUy6uXUA z5H(6R;=CKtc?JC%^R<=zdrg9#Yv8$JFAvq1-cHK4D2S z`lpH zs29d~u*1B$N52G;2qD7IR3M`FI+~hFk%29ZM>6saNNxcU-Z&VbL%@o+l>huo%YT+9 h;PP+zx4i!^@BhpD|MLF-uXq3d{{egA`^W&`5dhSlUk?BP literal 0 HcmV?d00001 diff --git a/release/base/doc/manual-3.5.ps.gz b/release/base/doc/manual-3.5.ps.gz new file mode 100644 index 0000000000000000000000000000000000000000..9271170f144486b0ece4f4dbf55f65c117688914 GIT binary patch literal 244067 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%0DD`mOQz614>uA(oD@!`%NUA2l^N`9VBxY%BEYWz| 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

^gU8 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 z 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

lV1FrlT8@BV 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 literal 0 HcmV?d00001 diff --git a/release/base/etc/ardomains.cf b/release/base/etc/ardomains.cf new file mode 100644 index 0000000..c33f9f3 --- /dev/null +++ b/release/base/etc/ardomains.cf @@ -0,0 +1,18 @@ +# +westeurope1 de:ie:pt:es:uk:at:fr:it:be:nl +westeurope2 ch:cy:gr:li:lu:tr +westeurope westeurope1:westeurope2 Western Europe +easteurope bg:cs:cz:hr:hu:pl:ro:sk:si Eastern Europe +scandinavia no:dk:se:fi:ee:is Scandinavia +europe westeurope:easteurope:scandinavia Europe +usa edu:com:mil:gov:us:org:net United States +northamerica usa:ca:mx North America +southamerica ar:bo:br:cl:co:cr:cu:ec:pe:ve South American +centralamerica sv:gt:hn Central America +asia kr:hk:sg:jp:cn:my:tw:in Asia +mideast eg:.il:kw:sa Middle East +africa za Africa +anzac au:nz OZ & New Zealand +world1 europe:scandinavia:northamerica +world2 centralamerica:southamerica:mideast:africa:anzac:as +world world1:world2 The World diff --git a/release/base/etc/arretdefs.cf b/release/base/etc/arretdefs.cf new file mode 100644 index 0000000..fdb8490 --- /dev/null +++ b/release/base/etc/arretdefs.cf @@ -0,0 +1,3 @@ +anonftp:unix_bsd:image:.Z:anonymous:::-R:*?:ls-lR +anonftp:novell:image:.Z:anonymous:::-R:*?:ls-lR +anonftp:vms_std:image:.Z:anonymous:::[...]:*?:ls-lR diff --git a/release/base/etc/arretrieve.cf b/release/base/etc/arretrieve.cf new file mode 100644 index 0000000..5545b79 --- /dev/null +++ b/release/base/etc/arretrieve.cf @@ -0,0 +1,2 @@ +localhost anonftp * 0 rw 1d 19940124155459 0 +localhost webindex * 10 rw 1 19940816041633 0 diff --git a/release/base/etc/arupdate.cf b/release/base/etc/arupdate.cf new file mode 100644 index 0000000..4f1cc3d --- /dev/null +++ b/release/base/etc/arupdate.cf @@ -0,0 +1,3 @@ +archie.bunyip.com anonftp * 10 rw 0 19941228054741 0 +archie.bunyip.com gopherindex * 5 rw 0 19950105211457 0 + diff --git a/release/base/etc/catalogs.cf b/release/base/etc/catalogs.cf new file mode 100644 index 0000000..907116c --- /dev/null +++ b/release/base/etc/catalogs.cf @@ -0,0 +1,7 @@ +# +#database type access method location +# name +# +anonftp archie anonftp anonftp_db +gopherindex archie gopherindex gopherindex_db + diff --git a/release/base/etc/domain.order b/release/base/etc/domain.order new file mode 100644 index 0000000..cd89905 --- /dev/null +++ b/release/base/etc/domain.order @@ -0,0 +1,4 @@ +# +# Colon separated list of domains... example: ca:edu +# + diff --git a/release/base/etc/email.help b/release/base/etc/email.help new file mode 100644 index 0000000..d97bbf3 --- /dev/null +++ b/release/base/etc/email.help @@ -0,0 +1,366 @@ + Archie Email Help (Version 3.2) + +HELP for this archie email server, as of 11 April, 1994. + +To perform an archie search via email, send mail to + + archie@ + +where is the name of an archie host, some of which are listed +below. + +The "Subject:" header in mail sent to archie is treated as part of the +message body. + +Command lines begin in the first column. All lines that do not match a valid +commands are ignored. + +Empty messages are treated as "help" requests (this file). If no command +in a particular message can be recognized, the message is treated as +"empty" and this file will be returned. + +The current (and complete) list of archie servers can be found with the +"servers" command (described below). A sample list is: + + archie.au 139.130.4.6 Australia + archie.edvz.uni-linz.ac.at 140.78.3.8 Austria + archie.univie.ac.at 131.130.1.23 Austria + archie.cs.mcgill.ca 132.206.51.250 Canada + archie.uqam.ca 132.208.250.10 Canada + archie.funet.fi 128.214.6.102 Finland + archie.univ-rennes1.fr 129.20.128.38 France + archie.th-darmstadt.de 130.83.128.118 Germany + archie.ac.il 132.65.16.18 Israel + archie.unipi.it 131.114.21.10 Italy + archie.wide.ad.jp 133.4.3.6 Japan + archie.hama.nm.kr 128.134.1.1 Korea + archie.sogang.ac.kr 163.239.1.11 Korea + archie.uninett.no 128.39.2.20 Norway + archie.rediris.es 130.206.1.2 Spain + archie.luth.se 130.240.12.30 Sweden + archie.switch.ch 130.59.1.40 Switzerland + archie.nctuccca.edu.tw Taiwan + archie.ncu.edu.tw 192.83.166.12 Taiwan + archie.doc.ic.ac.uk 146.169.11.3 United Kingdom + archie.hensa.ac.uk 129.12.21.25 United Kingdom + archie.unl.edu 129.93.1.14 USA (NE) + archie.internic.net 198.49.45.10 USA (NJ) + archie.rutgers.edu 128.6.18.15 USA (NJ) + archie.ans.net 147.225.1.10 USA (NY) + archie.sura.net 128.167.254.179 USA (MD) + + +If you do not get mail back within 1 day or so, try using the "path" +command described below. + + +Mail destined for the ADMINISTRATION of individual servers should be +addressed to: + + archie-admin@ + +where is one of the hosts listed above. If you are having +a problem with a particular server, try sending mail to its administrator +first before contacting the general archie contact address below. They +may already be aware of the problem. + +To request the ADDITION or DELETION of a site from the archie database, +send mail to: + + archie-admin@bunyip.com + + +To contact the IMPLEMENTORS of archie, send mail to: + + archie-group@bunyip.com + + +For your information anonymous FTP may be performed through the mail by +various ftp-mail servers. Send a message with the word 'help' in it to: + +For BITNET/EARN sites ONLY: + + bitftp@pucc.princeton.edu + +or (general access): + + ftpmail@decwrl.dec.com + +for an explanations on how to use them. + +Under version 3.2 the email client implements all the non-interactive +commands and variables of the telnet client. However, interactive +commands like "pager" are not supported as they don't make much sense in +the email environment. + +For a complete explanation of the the archie system use the "manpage" +command to request a copy of the manual page, what follows is a short +summary of the valid email commands and variables. + +NOTE: The "site" command of earlier versions of archie has been disabled + under version 3.2 until it can be reimplemented with the new + architecture of the system. + +"Quick and dirty" summary +------------------------- + +For those of you who want to get something done now and read the rest of +this later, send the email to an archie server with the line: + + find + +(where is the name of the file you are looking for). You should get +a message back with results of your search. If you want to be a bit more +sophisticated, read on.... + + +Commands +-------- +In the commands that follow, parameters between '[' and ']' are optional. +The ellipsis ("...") signifies that the previous parameter can be repeated +multiple times. A '|' character means "or". + + +help [ [[ ] ...]] + + The "help" command by itself produces this message. + + An optional topic and subtopic(s) may also be given. A + list of words is considered to be one topic, not a list + of individual topics. Thus, + + help set maxhits + + requests help on the subtopic 'maxhits' of topic 'set', + not on two separate topics. + + +find This command produces a list of files matching the pattern + . The may be interpreted as a simple + substring, a case sensitive substring, an exact string or + a regular expression, depending on the value of the + variable search. + +prog This is identical to "find" and is included for backward + compatibility with older versions of the system. + + +list [ ] + + Produce a list of sites whose contents are contained in + the archie database. With no argument all the sites are + listed. If given, the argument is interpreted + as a regular expression (see the archie manual page for + an explanation of regular expressons) against which to + match site names: only those names matching are printed. + The format of the output can be selected through the + output_format variable (described below). + + Note that the numerical (IP) address associated with a + site name is valid at the time the site was last updated + in the archie database, but may have changed subsequently. + +mail
Mail the results generated up until this command to +
. This must be a vaid email address. + +manpage [ roff | ascii ] + + Return the archie manual page. The optional arguments + specify the format of the returned document. "roff" + specifies UNIX troff (or nroff) format, while ascii + specifies plain, preformatted ASCII output. With no + arguments it defaults to ascii. + +motd Re-display the "message of the day", which is normally + printed at the start of the returned message. + +path
Set the return email address to
. This overrides + the default path which the system automatically generates + by looking at the incoming mail header. This is actually + an alias for "set mailto
" (see "Variables" + below), and is included for backwards compatability. + +servers Display a list of all publicly accessible archie servers + worldwide. The names of the hosts, their IP addresses and + geographical locations are listed. IP addresses were valid + at the time that this document was last updated. + +domains Give a list of the archie pseudo-domains that the archie + server supports. See the manual page for an explanation + of archie pseudo-domains. + +set + + Set the specified to . See "Variables" + below. + +show [ ...] + + Without any parameters, display the status of all the + user-settable variables, including such information as + its type (boolean, numeric, string), whether or not it is + set and its current value (if its type requires a + value). Otherwise show the status of each of the + specified arguments. Useful for finding out what the + default settings at a server are. + +unset + Unset the specified . The subsequent value of + the variable is defined on a -specific basis. + +version + Print the current version of the email interface. + +whatis + + Search the Software Description Database for the given + substring, ignoring case. This database consists of + names and short descriptions of many software packages, + documents (like RFCs and educational material), and data + files stored on the Internet. + + Note that this database is currently maintained by hand + and is certain to be outdated (the net changes on a daily + basis). + +Variables +--------- + +The archie email system has 3 types of variables. + +1) Numeric +---------- + +Numeric variables may have preset internal ranges in which the value of +the variable must lie. + + +maxhits Allow the "find" command to generate at most the + specified number of matches (hits) (permissible range: + 0-1000). Default 100. + +maxhitspm Maximum number of files (hits) per filename located in + the find command. See the manual page for more + information. Range 0-1000. Default 100. + +maxmatch Maximum number of filenames to return with the find + command. This is NOT the same as maxhits which limits the + total number of files returned. See the manual page for + more information. Range 0-1000. Default 100. + +max_split_size Approximate maximum size, in bytes, of a file to be mailed + to the user. Any output larger than this limit will be + split in pieces of about this size. This can be set by + the user in the range 1024 to ~2Gb with a default of + 51200 bytes. Some mail gateways will not allow results of + over 100Kb and so care should be taken when setting this + limit. + +2) String +--------- + +String variables may have a predefined range of values. + + +compress The kind of data compression the user can specify when + mailing back output. Currently allowed values are + "none" and "compress" (standard UNIX compress program) + with a default of "none" + +encode The type of post-compression encoding the user can + specify when mailing back output. Currently allowed + values are "none" and "uuencode", with a default + of "none". Note that this variable is ignored unless + compression is enabled (via the compress variable). + +language Allows the user to specify the language in which the + help, etc. is presented. Individual servers may be + configured for a range of languages. + +mailto A valid address to mail the results back to. This overrides + the address automatically generated by the archie system + from the incoming mail header. Setting this variable is + equivalent to using the "path" command. + +match_domain Restrict the returned files to sites in the + colon-separated list of domains and pseudo-domains. See + the manual page for further information. + +match_path Restrict the files returned in the 'find' command to + contain the colon-separated list of pathname components. + See the manual page for further information. + +output_format Affects the way the output of "find" and "list" is + displayed. User settable, with valid values of "machine" + (machine readable format), "terse" and "verbose", with a + default of "verbose". + +search The type of search done by the "find" (or "prog") command. + The list of valid values is given below in order of + increasing search times. The given search string may + match a directory or filename in the database. + + exact String has to match exactly (including case) + subcase Substring match. Case sensitive. + sub Substring match. Case insensitive. + regex Regular expression (see ed(1)) search. + Case sensitive. The archie manual page + gives examples of regular expressions. + + + There are also compound searches made up of combinations + of the above search methods in sequence: + + exact_sub Try "exact". If no matches found use + "sub". + exact_subcase Try "exact". If no matches found use + "subcase" + exact_regex Try "exact". If no matches found use + regex. + + + Note: unless specifically anchored to the beginning + (with ^) or end (with $) of a line, regular expressions + (effectively) have ``.*'' prepended and appended to them. + For example, it is not necessary to type + + find .*xnlock.* + + because + + find xnlock + + In this instance, the regex match is equivalent a simple + substring match which should be used instead. + +server The archie/Prospero server to which the email interface + connects when "find" or "list" commands are used. Usually + defaults to "localhost" on most archie systems. + +sortby Set the method of sorting to be applied to output from + the "find" command. + + The five permitted methods (and their associated reverse + orders) are: + + none Unsorted (default; no reverse order, though + 'rnone' is accepted) + + filename Sort files/directories by name, using lexical + order (reverse order: 'rfilename') + + hostname Sort on the archive hostname, in lexical order + (reverse order: 'rhostname') + + size Sort by size, largest files/directories first + (reverse order: 'rsize') + + time Sort by modification time, with the most recent + file/directory names first (reverse order: 'rtime') + + +3) Boolean +---------- + +Currently the email interface to the archie system has no variables of +type "boolean". diff --git a/release/base/etc/find_files.cf b/release/base/etc/find_files.cf new file mode 100644 index 0000000..38b3de2 --- /dev/null +++ b/release/base/etc/find_files.cf @@ -0,0 +1 @@ +readme [Rr][Ee][Aa][Dd][Mm.][EeMm][Ee]* diff --git a/release/base/etc/hm_db.cf b/release/base/etc/hm_db.cf new file mode 100644 index 0000000..748fa1e --- /dev/null +++ b/release/base/etc/hm_db.cf @@ -0,0 +1,5 @@ +anonftp {Filename,40,,W:User,15:Password,15,,W:Account,15:Path,30,,W} +gopherindex {Port,5,,W:Path,30,,W} +webindex {Port,5,,W:Path,30,,W} + + diff --git a/release/base/etc/inform_web b/release/base/etc/inform_web new file mode 100644 index 0000000..03f1881 --- /dev/null +++ b/release/base/etc/inform_web @@ -0,0 +1,29 @@ +Subject: Archie indexes your Web server + + Dear Web Administrator, + + Archie has started indexing your site for the collective use of + all Archie servers around the world. Indexing your site and all + other web sites is merely for archieving purposes. If you wish + at any time to stop having Archie index your web site then + please reply to this email or send email stating so at + archie-group@bunyip.com + + Archie complies to the ``robots.txt'' exclusion standard and + performs partial retrievals of only new material. + + If you have any questions regarding the procedure or any + inquiries about Archie, then please feel free to contact the Archie + team at the email address (archie-group@bunyip.com). + You can also browse our web site at + http://www.bunyip.com/products/archie + + We also would like to remind you that this message will only be + sent out once. So please save it for future references. + + + Archie Group + Bunyip Information Systems Inc + archie-goup@bunyip.com + + diff --git a/release/base/etc/manpage.ascii b/release/base/etc/manpage.ascii new file mode 100644 index 0000000..e86775f --- /dev/null +++ b/release/base/etc/manpage.ascii @@ -0,0 +1,1107 @@ + + + +ARCHIE(1L) MISC. REFERENCE MANUAL PAGES ARCHIE(1L) + + + +NAME + archie(tm) - Internet archive server listing service + +SYNOPSIS + archie + +DESCRIPTION + This manual page describes Version 3 of the archie system. + This Internet information service allows the user to query a + catalog containing a list of files which are available on + hosts connected to the Internet. Software located through + this service can be obtained by means of ftp(1); for hosts + with access to BITNET/NetNorth/EARN, it can be obtained by + electronic mail through the Princeton bitftp (1L) service. + Send mail to + + bitftp@pucc.princeton.edu + + Other Internet users who are not directly connected may use + the services of various ftp-by-mail servers including + + ftpmail@decwrl.dec.com + + Some archie systems track archive sites globally, others + only track the archive sites in their country, region or + continent in order to reduce the load on trans-oceanic + links. There are a number of archie hosts serving different + continental user communities. The servers command will list + the most up-to-date information on archie servers worldwide. + + archie.au Australia + archie.edvz.uni-linz.ac.at Austria + archie.univie.ac.at Austria + archie.uqam.ca Canada + archie.cs.mcgill.ca Canada + archie.funet.fi Finland + archie.univ-rennes1.fr France + archie.th-darmstadt.de Germany + archie.ac.il Israel + archie.unipi.it Italy + archie.wide.ad.jp Japan + archie.hana.nm.kr Korea + archie.sogang.ac.kr Korea + archie.uninett.no Norway + archie.rediris.es Spain + archie.luth.se Sweden + archie.switch.ch Switzerland + archie.ncu.edu.tw Taiwan + archie.doc.ic.ac.uk United Kingdom + archie.hensa.ac.uk United Kingdom + archie.unl.edu USA (NE) + archie.internic.net USA (NJ) + archie.rutgers.edu USA (NJ) + archie.ans.net USA (NY) + archie.sura.net USA (MD) + + archie can be accessed interactively, via electronic mail or + through archie client programs available widely on the + Internet. + + + Using the Interactive (telnet) Interface + In order to use the interactive system you should use the + following procedure: + + 1) telnet to the archie system closest to you. Do not use + ftp for this, it will not work. + + 2) Login as user archie no capitals, no password is + required. The system should print a banner message and + status report before presenting you with the command + prompt. Some newer operating systems will prompt for a + password. Just hit the return key and continue. + + 3) Type help for complete information on the system. + + For full details, refer to the section entitled ARCHIE COM- + MANDS which appears below. + + + Using the Electronic Mail Interface + In order to use the email interface, send requests to: + + archie@ + + where is one of the hosts listed above, or + one returned by the servers command. Send the word help in + a message to obtain a list of available commands and + features. This is a completely automated interface, acting + without human intervention. + + For full details, refer to the section entitled ARCHIE COM- + MANDS which appears below. + + Using the archie clients + The source code as well as machine executables for a variety + of archie client programs can be obtained via anonymous + ftp(1) from many of the archie server hosts listed above. + They are usually stored in the archie/clients or + pub/archie/clients directories. These clients communicate + via the Prospero + + distributed file system protocol with archie servers, which + perform the specified queries and return the results to the + user. Currently there are Unix and VMS command line, curses + and X window clients as well as Mac and PC Windows versions. + For more information on Prospero send your queries to info- + prospero-request@isi.edu + + + Communicating with the Database Administrators + Mail to archie administrators at a particular archie server + should be sent to the address + + archie-admin@ + + where is one of the hosts listed above. + + To send mail to the implementors of the archie system, + please send mail to + + archie-group@bunyip.com + + The archie server system is a product of Bunyip Information + Systems. + + Requests for additions to the set of hosts surveyed for the + catalog, modifications to the Software Description Catalog, + or other administrative matters, should be sent to: + + archie-admin@bunyip.com + +ARCHIE COMMANDS + In the archie system version 3 the telnet and email clients + accept a common set of commands. Additionally, there are + specialized commands specfic to the particular interfaces. + See THE INTERACTIVE INTERFACE and THE EMAIL INTERFACE sec- + tions below for a list of these commands. + + Note that some archie server sites may disable some of the + commands for reasons particular to their site. As well some + sites limit the number of concurrent interactive (telnet) + sessions to better utilize limited resources. + + Commands + Arguments to commands shown in square brackets '[]' are + optional; all others are mandatory. + + find + + prog + This command produces a list of files matching the pat- + tern . The may be interpreted as a + simple substring, a case sensitive substring, an exact + string or a regular expression, depending on the value + of the search variable. The output normally contains + such information as the file name that was matched, the + directory path leading to it, the site containing it + and the time at which that site was last updated. The + format of the output can be selected through the + output_format variable. The results are sorted accord- + ing to the value of the sortby variable, and are lim- + ited in number by the maxhits variable. + + prog is identical to find. It is included for backward + compatibility with older versions of the system. + + help [ [] ...] + Invokes the help system and presents help on the speci- + fied topic. A list of words is considered to be one + topic, not a list of individual topics. Thus, + + help set maxhits + + requests help on the subtopic maxhits of topic set, not + on two separate topics. After help is presented the + user is placed in the help system at the deepest level + containing subtopics. + + For example, after typing + + help set maxhits + + and being shown the information for that topic the user + is placed at the level set in the help hierarchy. + + list [] + Produce a list of sites whose contents are contained in + the archie catalog. With no argument all the sites are + listed. If given, the argument is interpreted + as a regular expression (See "REGULAR EXPRESSIONS" + below) against which to match site names: only those + names matching are printed. The format of the output + can be selected through the output_format variable. + + Note that the numerical (IP) address associated with a + site name was valid at the last time the site was + updated in the archie catalog but may have been changed + subsequently. Furthermore, the listed IP address is + the primary address as listed in the Domain Name System + (secondary addresses are not stored). + + Example: + + list + + lists all sites in the catalog, while + + list .de$ + + lists all German sites. + + mail
+ Mail the result of the last command that produced out- + put (eg. find, whatis, list) to
. This must be + a vaid email address. + + manpage [ roff | ascii ] + Display the archie manual page (this file). The + optional arguments specify the format of the returned + document. roff specifies UNIX troff(1) format while + ascii specifies plain, preformatted ASCII output. With + no arguments it defaults to ascii. + + domains + Asks the current server for the list of the archie + pseudo-domains that it supports. See the entry for the + match_domain variable below. This command takes no + arguments. + + Example: + + domains + + requests the list of pseudo-domains from the server. + The result looks (in part) something like this: + + africa Africa za + anzac OZ & New Zealand au:nz + asia Asia kr:hk:sg:jp:cn:my:tw:in + centralamerica Central America sv:gt:hn + easteurope Eastern Europe bg:hu:pl:cs:ro:si:hr + mideast Middle East eg:.il:kw:sa + northamerica North America usa:ca:mx + scandinavia Scandinavia no:dk:se:fi:ee:is + southamerica South American ar:bo:br:cl:co:cr:cu:ec:pe + usa United States edu:com:mil:gov:us + westeurope Western Europe westeurope1:westeurope2 + world The World world1:world2 + + + The first column gives the names of pseduo-domains sup- + ported by the server. The second gives the "natural + language" description of the pseudo-domain and the + third column is the actual definitions of those + domains. Thus here the "asia" domain is comprised of + the Domain Name System country codes for Korea ("kr"), + Hong Kong ("hk"), Singapore ("sg") etc. Pseudo-domains + may also be constructed from other pseudo-domains: thus + one component of the the "northamerica" domain is + itself constructed from the "usa" pseudo-domain. + + motd Re-display the "message of the day", which is normally + printed when the user initially logs on to the client + (in the case of the interactive interface) or at the + start of the returned message (in the email interface). + + servers + Display a list of all publicly accessible archie + servers worldwide. The names of the hosts, their IP + addresses and geographical locations are listed. + + set [] + Set the specified variable. Variables are used to con- + trol various aspects of the way archie operates; the + interpretation of arguments, the format of + output from various commands, etc. See the section + below on variables for a description of each one as + well as the entries for unset and show. + + show [ ...] + Without any argument, display the status of all the + user-settable variables, including such information as + its type (boolean, numeric, string), whether or not it + is set and its current value (if its type requires a + value). Otherwise show the status of each of the + specified arguments. + + Example: + + show maxhits + + site + This command is currently unimplemented under version 3 + of the archie system. + + unset variable + Remove any value associated with the specified vari- + able. This may cause counter-intuitive behavior in + some cases; for example, if maxhits is not defined by + the user, the find command will print the internal + default number of matches rather than an unlimited + number of matches. + + version + Print the current version of the client. + + whatis + Search the Software Description Catalog for the given + substring, ignoring case. This catalog consists of + names and short descriptions of many software packages, + documents (like RFCs and educational material), and + data files stored on the Internet. + + Example: + + whatis uucp + + in part gives as a result: + + findpath.sh UUCP Pathfinder + logfile-stats UUCP LOGFILE analyzer + mapstats UUCP map statistics pro- + gram + + Variable Types + The behavior of archie can be modified by certain variables, + the values of which may be changed using the set command, or + removed entirely by the unset command. There are three + variable types: + + boolean (Set or unset) + + numeric (Integer within a defined range) + + string (String of characters which may or may not be + restricted). + + If the value of a string variable should con- + tain leading or trailing spaces then it + should be quoted. Two ways of quoting text + are to surround it with a pair of double + quotes (`"'), or to precede individual char- + acters with a backslash (`\'). (A double + quote, or a backslash may itself be quoted by + preceding it by a backslash.) The resulting + value is that of the string with the quotes + stripped off. + + + Numeric Variables + maxhits + Allow the find command to generate at most the speci- + fied number of matches (permissible range: 0-1000; + default: 100). + + Example: + + set maxhits 100 + + halts prog after 100 matches have been found in total. + + maxhitspm + Across all the anonymous FTP archives on the Internet + (and even on one single anonymous FTP archive) many + files will have the same name. For example, if you + + + +Sun Release 4.1 Last change: 12 Apr 1994 7 + + + + + + +ARCHIE(1L) MISC. REFERENCE MANUAL PAGES ARCHIE(1L) + + + + search for a very common filename like "README" you can + get hundreds even thousands of matches. You can limit + the number of files with the same name through this + variable. For example, + + set maxhitspm 100 + + tells the system only 100 files with the same name. + Note that the overall maximum number of files returned + is still controlled with the 'maxhits' variable. + + maxmatch + This variable will limit the number filenames returned. + For example, if maxmatch is set to 2 and you perform a + substring search for the string "etc", and the catalog + contains filenames "etca", "betc" and "detc" only the + filenames "etca" and "betc" will be returned. However, + depending on the values of maxhitspm and maxhits you + will get back a number of actual files with those + names. Example: + + set maxmatch 20 + + + + max_split_size + Approximate maximum size, in bytes, of a file to be + mailed to the user. Any output larger than this will + be split in pieces of about this size. This can be set + by the user in the range 1024 to ~2Gb with a default of + 51200 bytes. + + String Variables + compress + The kind of data compression the user can specify when + mailing back output. Currently allowed values are none + and compress (standard UNIX compress(1),withadefaultof + + encode + The type of post-compression encoding the user can + specify when mailing back output. Currently allowed + values are none and uuencode, with a default of none. + Note that this variable is ignored unless compression + is enabled (via the compress) variable. + + language + Allows the user to specify the language in which the + help, etc. is presented. Currently the default value + is english. + + mailto + If the mail command is issued with no arguments, mail + the output of the last command to the address specified + by this string variable. Initially this variable is + unset. + + Example: + + set mailto user@frobozz.com + + Conventional Internet addressing styles are understood. + BITNET sites should use the convention: + + user@sitename.bitnet + + UUCP addresses can be specified as + + user@sitename.uucp + + match_domain + This variable allows users to restrict the scope of + their search based upon the Fully Qualified Domain + Names (FQDN) of the anonymous FTP sites being searched. + In this way, the user can specify a colon-separated + list of domain names to which all returned sites must + match. Each component in the list is taken as the + rightmost part of the FQDN. For example, + + set match_domain ca:internic.net:harvard.edu + + means that the names of all returned sites must end in + "ca" (Canada), "internic.net" (sites in the Internet + NIC) or "harvard.edu" (sites at Harvard University). + + While these are all real domain names, listing all pos- + sible combinations for say, the USA, would quickly + become tedious (and if you think that is bad, try list- + ing all the countries on the Internet in Europe). To + aid in this problem, the archie system has the concept + of pseudo-domains to allow users to use a shorthand + notation when using this facility. These pseudo-domains + are defined on a server-by-server basis and you can use + the domains command to query your current server for + its list of predefined pseudo-domains. + + A pseudo-domain is a list of real DNS domain names + and/or a list of other pseudo-domains. For example, the + archie administrator on the server could define the + pseudo-domain + + "usa" + + to be + + "edu:mil:com:gov:us" + + If this definition existed on the server, then you + could + + set match_domain usa + + which would be the same as saying + + set match_domain edu:mil:com:gov:us + + In addition, the server administrator may define + + "northamerica" + + to be + + "usa:ca:mx" + + meaning that "northamerica" is composed of the pseudo- + domain "usa" and the real domains "ca" (Canada) and + "mx" (Mexico). This process can be repeated for 20 lev- + els (more than sufficient for any naming scheme). By + using the domains command you can determine what + pseudo-domains your current server supports. + + match_path + Sometimes you only would like your search (using the + find command) to look for files or directories with a + certain set of names in their full path. + + For example, many anonymous FTP site administrators + will put software packages for the MacIntosh in a path + containing the name "mac" or "macintosh". Another exam- + ple is when a document exists in several formats and + you are only looking for the PostScript version. You + can guess that the file may end in ".ps" or it maybe in + a directory called "ps" or "PostScript". + + This is usually guesswork, but is is useful to have the + archie system only look for files or directories with + particular components in their path name. + + This variable allows you to do this. The arguments are + a colon-separated list of possible path name com- + ponents. In the last example above, saying + + set match_path ps:postscript + + will restrict the search only to match those files or + directories which have the strings "ps" or "postscript" + in their path. + + The comparison is always case-insensitive (regardless + of the value of the match variable) and there is a log- + ical OR connecting the components so that the above + statement says: "find only files which have 'ps' OR + 'postscript' in their path". If either component + matches then the condition is satisfied. + + output_format + Affects the way the output of find and list is + displayed. User settable, with valid values of machine + (machine readable format), terse and verbose, with a + default of verbose. + + search + The type of search done by the find (or prog) command. + User settable with a range of exact, regex, sub, sub- + case, exact_regex, exact_sub and exact_subcase with a + default of sub. (The exact_ types cause it to try + exact first, then fall back to type if no matches + are found). The values have the following meanings: + + exact + Exact match (the fastest method). A match occurs + if the file (or directory) name in the catalog + corresponds exactly to the user-given substring + (including case). + + For example, this type of search could be used to + locate all files called xlock.tar.Z + + regex + Allow user-specified (search) strings to take the + form of ed(1) regular expressions. + + Note: unless specifically anchored to the begin- + ning (with ^) or end (with $) of a line, ed(1) + regular expressions (effectively) have ``.*'' + prepended and appended to them. For example, it + is not necessary to type + + find .*xnlock.* + + because + + find xnlock + + suffices. In this instance, the regex match is + equivalent a simple substring match. Those unfam- + iliar with regular expressions should refer to the + section entitled REGULAR EXPRESSIONS which appears + below. + + sub Substring (case insensitive). A match occurs if + the file (or directory) name in the catalog con- + tains the user-given substring, without regard to + case. + + Example: + + The pattern: + + is + + matches any of the following: + + islington + this + poison + + subcase + Substring (case sensitive). As above, but taking + case as significant. + + Example: + + The pattern: + + TeX + + will match: + + LaTeX + + but neither of the following: + + Latex + TExTroff + + server + the Prospero server to which the client connects when + find or list commands are invoked. User settable, with + a default value of localhost. + + sortby + Set the method of sorting to be applied to output from + the find command. Typing the keyboard interrupt char- + acter (generally Cntl-C on UNIX hosts) aborts a search. + This will also dequeue the request from the server. + Unlike previous versions of the archie system, version + 3 does not allow partial results. The output phase may + be aborted by typing the abort character a second time. + The five permitted methods (and their associated + reverse orders) are: + + none Unsorted (default; no reverse order, though rnone + is accepted) + + filename + Sort files/directories by name, using lexical + order (reverse order: rfilename) + + hostname + Sort on the archive hostname, in lexical order + (reverse order: rhostname) + + size Sort by size, largest files/directories first + (reverse order: rsize) + + time Sort by modification time, with the most recent + file/directory names first (reverse order: rtime) + +THE INTERACTIVE (TELNET) INTERFACE + The interactive interface accepts the following commands and + variables in addtion to those listed above. + + Commands + stty [[

nG!3d)ofrInBJ?%Fx(Vs@8A|?UX-1*GK6JZX52^Zv%87CqILuh~lV%u(E zl9lFfq_TT!3GF~>(SXoiwWU51*e@j7Oo*wsKqUp@EMOUb+*4A$7TIVu6?%PaOR+r@ zJXr`>aV&aTb}mxH3BsXahk(;bOsD(%^KDCi`7(bdG_()Pq!lrkWR>@P51vJ((2)DEBPd}6ev&7rno21rz+e$Yn$g65YTN%^VgZLo|q0divGzZ;lXYjJiv z$?64+pgH^Tf62*yDjILGMuJk1ObmpySuUUuOZ_qsce{A-QJKqJ2UR<^FOx{HUf7X3 zXF-}E6oPH%J3p>cHgh)R$%vfK@UMd?e)y+zlefQ@FBQ@tNF05yr8)yQBxtuCZAUmh zYBink>4=R~vpj3( z*mBeQETi@w>CbNdUUz67q!5p@0LZ{IODrX0TQ7O~4W><h9-4W$@12Cd-mq-CzXJ^d<&4^V=Mn+y^T3c*uOo= z5%=s(NtP;E4v5O<37F6 zBvhgq`OBl5@NxjYsu?Djq#FTLLe&`7o>1w%B`on6b9hYzL?yf(FQ1;>c!VS?Vwyb0 z!P}gmv8A*_raG4&upLMt!wx4VnAb;L7Mw-&{$^I$Df z#Agu{U09=29G`2-l8vLUlWt$YAu1x+vc@s}J$_eZciQ*j;BU+$l{`p>dFKk5sA)P+ zHsmtb7vblFS5G35_$R2Igu*ct{d*dBSdIb;!@e0&11u+W*aZui^bsfu$UjA1+YY%i z(2iF}j9{09L`N(rGRzJcnSrEVT&yh&3KMyk#K+za8UHWfgaEU3BJz>^BHPWS^K7f5 zhUHhS_R@#3dON6k4dSs>w)}yGzu!O7gm}YpFzLOnY~XIt)s|^!Z2nnA8N1db1yY?Z z(ou)ukp*u!8u7(a$(wF9`1BYN761YVf&3JWIdTrsdaY;s!Xm zi`7b3A8f(E8X-RXqF*hwdd_tO41lK6|CN}Yvh(UQ$A(*I2Sdzi?C+l0*CW6F6lCp; zK+LtC13ZlAhT1H+?s1R;B~7>Nk(vc2cNxSP@-}MeN=@5D{t0?O?{&4=WkF->)l=lt zhZI8^Zp2HM1ioHD$xG|zduvT8B)iDv;<8>F<{tNfW0$dCmJo5iK92Qe2=sM96u-X^ zFYA-QXm(tkd7~exNG+T&0}nG_GYVh+7fcXb_=A`doo5l&BxniKJ$w9aW_(At=eN3` zsGI$lP*W!2l_xP-i*rwoOHBQHV58xpsrI*rH|*)UZBCJ#p3kuGL5DhwReh6=a*v|JM%$(zq5fm(OMMWV+Hb31JUj?4We%l9wf5>PWQrDhY$GvRQ z8WhJF&t4h}Q=BkMfj%mcgoBq@0E&UY`;mF8Ju2>MfTE;{M9z{Rv*6g5!sUlAlF`#5 zEt;P_V);Fe6wn64SZ`F};Q?k*--D~`tW>)W9%e(FNXL^J*4?F$JWl~#aPYx}QpK(> z-qZK3gOL>N<5tbwg_49iyYB%rQK*j>tF4^;Yg%_`3c-v;)^x*+!LX zd78WNq>g)LXLxRPni=wkq}U9eB9>bPo%m}4czgSEVXu!aF`c5Drh8)AZ0v5YTZHjC zoGIVF*4nosK91MC_5aZhbo0Cn?Ak(MfEo}6%R+32eE8}Cq3W#F<-LHNkXu-%sn`ND zR#&oNds*|~i7W)nSK(M#`VU>~SO6rEZ zk@0wBng^k4hK2V5fELXK3*z=qrTjeTZjBHpn+yxWj%Ol8F%|2Nl1f8{W+gF{Ae%f& z>J=lCMg1?sEyX{0SP(#-`rDb->>u}yw|@~3()#`z!9T3)zXNg?IPLw6gd&I3@Kr7;9%T3mMtdxL*_BjQWHz(AMYntN;R@ZGbi#A0Dk|ruUBk z62XO0+}C+L_IGnsueCP$RJ@Ob0lGjY8O+0!0!~R@J&Bx=2=!l&qC!_9zl^uSjv)`>2WK$-jh*b`6`^AG zIyRrVEW+JUtFF$@cENyl9@{!cfjz#qzX-yyK%aa(H8I^AI{S-dckO{Z-I`kh&q5YH zRyMIV1npZTm~vA~ukQtYGHSNCP1|%FzY)s@+kjxNQx|>XGW(_t`P{(@c0KGxm(P|C zZmsO$3EOHJ@|x*w-~P0D`Bm81s6DMr4RyIPlV@1QRaYlCI^)51ge&4#S^}9$K>#h^teT>_0Sr<_w^KGYCF2yv!m0TqgGyR<%ral z{mUM$lMAN*diSFBYaMu?eKUs)b=#-Y(#5Y&!eAGQ4$nWBw9XC;Bc`_>xr!A8R`MV4 z*HZ1bn#BLKYjFKz2WB{%75wK@mw)iZXK%ke1oANKL+L`0q1GI;42*;+_)pM2{Uy=~ zhcGLxqR@pO6%3!(lVJ;op?T2J_Y-3q^QlOc8Z(n*^a#Sdiiop50fv=+?e30*eJXS&$HtPX>MEwLf z%1NGpVS908``uk+yT74BXs}+}19{*vB=4?afe7}1^J9{Dzv-LxjEvO3Ot~V>TX)ZBmn1)1!L*y3i=d>UmLiU zGP#VL=3DsLAf>%;^W(BYkB?pu2P2)Vaqy=OS+cXIz*{)H3`Jt`>E+GWbB;_aIWja6 z5)>GSKM;$ra11Ew+`CqV3CeX=ya`Sd>R>1Atn3grmEJJSOku{D6_mYJ1sPT^5+a_r zK0kEfAO*z_8yFhL1Z>SR6Rc)dM$y1RGjQm+y%H{9i?Jv>l+|UgThx;f619`N)j#;~ zh6%Hi(T48?%PY&uu1#9Cm#Jq1)7h7txhn`17e|ss{@-n#8Fe?xzRf6(A(tnOgD|7C zMRy0WE7q#rON7TVA>wfmf={X^S%>_D@ThRK8gkX$uRyc?2T$=YAdOoxp+>mMWvE@> z&|)B*07WkscSy}=vO=ugbu>O)`_>Mx$Y($CO)!?}nGmBYg}~P!vI1jDaj58Q7ps6a;&SNhBHk-3nwx`re^S0z+`^ zQ2GEnQXIU!TAtSG?D)HI2vhn1NHHK~i72#jxW3@J^L6C>UQ41%@BCf}LkH9nbkQ_o zpg$GtG?+ns>MdsX&@Hp&!0uf(yX*pJ>eVPN6e3bH$S{pGo0MUOS~YM1#UjTdMBIpd zy~tznyL?wpBdt+V5(Z_sDiFduB3wPDU6mG#Rlyen$~ZgJkAqZL$5H?)Fe3s(gIK$9 zWIY{2t_CKd!UQZud(Og(ZahMa*GC)#l~w7*E7Gy% z*&>4;g;U_tosC<|*8Nq%iMCp-5VefCMB}6t*7by>qs%|;19r04ncBh*DW#$p1_CJj zf=8Amf&}eoue58WP-Q^e#165pFqo6CGMv?bsDB$-BFiOL<42!HNjQ&;dMzxkqwjx3 z(8N(pB2U%pHs$7p2p0LIJn{=C0r1$d^$~r&!?9w*=Ffyu-GfDp6}1i@`jCYy6_7cc zKAkJ ze-TYeW@wPHpc(EHB?a+lHz8;sgXu%L?W6VSxWmV!s*h;t zSz1IPMbHK)41#k=D}g(3GZ+X3DV9!CS5xDF;mT6))7oI6w3IYS%R_PBCd8cyf2OsX z67_=ou^!V)PsZotJ6JNB{IT$dUqK%aeF4w@}kF{U{^B%WE;$@C>jM@On z2Il084m`vUx#4JlwcQ2~izhxCo~fpt_k$N&t{Lr4YX@hKJ3LekGBv)nG%GGNJ%jj|rG`34W?G?>HDnKc zR8uDgS~W9YwKA{BXyeyQB`#5uM_v*thzkRht80*)Im!Wuon`|>j3h|hgo;~1y6W=% zp2ic5glzS<#E-vYDt;LXhU*++R?f-+%H-;Dnkfh>xg{q`nUb(2q^YoCHMfJLBN$KI z2$-IY>3Cb8#1_gejoh!nu^KsOE7yR?kITAM*6>!!#mHvML%fbS7?m7ITQZ_Dm=W~{ zFo`+Gc_{p!pXba@0|D77<>kovk^DH&AmPpENk`3>Ls`oU1?@R|bfoARHPAzzY+D0j zqz0yXTVMfNnP~kQ{8~*?gXRz+4`v7bdti#SZtp=69mnSG;)Lhx} zfl)lKfxTTzBUC1!u7kF_s%!hDLasgO^A!Y+p%@p!oT4da{q_UO=;_^EEK*+M9kl}& z$>jm3ansr+Z{}BG2rw=fsnRoJjZ(WbkWrOU9K=GDHi){PK)$n&exsvD;D8x=4F|m{ z>5DjIg+@9_9Ftbye2;OfI{w-k+zBJ4J%)^SyYj3I-THzHIP1)k)kHuDZVpcXCts?r zeliiYi9fk{))G@Sy8U1{f<3MxzTB;)MFBaJQCF8L)8B?oU`Gg66m(VG9~#G`8b1S= zp5*o}c)mv+BU&Tp90%8(1L?khni`wisMa_4&dt(p%r?z9&9DxGiJ7pD--DZxtb3Q( z_D@l5o)R1Uq?b9!uK$Vu1E-R^{u`>BZzr))y!IXTuc)_^|97OT$G-*sAOHVX7EI{u zf6MwG#b^mn|5M(-@>I60{vOnQefuX{vOOQ^<*oF8rr`O;Jske8Y=ZQAm#sUEH9BXl zeH+ClBMifgcDahKGi4pW7dKf?FR`7UqS`$r8u$t?bN&<7e)y7aIsFfClmGvK|K+=$ z_ly1IKN-HD7B>U$Y6vzS31O^RZ;7h*IV|$Y&@G6$KsaO#>C0hfvI(I~mO@0|^@;hM z3y=s00sU%4CMZxmrhi3+lcV@VI_{C)IpUL4@OTqs7hK{7_JkjdAPkczP=p(TvL$#I z-R+CDbc(Unaf&=5Ff(WDn=x0bC9o8gq2G&(m$;=eru}nMaxZnUOuLu5=$hIgp*uX& zFxAhpPYGMgdBfgUJ6Y7KqkITZNX!{D%4A8A-wl39ShNA`=*wXONfRYFm?hknUlLTB zi|y#m!}>mFC@{d$jsEq_E_zqu&O30TCCtk&ad;rw^fi*_-gEJF^3r?ZihfD&rVQrg zNs7o4yRccS|9SI@_P6|~UqF&9e6^uIfOjZ}u=3=538g**(2*m2_NRw9v^nvKwSU1{-)*~w}L4bWdjG8NZpR(jKq&8Yd0e)^zGOC8)UaE?Kiz%<@y5 zTy%!i&5?OIOO`K}7jx&2Zd^Ge@D#}EZ9pHaN<^i|Sppa!&!Cv%ysf^3Z2%gKd-#BP z7GP+ks!E+t`@>vi2`z@^J*KjYo13EqMU$#B)&;Y0)rqfoRLpj47&2;$BY*KWXyfe_JG@AO@heBScU@na@F^SGkRv zZIuV0$C?M7VF&v}Z zSD9iZHE~4Vu_@r;Ro0O&0`D+F)C?(SDWng>uoL@PoPJG!yyJ05n=TQyQ;c+G2va&= zE6tB$k05|FX-QBHH+N>Nu~2R|NWm4;JlHp;s`9f-`Y3FrJ&o2{h5NXEJvDJ6c>o6} z5N>i{2ck5)d%5z$qm{bl3{~nr1SiT`n$tXhrwc>mVt45dlKQ!R2J2BVK+X?yDGV-$ zLGqygf|04_Ra1)@i+A;Ikl0D!+Cs1T5xuW2zE*=yZRnHCTnBYeB`AWhEmB$0O+z(* zfW=H0FV2(-*VH1O`(7DGpF_Yb-T0Rn|7iFk#=!3`h2`Z%k5xFevUU0=I#4LjUMXt{ zrg*bVg8GGF#DJi8PWwa_Rp@LeS+G5lAK6TX>J&esW8(;e`<4z(^q`N3fNdLkhU*#;px&+EH%2H-z6Q$q9 zYqZ$Gk9PL@53`$DTb7CAkGE6-89a@!2cLxFHT~-D^cfhuc)F3O*i?k zg!9kCvi_^KHC%q_pBykU5GLoN2qbe+N~_U+>jOXiP2B6!9wP9p5jwfJsl|CAt@3Q7a@6~W^r{moLl-WB?Q+FaF;b^am;zamyTUJuM1?`2PY5r=?KlB(ElvrB zKtxlp=rRzNKuB|&lAw=jpsG)0C(%sExsL9>cj!YFNs$7}2Ca|~RTJ^9cNZo&IF2mm z&4%6(aS3a`)H?SO+M`1jx0))2Uj%8V{fau4fh1M!ojc~-zQ1N@tyae~H)X1@OQs87 z=VD>-yl}Dx98W~+!Fvdq7kI6@C^~;F0wl62b6%iKbtNZx~*oUrzT&d!`#7sa; zIIpE8U7Ais4{Htg%A-bFKtxN@T5%qhaO2|F^O^_=yTdiayHuw0X{8o-UihjyuC;RI zxTaS?qcpAAuldEcGw1NR*%yniu^;%iK}SOOT{pPsr}mA$rGNine-&pf>$*XR?8v8`N;~?@MF;2TquN+3{Y&E$)!$v2|UmeG?pCTS* zd+@6Jl6QTQ*nT8$CxTz3#^Azu-+t$El);6M?F)jwIkU^uG&cy*W$*c|!=%^Q93?68@UI&@IQPH-U^`C#RG z(g){{?Q(^XTAj(QM5F%9^8&S902Z(_E=ulo5IHz?IHZa>8nu7BwLUv&$r8T8gw6Bx1z7PThfre70f;?T(NW1* zNv0E5yKL!K6r7d1AK#&FVYZ-&Q+r?0*0hP#S7d>(Xj-oP>70HeI0Bpj_Mx`rzF#{#Mzc}*mKGxQQOU#Ti^8z!otRUib~t->T(_ zNhCtsb=pTfK!m)bmu;|eI)C)~_vA5&s6wkb*k>6gZ=KIYmSa*XibI{*Hn{w^Y9@+jedyPYF%~ zPO$mh^<(mS5e46YdTf8N5DJm49^us{4H77PMF;>9RlqpTeOS~#hpDsfZhK;SE!QHf z$J)q!Z567Y`80nhwCnGV5Esv5>d#K07r)PJm~*f1Vy3JOnT{-Ag*r*`oc6PfVk$x9 zK6T)S$6acFH?p+HJ+p@#0!KBv9!7q*+1i;04t-^C3X)^KD@NhBo9{X17#%FNxangM z<^Z;%h7T-ywx$3}>IZ2rr#4S32iyMsV0htdh|edjOpohVYI!s>8$y_P3=*tvI~}Jj zxjM7EAe@Ets{yu=n;!PP;m?y(d}AK=8VT?NgZ2#3M5@c)OD8!Ap>QZ6#jT z3f`rC<;1bBlTSD?0_OAO{s`F5h!6Nk^1infx510kMKE(Zg@O86wV+tKt93+!U-5ZG zwd`RI!KH@2{-Yo~EvILURZw@Q>trEW1~uw}af+$lr8nAMbhoS3F$3{sxTmvEVv|pJ z;A{dcgv=3iL@;+hvS0%%gy99*6%g-{(@%dB-&k^@KI|Ha4WG`cA4Bo1eB2W>p_u~r zE#4hn|D|=hqNblj>Zn$M34lN6vgKQHDkHFj`y5 zWaO7$ZU6UA+xWnog$vM|So*EMpa`qtwlTLZ)(6NcA^Ica2AW0}`!#x$hYamsUXcez z``cs1(6zdaGK3q@YnBQ`kw6Lu|1#poBdjG?-2>8rQ%gAuAAv!Yt}w$WTe24m2P527 zJ!RfUNzzPSn}#!q!C8e~t7tSh3vF>b99OM8S_U}~{Y*wzVz6cs)sGU)e4z}wvpZcJ zh|2;F^X9TSbL)g!5zt)ag1fDHVc; zP{Agh#^?_3+>wpfHP<1QHuzIR--`~pi_D(SbgHe%*0TZGopxv5nxS0XmDk%p9std& zUfXA-8OBI%b=@NGIPo{*>lQE)rNCVDQ-n%a))mZC@u0*%Iy?SWbao`3U>_-h9J55& z=%jv-7>?{p**70%55;c^`it`oVA?HfvE5FDr|C3a^0j6~<}x}5-s8G=hKv%$N6zbs=xS0vR)RtiA+8}Jb`@a~hFGfHpHkWnqQC!Ud4 ze(=LJkb4sO{dY}_bpisfUEKf*Vu(n zO3-0_&nw|Vk#9yVtmX!8G(2S90tSc=jWmEXENVul1pj*f^S*Wtg@{hX7QOMyuXQKg z@F?K7`9WcU$jGVguM@75q!N%xx+ z*l9DCr@tTSxrgGA0SwZo8u*@&%n9dnuDtN11`^UwBcIZRUi9sLH^hu1AztgOmruuq zk$J`W29)U=yq`S$Cb3t#L5E7>hLPITJQXC9ta=9EX+KbZFS@>}ybk>a+I?v4rtf@$ zJlO)=Mn6!DBj&Hg5=2_ms_hn{^pyC1W%@nE8lPiA9Sa{`(p`!LiK~J)A;r8J*ee!Z z%Ru%)y%G{hX>0T-pdG|h;kfr=WLP9(`Pi`sEWM^}K;m}P_@7@6Y$`(Mx9}5`LYi(2 zESSEnB3JVLYW@7$*>KZ2>-qU%yL>v(OnE(}%H2OnZ41Nj`?bGg&)R@Uy~>an zad6!oNL;rv)>fs6Yg+i@@3T!dCb)11f}x^K@1M$vnW|k)@QUdLTKvNUcEV}b7y*b$ zgU$+PT-b4tx5Fc>ynNL}Iori^fTl&9JE=}melLeR1E}lOK^QVbz-&D=T;8uJqB@&MGMWUN1+zYAoIHe<$=p}z5E5Qc&C3dwpj#{7k@RAVzlMMz2m;xcqT$v? zp($%}>?J!ko09S3dwxXV{p}7APMeTp*!Qw}gg<2wu;M2oegf$40C@L8n5(lXlJlY9BlWlUWb-9leAoPQex;; zg-IKom4a#7xqU5P#~^~smPiQ+5k2jE99Voh=uijU)%9OTL^W;DJlwq4=KNh0rvhb2g98W>IfU<}J69`G?%8 z8filfjDUTdC49mV1$8qGSML|BQHyh#8ZVvY9zfb2pVZZXRxToxxAutv!n@*5G0udB zSs}bL{;LkpTV>3( zQA10noY!3ez{B)_teQjEF%h&^qsR~N*vvM;+7?G7hM#p&YR>?Or99WAXMaz3f z5Cw)nM)cROJwHM1M0QlU1vY})=7ZrcOdr6}R|R&W)jQ+rgW28s^%Ip=I0aI*ad<4G zGOn|h1Vp&+U7%MFqnw>2B;Tm+7e@Hbrp1rEMX@OBMNF1Xw~gUDUb}F(6P6WUdW?`e zI%TUc-u%*=!GjlHtr_HCoqX9bV^|v<2LTOqH{zry zLF_{+J;S`qgOf;#oo5O^o_pd=9O>+vEI6TTybN2eDm)xu6 zOXkgXpFHgjt=1Y*`eg7w zF?)5s&(jRyw1zf{AO z{1w|_vX$h}E7Y@>45NHXhjU#VGDjgjwr?<%h~Ok)auOcnobGSFe; zMT9e)x|FZ}-o*6%9%2s)!(jAA=e9Xmq`iPz1-9|VOSjTsL$%X6upwESprH%j6XKt4g&XrzdH26YAe9Q%W zb!dJ04jGU}&q(d$TAd4WOq~y>(ojvmt(OQQ^`=xjomAQyzO$Z<#r~AoO{((gH~{+Y zQ?FE-^6hYZ*i`ZOy;PATuUAyhgd=< z(-65iXAn^m&lWa%|XRzRsCs(H#{C` z9Q{+Bedt^HXnL*^SdbGhbx$p+wUu!WY4~Rf4y56Mi(YTTnM+Ndsy(l0D=6;~L8!d^ zke`Jx0!$Q^d8S5Y5amHtxnpB>*U-wzW_zwmQHg63x1-<--l6)hl*`hhTZ8jG(aPzK z4>V131&ZuiTlztduCJ8F+EKZT1sznf>#CSm3nX}`sFe!ug1vdw3BZTekAtwxz3cN` z9fixOk-{h38@1CL(Kiaj?h+OJUpSf{?JJ5^W0zwCJ`x|&#RpJM-6d%mx{VIuNadLd zG0p1Zf5^VTQi`qf`N5o zPPSBQq9LQJvg&RZzn}87>%y$fr{Z*9pNY;1rLg>N^cVH6%P~C@Mm0W*JzMi$1G|F< zafgfpd^v88e{!>!T6a!hIpul4-eYzcvTH&Tu28Bx_3bu!K_Q}i`=qWJRhdigvTK<4 zNJvBC2{o^8NR>m*VzF5DkQvKL7O2}S3{~l!mJ-HNbxNAXliDXEMtQT@Q*|BxG^@H) zPt>F*gJSaA%>`1QIw7>5o3Le~uTO(v(M2HSZ(UJ^L3gd98^6y>9AUsI)L&UitRqLO zLt4;DR*qeO6g7b-5916K1@bmpb7x-hGN~nkU>+gd3F(A?qAL{vlccCqmIc)2BlHE9Xv>$(_6+3?nn;RsW&(#AVQUoWsCN{(atSZbLaj z>VNTeR>65R&3?C-nVFf))KW*w8lf8jb`qa`~xeJU(t*@b5XBV9sLaQfZLducnVLUvJc z&i}r3^o3;#9udep`TXptX`XW`G}$sG#dtT9U-I%1FXc5z(a|vMHK>k;U$b6)25fR? zPA<5{Z1T~xV|n|AEDe{v#9Na!@m8B2)f~ES;I!0hrBxI0n*i9nKzC@;wK+thCaOK{ zb)fpqqH=RW4&y96TKkvoR>w0FCA4Kx$F+pZ^?{EendUNF8Q5s$_Rc(X^6vQvF&doH z21=sNLUcZ_Yk|v-3E`(Kn)sU$Kg?bu?<2+4J%htyG`92T%lo0!BVCEg;3%yB5LlS{ z6O4kH)Q39vlRNKe_u@noEh_kVAFZGS9gp-XbiP%Ryj-PF-6mqic`21@9=VOFDvYGY zvX53tUiQ-10S0bjV|_vChVFfz31@{!Rl9pp23!*>&Y2Hn{v0mX<^Vd~hFtt_cJ9#w1OV&W z5zT)B0i4s7IJQOGe^iEDxjM%UaeI$c(nju^gA&Lf0uFYHo_!5C>US)zHDIotH=w&6 z6?_d}KTipy69MNbSiCkBKio`ow|p(=O@U+V)2{9d}!OR`MXD6VFdG{ty7#OVwZg2#Zq zQkr;%u2G&^iLp`HWVKg?Cxo%3=7vX~b+561rB(4X>TCQdUoNjy= zYRmT@A0En2lNp}NuZtSq${$7;KFin#r-_N=OVB~wAAqS!`Wo&d*FNoZ&BH;*^Z2?-3YBJh&=Z|M3*KM*49Dq&YJO$@*c?d5;g zd1a@z(b+36s~DRmt*f{ImyPcUZZwu{jVF`5)vj~^S7#mdV55xmJauOS^<<;f^gIn) z6Wq+TXVdj^qdE+)O=rvXwxb&iufIonDTuJz`bij~)EeLJ@awOC(BONto?X@tO7YjY zwVyrKAC7h~d3K(C)BX_aet<&qK!xO4!zV4GPfS$bh&=we==T&HeNkcz@v0{0DaTZ6Q%~`BLL|w zAnH|9(2j?D4~_XfR}}B_b$I8^_M$kN>yog0ycI$3)&|0SgLdb;nW9~x$OhbWxV2u545-_5_ zxrd?Vw}9RB5(Lu%Gi>_3w)pJ>-Ij!{FH`0LHSklx8r>G(5%BL3G%xUdS_FpHh@;nQ zY_l*izCQjRPciN~N3m(n=?9W(F!#R53;RLz6%B6lsR=d#r-U{Ho{Tq7*62&kctSFVj79L%>p8*7>T4)NN(YU(uWwIFuf#_y>Fn)0mKo?+?EpEA%a_n zpmMjG;L>a7?j_&HymN;eSd#DC3XDC()Aho0-5?6jW3gQDd`~sF`V8cC96# z@x)PZQ&|&5EdPcSp-FvZyuzFf#CdKCxnHaZ9-HV~FuqT_MDiW8aeAu|c+n3FRm-bqSa*!CmbVMR~FeMCZgY5e9p0L)gS`w`BIT zU$H&@^0Xgl|HHMblWEU1@dwLvEt2h`ALnuBU-tiQ20Hw^6&coa4X)gKp#49*a{dpV z#sBX3AMO7ubL`Z=_xcsG1Y_@i8^)KxBJ!)(+|J2=#tDZr$aVoyQ~0k~!H!>cs{bnN ze;%2y)W?5BwVwa9T`B)hGyb1WB7w>Cd%pjg=v#pulMl^-NbFvh;-2YJV38zbq81k* zwegl&9tm`_V68T*n6{f^P(=tnkR>oQue>!;IOqn5&k^LFS92qj5E#@EEZ`foza=2y zL-f^{;^I57n&2Q@F1VdNPqe2t>H>*ZYIQ40q|X!`c~KuVgWV3dxa)}n%w>;!dkvwd z6ya17d*B=%sybloI^H8V03+`sf!MhX*V?t8MOCcH5HL024?hH}wXCtI;r*6)1>06d zNlX7(e&&tLBu-;NGhv8sn3%BBHFeM->0jT6;?tlt!?gq8fh+;0 z$T>t}Q|6L9NmxK?i?5VH&B-+RndFj=(ooZnJK&~ITS>SdXe2bevb(sbJU{<1Gur8i zZp<~Z1qWQ4*X_f1^ylg zb8v_vDWXVRL@Zh+;nA%`9UO5(4()CN_d`NRiI+GL{`OB+i5Z6SKJ#c9D_RPAs-TV5 z3^X6<*f83j7FxrL6FWX2#PGQ10>1d!G-OxqRJ#D%+Mx`}+CvXZFjNmp18m=%Pge$} zyHKl!kmskMQUO=WGf6nJ!77wjiFHh0+5juJxj1(k1Uq*oE>A61!SwcB4-A;DXlPE5 z*&+N72?r&4O{#<-TE`jFXIu@1Up;Ep_7-QR@qQKx z@BL0#>gANra71<#9z{!*BufIdFVSm2O@eec%~c^(O}xR$kPwMZ5F~%7d#CRo8VxXr6SBKpX-HJ4dL1g=I;A}J(?O?CP#lt2*QBv zAaSID#5gBkeeNkC8Jw5G&k_H-o&Fmr%pdVMBqK*XBn{c_t{3~_S$XDB1NE{PwJm1T z5^}XM(>)~STR~FJWQ2HSc~sT*(B;s0Y`FZME?J@Ru9<|LF_2f0n*b4VfE80FD8ISk zUO%mS#4~ZoFgn_ADT%%nK>kRZ9f))0UWep~1`>}rkUJ9HAc$_9Q*$jSf|Ap?p$(7|~;v?UaS>b5IW zZ+i(T%#)}O%?|+vfSH?EYu0;`HAoWeCx$u*LDStrd7MBn#H)V3%#&nf(8uHsmsRqn z)OygXUD^y{6I!Nv%Tt$dl^(JG#Rc@{_PRhNjhftDPMRk3!7?~ufvT!O|u_0a*jnZlu?dyH1xGS6HIw(^>IC9FCS6q&xMp~T@h5OfUT|4&kLZD!y?E2q1o2O~*>FN3LBEcC#t)_lB*wqAIk$A(GBSKj`N5>) z?JILOB%C^6WS_P|>e5{Tllm%zExoO<#M=#{JOMhHz^TaF1ppbftbXYQRzF2IyT?U4 zk5;peER*A7b5oEG*}%4gy0j!cPv9odzI{DL)v&NZR~J)y31tNIgv&aL(hWk5yb+9X zBE8d>f3JO-d;WfZlBZ?VWOv3yW`3{U)#LtcU*7*sE*Q%*@a{* zu);g=zWO{nLBLUbv!LnIB=o*UbuF#)lGC?k$j!5C$!(G4^#myaP;;^@9M|rF)HcUx zK}xa{-Z2mSDjLKaim`>&h0(_px+97m79B`vpnAeq1U5AazvE~dCTLDLlxQvS%+{<_ zq8#?M!*8AV=Cg<|Z2~?z9Z#Ree1_hOWn-c=Jof3OwxsTx z4MUg$RESUC@Iz4!s6g*11w7NOsuw=PcQ|b6&E9C_GpdH~8dYku?*|Um=h!reG-IV& zDDpIju-+T+nmH%gWfNomlg@CW;2w&MqQ8mvTNj*Kb%ZS0SA@@fTKKotus7O-9)cZb zSWc24Y5K=mnsuzy`mw5$osz&V3corWBU7CDeT0u4Auum=5tDME z8V`cFJ}2fuqja9c7>>=-+t0m+v@5m8+pez8^az2o(EP z64`)JY7pMpWP~D^(7b%Qy)I;OffSKumxEn2Ks!Fib z`v@<)of!@#YnPR#MkA?=yuh?jH*$R(5nE(Kh-_D{ttcI^quI*X?rLg@JJ+Zcb-uw0 zKtSBR)jCJrP$H1#+bP45v_0|#!{gRvhRE&@k=6LF;;5YbA| zAofpSikn1&U_`BEhjlyUxwlYc82j4`D%G4U5?&?woo8dpFl>S1F{lM-wKx4$dK=Z? z4Wv?1Z{jQFCMiuSf+nwHn%CHh?3kMD!KgUYpUgTG2!BRQ_JV~*y()8sjN!)2g19vG zr^zy;U1xepMS>l$8%n~qgKq& ztJN_+9W!WE#y%tM`^e71xeyTIHnQwE6+n*n*Hc?(!T^6iX;c~&B$f8T;^WD~Hu_gO z*P?K9*c~Z`1DbX-UGo*AaXN*bqc}nU{xr?N1JG3)jl;>4 zW=3XhdKqVH86Y_X&!KE=q4Qo9D+u-N0Q79FQM*K45Re|v`Q9d`JVkp4H`**8^DF2dNUl}L4ATW1-cHNnpy%@b98jaiTGN$obnm%d zuL3+}r;C$^2Az%DAi(cJ24d%Hupj%k7_>6=!D%)~;Ka>#EL$yRFj$l6Up9X0Ob8it zD@?9Jkz&O%6nuewXbSSD*DD{Fp!wZ~RwOesHhr#+n;cumLP~SCKIBoH<^!F|a^MMn2;-dO!t)*#fX(@vdD z_>OH;CjW~^`7Lw!fY*=btxzd}EqBkw5qX|`QQLB@?h|h$evHanV1lW!2#|v>P2HoX z$h?AEfoC?Y;32)OATiUkrVn>Sy$keoB@H zLk0#2@XH%QV`9!97S3pfbYMryRSXl34vR?zO7_=!Z$0S+ci{MID7NxfC@qObP{{?q zt(5K>`${y1O=L7f(tA5tv)iLg!FFL!>og zSvfW~V#)W08biOawaD*A;H-vg{82=aDk34P)NlFJIiyYRir-(Gp$+Qai`d#t2*X2S zhGqk!4y4C`ze#Kgvlb{_(~+toJ|`Q@!!C2a8UlbJO~QCPU3v67$#nZk)Zy8VYT_sG zEL(D@Bgg|Yr=|p!5xDV3gg{G!<%SyL!YbX8p9=RNt;`<(&_;xx3^4qKZv-(Uti45Z z61sM~ApCx~1+=9qv{eTAiFSms6%zBifX!sgJpA@HC`haHTe=4L{DrE7hlwq6F0Abe z^@-SegYx8t0cR@-mnAP1to&Dr6Cr<;^tT2BT}=-A*M8Mh4*0j;cR;44=?b%yRMU3` z4G&vggstNi#tce33wsIL`*?N^wDn#zx2+^>qEl$FACdLP!BB=!GHd_j-02-Vl}cd8 zh55mZm2RQoe5h*`G=Z)jAEcq@(48F z0)z+ld$+mW5!P7w#;zlrGA|j!Iu4|*?8jo5?+i}c!>*uAHeoPTB3zHHAPcm@v*>Xf z#OrOO6r8_Li`NecQsVD=t?zWva{qd)?WF%vdtzsV0YANM*g_o_dq_$0BE|Vb1Lh7k zFCSs&xXc64`mWRPd_7Z3huT<^tbY(vo{ThzmmFg<;CSSV9B)4dyc!jny>%oHs7kH1(r79Xo zh4j2kO%H(-OZkKWXYJG9L8GTt zVzHKEXVR$Hg~SjoEw67hF!8A|mMg?7GKoM8TaHAPa&kL7`F$XD@b*he2>niBrud+; z@c!v8u*>D@!<~rK&Y8UBKaZpCvrfCx@PKxLofDdP2GlHpXLWDTFk3I(q&(_lCg^ij~>km~+`&6{*7k@D>VkB$<@e-xQQ;DOoYvkv#o^MeU*}))Rww(S!-Kn8AA=wb&FD1a z2Jd=TCpTDT#cKLscU7{}prWOi)i!ZRg?L`4CyIufzBC>l&WT~PUmT@KKKPN3#^}ml zyXa?isY{L}x!tl1!3`ex$^==CePTpx@_SqZV34uR8xeAIgv#!JDk1K_A=X>~0>FN* zXU#YFP0}&eXp~K7v??Qm@;Jg2=^ZR_Is|h=|MDJln}bZ zN5<5N@*~2D>`p3dIsaOC+tn*1Fi+Eh9sU$R2R!NiqOu`Au>w_}jbq*2M8k_e>0TQ1 z{zmPz=rUjueI?$3eQvbER5t4pG!w0}mk>SL1pU72Sef`bGXn3}vgl%JPb#qa!|PbG zZ?yY%5%clF8AW;k)hn7snUfWEU~KT>va%9 z*nt>Z>N}oNMZOrEB?X`H!hZcjuI|=Cb89}r^x}JgealLXtE0`m$`6x{zpL-g&#rpk zUg5O&OEw8H`yY5xiCax=a^VoM3UGL@wC_0!+Wh(;Y(zDeB78N^79zo-@7b^l$JF(L zkLyuY52%>F_n(-&^VL0|J59^5zM-pOl20KKXP`K@^_h$qnu}2K34u0MlXUAXcGyVe z40arCiIGOa?AEiUhQA~}pv*`X)xPl3ETYpx++#?-?38|l?L%}IQxEOEKxy)Dh#Q01 zly^9s93y$CUFmYmn>YcFA~?9iO4LG4J8A)P;h$sx30><4hDQ0<*O9(H1@HHFpuUc` z`+V#!62~I{r}`JYi(>94LfATQ&xPvzli)?898j?}Ij$pofHocn(O}O1x-esHmU-a(pk@*zM zmVfBo9*_HzmW-XOpMmSYBJvbt-dyN+NpM$qOLe)i&WgXb`|A<)vZ$4|;Gip1ysaOc z^xHnL{xtM_@V*DL8z8hXC~4B|(G5Fiq7d?($m1oe&Xf2cA2vbdbxXDjN-N`83FR$7 z2gSdrHl^nvv8XT^VDB#8dU5=yL$InTBfvu~XxXJ~wGoC#fZ*8_@79}90}pkKI)P>` ziTV&p81wTzzKmxQvxO5Wf9bzjcWbPzuZ&5sjD3wah8Tg8LO5& zjO%_%quU-hp?3%UPk^_YXJb~Z^InRtlm0;KKK&|?ensB(f8e{t%>NzVWrL$?Xz2o5 z25t#+c9c{2Rw8*eD6oLK>9MGh&EsswsOtVjx))(!kg7GVct4VQ%*!t8dAtLJ{zL7S zjcnwXJbv-LDMh6m^jQv}!PSxDDU6SR+maQ`zs#9$zUTH^FGG@h8p?ve=3PKSU)4riRj8pM#mTC1ZjHm#LzK!ZajuU00g+U2wcyePSG4O_ z;zdjpfCLDH_=V*DgERL%TMvHY7yn<|++q3HJedmu!%M)!(}u{Fy$X8spQL;;A*+)$ zuepQKvTj++oh@7|ZO8znKeV{-Y4roIMWeN*xWi`$7xqqn|{&3M_Y#Gpq~h@+$^)K6Q(69Q-aB7Z}V`n8Hf#Jn4( z?{ZVS`KwfZ4(11BJq03Etfgtvh&&~Q&@tL3?{!BaD}(5uHwSftx9ckRn$h?FeH+8g zK2||%xxbSPb$1^Rz0D#kC8J$bs9F_Yd^^Hr8o70ZpPDL{U@|XXc5K)asUZF0fc+Fb zFEXrK=(HkO^_^C{*~IYWV8P6AnB&U#x{Ctrl*>N%})Z@%eIyd-HmE2TVc$?-_*!Fm1YGy+q9Io2r1}n z63XcEAP8#Tme8qwGa3PF&HhU;nBHoM3ErBWEVM|+FsL^GRTL9tU;Q=`dB7zq^n7=;%8njaN)vnI)0gqlx+JJ(N`k7z zyG`)zCbN?rHL@g0B;q5kT0}sltw`+KkM>rOEnk7`QT%>|9gy08zb}Vqedb37#Ak z%AmdSgMgZ0eCAx0sF5~?*ADTbhmw3kq6P;3)+YqZYGnGZZK$yfuNqCY;hwBbzr?lO z;r&Lxo~0{4tgH5vuVOhIY$Mcai2rM0>7Y z^|{LTbxlG9pSkLdT)WG6d6~qROnfX*7J1IZvQWh*%4;iK63I5ZvK$7oQ=b4C9dZk{ za%-0G5k!*}vp!(R2P=!YWsNe7VZBn6@x4NeEQC;cOixhBKqv=Nu&N211okqj>-A3l zzP1Ao2-07!2e-gLxKeCb&A@A~#-ee9`HBTK?8@;oh%nFh=2AlZW4^!arVyN^+CQwT zxOZJU>!C0o|MaD^Gr-^48lcnRgO<|A*6NO6XMeF5&&yObk%C) zMq&tOc@@-|R8?*3#rT`uX)YGslkj+Y53%ycCcXSC^#0T;ggRgvi+q>pt?g1;$4XljZ$ntqEAworlck{h1~i zFwf3PR~d9!XS)VFUvr|o5yRFN^*>G7v?6En_%H)l0J9{aUsdmlWtem|sQP%P5WhoG zys7SDn_8QGJig1FKD!mFyyCgH(Zhsde<=JQs)TJrmK?}|cSNtjW?E?Nc`(+Q!qnw- zd4ZRIaOvRqJss+FuAS4qVU8q0lwO7qIOhWpp;~!F9&>tN|2J~jD>T|o*#q#ml=A3Z0>J;j4Q-$-XhVdQY zG{eR8RL7^`{oRXiRnB6}vGJw9&c=ervJ#Gf9kinBXtbQ7c=SZ!K4Z$wfcs_l#PRh$ zbcu&GLY^`F)fAZia#*F1MyBZlBVwpCyOzP7{q3v6wQ-j%d=9NP5Hp@B-~c9x!6~c2Hg8HH&|tJ4OLm; z*d$4{t7R*T&D`@;kEW>Pjz8p@9Gthn`uNrgqnIVf#+yqE2zsLX!%&_#v12_P(y)_}7&3xDmZ$)vSb3l~Gv&71J9M%3p|jDkq?yE5T- z&Foz^d4AXa4_IUO&U0|E`%Z%an# zvco68H4%yZt@(sBK8?6l1WcMbnGn<|xwW6K8qYqSwBzJX$fg8tB`w-l6?wpNWl*`% zl751Olf+vZ1?M(}>g9jBNO&NKo&TosG7~DFg6$0H)lN9|R!uNbUr0Hx!m^_$oEcbp zHPH-OzLos;am3qW$B?JEt(ikP1QT|+U>U##sERm$ozB-8#^-`Y`7GsZ4MCdPDu5~5 z)LOMIt>GlSb@+RUa=K(KGU#}UACQX$j8d#ABbd(VHx}Wm@wLuJsb@W#ML$V}ham5f7&Z-(i{dUDH!J z&+>klA7oYxy=__k74W+8Km#K2K;vL^hu#tiR}otRO${5R$my^kaE2A-Q+EZ1&L24! z;SmQkKFL$Iztw9`As>SVYUA&|VSHZ~u_EiQG75Q>)aGaW>aP_C`zOinh{b%S8x6;yy6 z#uAwA&VLp;5$WBMik_8Ho;v$1yNGQc zhoW%$m8a|C1(e0=ADkFU+YGVjnOQ(im&Zv0wa4`!g-nA-CpOOHjxt20mPaHXhoF-7% z7H1D`Ym*KkUOzEDIC=w-X40)^h2FAn~+0%pYq+aM${{stZ7-cY{P8{t)oBp*wffKKg;>F&wO;ai_eg>kxkVr_Yr$ z?UKtfV7F;CiJ*cLX~2PfBY(jbjxl6YI>@{mE#t6hHjPNNVfvv~>ldPDYSgL9bu-xL zg2(&1ucu#GgpU_u@ZJ7UthA#T2qz6?p8~ zVth+r$bDFe2pu%CUs0c4Fk39eeremhf7}+mCe4Oo*zynzcmD{ocDQL zH91yA5L;EM_Pw$k>b&Vs_FyL?>}8TVl^6f z@3fDPjNaX_?B(e$C}nM-i+!K#IEbNv+w-*oX9%smUa1JP`mDb~rP!iaYvswtY*h&Ewa^~(9|B6${t_L9viBT$a9(* zS6EF!;6!AdI;NgFDxNwzpZZt8P)wU0HeydjEzv`dO=>6(sXnDXzNkJnWFC=6H#0W4 z8bII(Vx1VNo){sX7%`t1KA;PU*Y^nNjjr?Z@vS=NH7(~Qoai-<=*9o?HG8*P(1RIM zXA;cceae*S+K&av%(LV0$0rEeN96Z*hRt~3|KpY--9aJxNmz^kcB@DbRWbaz=_C;?k(vJR)KOuN763USX=u4b` zwi7`2CHH%vQL0C-7|4+lxJOc98JJ{pVEw(|akb!cNE%cGwx5t_ZYm758D#njMAUiU z0b;%Wg+C=!?lg*-3n*^3f3YiI_cix9(Cf&FFBKL?VrFsGL$rC?Cvnz7r-=!{LU>Gzm17TmqeU##i-iPCJihpF)F=|{0+?6?+h zNL7!!_Nm|qr@R08XmF3|3mh|d)l3Gem6PmTo%t;)^T_WnG(&fvp> z;On;Xm^_Gft!(T0W!3O1ZjQdeKzc(jk3{p#tPp>GzB%?K1VihnW+l7}G%z3DJ&!(1 z!;2$;0N+^&WOhgg{|zF-ds(*t-x~+S)b6IEYbhF7(eybNL`cm8oWCG(7Cc zK-`G^+rB;R@Pd(QTAqrt>iXUh#)`|>#StGm&+4<*fJfK>)5jzNpo{);xbgR70(BST z+ znOu9sbXaLwMlK1<3MOi4S;j6Y%lalMIGHB4)H-ah<9wl7rY_mb-X>7#+Gh6o=f3z+ zn1^%CwfMxT%pz`e)5&sG`CsX->W%1A@YIOnZOzPz|DB019*~McnPkrI(^E5*0D=o+ zVj^r7E5zv8gIP3QcjnMfd>+_TUO&cQ5OXc~)s};DP+a4&({L#kU5TgE3OZ}yK`sjr z?r*uJ_MUJpvUl6cV~ywfpc2yjGN|?EqxduO2SN-Ci!ch`lqjatxANNqS{|CJN^bR+ zNZ_j&>f8+vDdT$07t5(!e84g-nm$N=YB*adrg8&7d#|kn!C}cTjkF+}Hc5AmM=I~G z3s8^e&i5@e?FrfB@`wstKXaKx2R zf9l4OY?dbCl~^vQuhyt#SKPN4yFo&U+%Ze3^wXPqry!V$5Ny&STOjly&hq#Tw&XVXrkKSfeY~SurB#k9mE(L&WUk4`k(+G37wz& zjo@-(#i>Zyh`$EMH?JQFKTo)I+dx1Ce9nXZ_`JKFzAf##6?o2;^qfqNBjqoCr%=UL zfK|8+LF1BdizR?pyqKriB!Aj@X*}gCTyh=Ie7SF~0@*D7J%{RG z@H|ykyS_1e$#Q_n174FKh-X(07z8}(<=CfJofm{rbU?9jNUuo96PfmOy1P>UjxnUS z64TFaVUf;()F`Ox;>Cy|#V{g%;gYS38JtlpOn>UZi7}Zz44-f#VJ%>}PK0MG4}LC! zyJA-(2Oaym7=OWNPm&TZkI2@}H;q@KDaN3hM52ZdRwSxS9?9hi&;h6Mt z%DjV*;vNbr#>=w|cYgy=sBp^AXvXc3e-AWCiy!L|q9`cLa-Yh~!(e5wp;cxe!^^W! zyQMa+151xRKK#;^UQX%~YYl*iuU)RD_LQMMU40ZOApH)_HS|-w*k^!LRGCtOo*E>> zm5`hfD0PxQNI!e?P3Vs3V39x26m8L90cCiw-5pMwnBJZ_{RVr1*5em*03!(@Uv)`s z!vNy9%|>n|+WRin!m##)rgrw5ZGg1luGl%RDvfepCBZ5CiTql00N3Ka(&kja=8~lN z3Rq{uS7qzCic|8m!M{T66cENOG7<#=aB}6mw>72e?dCJs$ljPj9gESjmG$>1wW>J6 z882KWYmb94-y@OrlS=sWxg-q$Faj_wQej|5?+d}vOGrDhM%yKwKu^rmYqRUsCWy&x zf0YyDciA+RHw4ZuF{SOmf?hW6NR~w?mwl?IQv0A{zXZ5GFLWsq<5|DTXwrTO8wgq{ z*2Ixa@Vp>1dibg^b9<#Y3!LRJ<<@jDpMW?uZP zL|+1l=!AZv`ayR{?v1HdHFvs{5S36LrDg%a)kk}30cXMd!_+GU* z@p@Gw3TVp1?2SWur13>zXmQHD!r0d{hGyW>V0h5VmS44{HD>O1{uq+2-E*x4|m-zVPAK$0}W+k>MCoG(;MIx0+s&XDx0PrlDh zBD8Z(5_d&>?r8`-Wh%cMjCpE_aO`0d4a!xmA=nLCiEut@DPm6wFGw~A#%zs!V3;>i z8-zy5ZUMxLzKlZjTZRBT^pCzc1TsDd(0?9=JXJ%;+7Sy{)qkD@vtp3sd~eJGTSiv0PM3h2k;(C_d~OEdyYQkd4ipEf*!9*TdX z2RsrAFZT>2*`9M9mH+s#*%!pjP4bZ&VCGcT@b}#^J3bF<#zkaIFRWSS*(eWbRIO0e zI0kc&Sw*6P&?17NmCPC@KX%N#+{Hd=gs+|T#o}@ZhJ%IAY3F8T1pBE>181Kq14II7 zBAC?oe6DUHh^xo8RZ&GvQQ!5XF5D}(OgK>YGE7%MUYVqj)JJH>T5KyrXBeAj^{xd8 zpzv;=RQv~EPaLa$-U_N}0?|sh7?9}6Rd#L{ZGxTiV1Q{N#Z%~2t;sHl&(W@`!kn@I zcb{q0fa0h1PY+<>cK459b(ontc24M93hz;-@LQ#h!x@&#Um_I_7j{`q3{# zFcWTEQv{2nADeO8qf^DOeG>+%71F*d-=f|#i~&r&!h`%jD^cMjpDccc_S3>>pNUTj zWxsWswh2X>$`Y1Xpa3&@uckEi&piZhLHK&*mB!c@VL_9CcF{T1{rM2>@g=A^ED!UT zZ)?8<@H~ugL?+qNQ0q(ONmJgLVH1AiO2YxN_Ybj6cwZRecBsW!HxMi8X>c)rMkJ(J zRjDXKO2yYclT}SM3Pmf~DaHGZ_)h?KNqNibmq28O?ixsV(YlVd&p?93`OzkOlU}2~ zxe-N~BIjL^>8gvSBF3?f#zLVgY;!w(uf$h^6GJzF4sLJ<$&czFuVbD-+g%D$rYVOQxN3w8K48)p9MG*Ps zOb?!sCJr`E^PbSfZ>S(*M|qsDBAptm;}fDcj>5?yN6Cob!46KsZx(s0g&P_&%ozO< zX)691S~aUY3C2a|oLS9WxvKEINIiFy3jK9%k6c3Ln#H?v30P_bSxlGI;E_*p2r`q* zFMzCb_w0Y5l0~E^hR#yaDMJf++8J7S(@f+mI;h&;L4yp~z{-)kvKl{T4k+4rrZvrj zD+l9j-RSLJ(10t8H-3rD2f-^-WQUCwcj$H>VF=R;QE^nPGD(F0StJ!MDc&s@r+1Uo zb~R+QaMvibY;li!haBc!&#wro7S1eG6omQCRa7iN!*`Fy5&s8z?t=tUdno@4e;7|7 z`C7an3G5L|O3r!16~Kz>!I#pS$>l-#&^#8UzcQnMX!S2MrQYahQf+8z)ch45KkB}! z8}4Qz8ITru*%O*8!T&gc@2!5UJ(<@Ke|~!+flKMqNH33*nWK~(ATMA@R!jtcU@u#e zs@O2E3LkEg@mkT@;vn$C_zuepj5}JQ65V9#?qZMa#gRcL(@?LorOrW;{l#vupSC+~ zdzR6nygpTU^ePC_NI4#8aPy5DY*}k zU54p~$tPJFQW(7hxcx^ix{Rz`C{^K74=d^xn60P5okYQ9tg>>bqtF8eDU|v8mo?iN z{I8`1vG%Rq!l^Xyn6#C(B)Fd3siC~yK`O> zRtv8$Ors%k?LdAUF^LbUjM)+j1E0+<4S#1G80IM%h+aq^1U^nL?RfwV{iMt}T1v^K z0p#p~M7=_?4;te5X)X$65zZ?n91^Y5Gxy?9!C~V?WC@AGzokZ=4XY9!K^+L^IyZo$ zv8&wSNlGt$VzJgmH8wVkS*TaOF^ri^n=dR5bBPzFT`c$Xz*NyJwV&F}stiqGQ^XjK zmR1f%1(1@MIpa~oheHqrvgDnyz4fWVaQ7)eX=tIM&%{bNFF}$mw^(=p!oOi^Ap+=d zL6}^Y{N92rrkrBc@hqZir6g9sX}{LBC@~Eh?pz=-A8Y@E&THOng;FSUhgeEsBGB<~ zK3Sb>q8Rxj^_y~dQsY1<4Vi#KWw>OnmjQ(;W10vijx_bFB#c~Bavm=!#R4##L%)vl zgernV1qR)+yl;e}eT~%cCB&e=KzL6~c9FacUsD#6`BWU_sxhu06W^x~Z4gK?;KcM3 zin3SO+&@vq;U_fO%+OMvunFTBK#t9McU;Mo)FD#hGst4@4|$x*woJCT9D13g0Nx!; zZ6?& zi9qUu);|=zLN$X!lKQu=R3IIxo1vb<2_)h^`ELK zi}8~^qI%8T^DD+WR(Uz@EL8JNV*5C3w9;Qz|5guUE*P3_wGL$A!-xaX7!}ujuDyvK zfb0c-lmJ7kD~;Ken#c&}TYKRN7LuueF@o8nh>ISYx`|3smS?KSmZ$f{?7G@K?cE~y{dto(!5Z#!m-X%FNvB+lN4rHE*C_S5#gp|-`r{R0 zx!F}s|E~IMk0+gD7bSW+ARnI=J{ZE&{|p@DVJMBCZ*kIGQ(!-Vix66lDis?`5lkf( zDka4n=^W6bGO(RaM5>~!B<^Tu!moe)|BXPkg6sZ`{O z$Qfn$Lb9*t@u` z14JFNEbVSU5hi!jFupIv>r8qA05Pn5)LlQ+Dz$tiecD<2_BlJEoPttRHGZzJyzF_l zBl<#*hk@GCcbJPOxsf&3eexLk@%I+1v}iJw?L*vLc4Sa>%(l`#U3`-W3KbLGCe`Zwlx{B|v+u!|N&isYl2aIPL~3D`r+Kp>Isrbfo7s*`*LLfRT~mKns7b@k=Nd*XLo zf4m*nu14p>gWylXlj>?$AlLg&8yCgb`_f-+1krtM4S#Qk2L)}Z&{P&)Y^l*yR@XdB zoes)?nwt&F-G6S+nq*7)6piX2%0HTh5C7x}AbLduC5Q4|$tN{FPrhCw13kuO?` zTBs)`=8s7({`<;jW~any^hnUy6w;FL_VVR|!~2@x3rOhDkhC9|*)_6i#k`%P? zFz65S{dIjiad&<6-Ehmhq%uC8w3=$ps6TB!hv7>Y^ElLUIO(lhs<#RLVK<-OJw^EH zm=V?fHr&D2ZSdQP=khZ>Xt1w7vgPkTQ_^!2X=Bx+XFpS|v+}V&qj<;Kzr?+Y1LS1k*SNWdR-YzSto}WDj+^Pl%^P+BYw5R=L5`zuNZ zdBi69U*tQNP&}O=h3J`vJ9zCVs_!W`pUA4W!uoH3BWEq_DEdr6^3}SLCgw6TF^I^Z zc0`BDwHb8@1%?b+Ru|#UW2eQJkT)}XIQViIk154RP1}!}Y4JFrf|5c<>p`i!kiZ5k zrp5N=yC{iW?bOEx#J&cJzhm(n-SJ#vkUNo3b_{r&kp)K&Arm;Jl8VcRYGk1L~3~zXJ0(Qk@H-<055w z)mRu8J!uHN3>W38>&)Z|>c<|ol20u}pYC*W?3F$l!uIw_y+#kvD<#%FFn>dFGg41i z%GP=##g0G)oJwFW$}Gx9GnGoH_uN;8$Jg`1%>VnI=h-2zeL5T7yYU=*J0f2Ri6qwD z<8@xUG#-khiy=~N`@ZWt?o=+sN%-_?wgxtAYQ*G_HYwJy$H!}&9Qdh>wBY%eCA zQ3=NXV_UJ#t2^+Y3!nZsR6sV$zI8of7ynHvd(E}1Xln|(GLW(^#(pAKYLL;=^hVpO zdZ$ogymVmk$+Q31ge76_0=*|V&4Kn_o)@Kmf@1X)AqDo|(+$EsC+zqm8N)sYv$3A&q8M z4!9%;1jO1DRV~L{t=3J(#|i|(*z#mj>xc(4-C05`vF5-%3LJRqEhvWxdvJ5{!lbPM1TA( z;tv1gW$IQlBPB2%3EbE|@PyJU*ySEFzO=)8fWGdX z+ejJV=*VeZRgyBl6tUM&N~5O!tT(1ZfiyX4s3Y?{+t`$24Bp>Y`LGEwp4&F1_3?I- z-x3J_Ld(;CwR=G~z7*obACg|6T17;^aBZv|xx6m%&D_|iq~kC!~57{qlpHiEwBO8^OCkoy_wSmMBg$Sd2j^DOX`+n~{y zlLD52#YxZA{r7cE<4plftT_c>c5e~A8PTcvWe13R69W(r^VKxg(~Yt72mIE)GNld zyad}oFMg(`*aVwZ9YXnSpw2^2#h-jr0+-$3wqQ|`0@7_3@5&7N8`zmA3~_f^2ysKQg>L|U(@#Nqh0?W|UJ!nvU?H`N2N5!sndL-0{wb!TTW=B2 z&tJt-&%%;#&&EV&+kX%+Td%Dg-Rm3?<}O8?xnR z&SB{S{ZK~&^k3tTMZ(s%>@6HU#dw*)d&E@4f7-Y9B6D^`gfD;H!P&xVXfQOqfqRM7 zrpsZNjId}L!XCmCg_hlICm_v*%hXR`H?=X$*%Yy{Xt{Gli@Fj5qe}C|X?YZ%fy%R< z%eptTx@_h7ClNUE_8->BD@1cx{~k6ygN{USfun6;+!-*dOPxuFp@PreP1nGp%?83O zoC}ZH+ix*=bO`GygOn*h#DN?XTQ1! z2~2_PP3MdZKmy|8;D^=HQ`^a|iajbXdS8GV5Vxa}eU^|dEkoh21~u^U@UOSjik50p zic`(RTLI(PrbIES!P=m>)P>Mhr`cUhMX3-n_>WPkB3Hshe7HbJog# ziUR74Kl}6T03*Cc%z}jwzWXQ0X4s7=@_SK@eEQHk!jUdv|iVspo&&aN>$hzRjyaO^?+Q(UlW7U zRPfk&ZPF5Rh8p93$SJpUxq=H@XgYu^VEC*yusfHvMD)&BsTQ5q<6$t#+^d5=b)7n` zNMHv3ac~uV+Xl7(v+}!k0_NR9GkEA8In!{E)Mb}s>*B|hiproxT_?$6XEcy}MoUdh zpHA(h8^KEt>}+}^*1n1J#zZG+qDqjOWp82u zA`x54K~^N#%|gtFej%KjAa9O3D@1UpNCe&qYEO7{q&`%T^4|Z1M# zVeQNTrn0f7vL-3rE7dk8r3u9`P|-J+__=pHP$&5UHBMl3eW0&Vb?hB!+5oOotm@HM zgSlnCmU3mML#oPCv>5-x)y<+uc2&V#4Hd^tOJuYrvn))VY9Ic!QXPiaoyCjW(Wy>w z;i*c)<1xDqwy?M`a|G=5w3Y&WeHACIC-3e?I-wRj#I6inTeyaL`hXRV;0a&tGb{ak zBdQ;Ud>vzB(8!gT(|#Y}*Z_5RbYjmF>n6c1<@SK%^WXcw0dw#_N6D(~JQ z=WcjSnh$IqD3qEub594fgaXBfc)viyt`K)Z23L%4Z^q$?n>HpNh}av7_?r7r>uYDf z&zpH9KVo?te3=*8*qJ-6ul6%+_d0a=@#@nf{e5z;y-S-b!ReXTv|o+t*+hQ1a(0{N zPvj;kB8w3rdmp(epc#gb9#Ib>*X#Cc`@)yPv_WQ#-Y@SUIj$47ix2$Mn1lA0^G)7T zhAC{2J>>V)1~TV@b1j`oUoSb`4bDJi&u-!c0qu|6#SV3f6{4C&rOwUd1fe56VAbM+ zexn!_5fqMuCN!8;uUkML0^rxN`TDF=2(G%q0)N$ad){swU?Td^uoc0LONv>Nj0+NPC zVnuT!{?Z@&a6Y%A6hw|=%&wEO=HI%C&#t=1uuB>Vt=bysnrJE0`s7owi&n3>v6@cJn(d| z{#a`~#F>J0xS-w`1B1hixa)N4j%NaIO)@;_Ft4<(l*)(kr9(uS> zPdyFeSW3g4Bi+4*VPGOpnjA6@qq(2w^f-t^`+?J5H%8#)M$l}Lx6H_){M8Y#x#+HO zENJcCMmxZO^h;Lz*!v-YTC!!3r?aQjKES%1e;`@S3l|Q7U%3h9iU}&#@^h}@kszjM$$skH@`68uX@%FPw)o}(l#6BMzUOA z$51gXp;%_rpCpJ@W|P+0OC6tMnL-Uca*4(l`wv)?6%j{rFL%n`(*3Bw`$J<1jYK(3 zfQd3lEF9_C9}#XmdG)AUdnlgax`y%?rFb)!c!XgNQkE2Ggf%uKOza9?u{YTxlLsciq^7cewc;dp|uFDYoFT z<+UOty`1qY)Wm5I+|j`Uh@!Wub&?}yG5US+z;ec* zxQV(qL!)V;RmNb5&PN0fIRN2LRW>D-{*@G6@&&#tb6w_;8F(vBTYGV#=L42r-;dKZ zb>tO$N3uNqAw}B~g3z+>cmyjsDhzvQ7$5HOn)J<6kuu?TAG0xe7J#2FS#@%EN zI#xeVVwDC~KWIU*=YeTg5)UMIldzLx){;}CJ9LP313_C_ z!Nlc}GbC1my*Zf|x>Z`>RJO=rR(;&}pb20!s#0kfbIcWQCc4yq+(jNzoP=&@&Ejn~ z?s(m3QDM`krhSC{gUZ3J__0_1$~)_2darx5Ek-b$0D~UAx|Y$;)uiPG2Jc*RemsDO zn^Con*6;t;|EJb7hq`xM6Mx<1;I@`q0&j~CH**YH^Tx3OYjk%2pP+hjQAG2OiV~!> z(SMvByph7}H=WD@`2qaMQP#bw`jpyH=tidKnQ5P5bSv~}S&&aF8f#9)4hI*AU~Y$o z%jEM!b?W<6WXgS9a-?vbG9kYy7&~#K!HiYoVF9-|!rYB=)KjvQ+~P~;K!s$6XpRHb z#Om<~c8nWU>9(4SN;JgeNjDy{JY{vjEIu?+UMOC+vWw3Ue$mH1DnJ6gaX@Ubj<`NL zr>ggZ8pfb+#E5&N99R=i*~Wa%NRV2e5C5qwUX)4&{o!UzAr32oh=bU|Ppb|2OBpplL{(NAcXxvrO_ zZ#6G7Qf+_joivd1@M3bJZ_oH18}Tm)!qw#2XKdG@^4(4zqNR*FZLD`XY=TgJoQ?ew zwe5>W4mI4#8?^!^My_NAJ6U+rriTb-&`NT}^Tc|=bL5|v$7pr?5S8;tUE}G=8y6AH z%{i3XHZWlBvh`U63^zi>1&}n4IGEQU-0O!aJfj;@Q2ZSijy}u2^pUqL7;fOrlUEMq;4&OW|t`NvMzScfX@u=IwV9%TDW%d3T5O7*PII`K|XUkEuwL+*P z_0#=;-&h$&o|d{nI&FyM6>dD?_N(RrKYuHHxKyyYipnJK2*Lt|bzd@TQ`mGiOBw;Y zgy%R{8+nLP0uLq+0S8ynTsLst-^8;5&885qYz+0>&-3Q*HG|c}cem!%p9Im=v<;ID zd9H-O#ukkM2~To>wbuHrs^5L|TUGRsMS5Y+{a`oVZn9PdD{g65BsahgYhux85}7vA zLmWEjy2Pc2qz=lp&S(m9m&hY++i9aGZ=AZd|F?J`zB6^m{!z1&pdmRXF@%v7<$(dc zokyA}BTfalFV%ZbdhdL?`8sO6+hqeHTUollQZ==lwr;1|u22y|T;-tIgdSnryx@+7 zFM`$UhJYQJmTjV!SWAXB0$F&RZ=30)oR6kGl~@bO73zC$mZmlp`6DbRsfzi!a+T!w zQNvU0z&wYeN-jNSuKR*mHAyPjv&vQTijn<$jxLKwY!#UL2tKYpj8(Q8Im;ovgLT0L+9 zcrEJ}GI-6k`S!|9=@$GV`btR(oqD8bivPUX0bT^6ZoRn+@ z4RekCJx%KE*j&bnGHBFG0*aBtX62WA&OZ(E0T?a@w(lq*?kBJ5VEzO7_B2i!XRfP! z2-*aXu&cF+9>CM`&QAUM1l;w?4OgWiOV-}on^(2c2iT#SFhaK-)K5h&Ujwi#n<~af z3-&P9<7$a66_qGegGJlZMBB*xZW9?X$o9q$q=gq7IA>KqS$4oa6N z1r?hi43e|$M)1J0o%p*6WrCoCggm^Bs9SG}qr`s4b2q%gcnlj+k=PX-#WE6}?idIm zG;zepXwkW;$eMQlxixy;80Qpe7Sql9!GET;NKB|+?&a`@z}CDmcSHpisTyF9#KWrr!Z>twM+>Wrjrj7G~84oDVRs~G1o(kFA*2SR{QMReqN zZ#~Wi-R4(z+1a-INwobhZc`MqUiRLcV_m1#<=qnqBXT>8n<{Ar#<(Vop+)H-m--$? zW9NPQ>T3rQpqK)Q;CVH%j@^u%L%$hGtf0PdrUq>HYZzdR6m2kfyd9I_Ao;b56wH_S zW1USSkx44DO4CZshIF&ZO4Y=}ftNLg+oPQaYl8zy-S}bSC+|T;?c?{$`kTXmG+uJ? zkeI{#LT}p+j(`iRmiC`6Uo5|Zrt%O?zplipLE);vsL*1aD1O=C41z!q3^T}LiDIeM zQ2b%TYMim@6|J3!^gU)%!Uc4`Q1OkS-!4vIk@?nDE)?Y2Roz0!%f|W}Q5$nDmu9A@ z(szulrj=T!uqHJZw&3le1lIwGg!@Ix)%aNB=B5zbcH~cNTpLrXnri`clwLmwU9~RA zquWMYXAEH$r~lsO&xF&Z`?~XbFt+rXc0Sk6!|@@5yHe46Xf)Hkz=O^(opNIx)P>Q< zTv^Ur2JXkY!05$BNth?Kdv&yO;*fVrgQRhu^LBi8ZCoN23|{5VjxG9rfK1$+DWTz& zq!w{VGhfhnLP-R87ocykB*rptfBw{$L+HV_Wtw!WQb2|fmm|ioZZLfHuG6hJF44JC z9`52cg~*OC4=YZRt3q`dWgC;B*;G>vrz%*$c)LC6qWOdOqI?yosR*;RX1%GlT)1=; zRefk7+$?lF@{SP_b}2e`*y$O8k>br&wTnp>J!KHhgU%uf=t8ON3^RID5m)u>&8w;% zz@-&DZ}cpHm2A{ppqK6W1lIpav2q;0-&j~-?NlJ1JfR zx=NJW8a88yiE&ifd3IrRo0l0oj`g>zUL1S9;M0p$56{h~gln`y3@UOh^_F}=kTa;( zE-XUX%ZEDG2~>3u-d0_aO^$yj3wVvekRzgGGy4c-5Z?U_+5UK&>m4BiVP>74nh@r_ zb4eic!zs+Ne2cCvK@f60UtdL$+^1vZL^vOvj+Qz4jycWNR7v>f`3mHM|1K}h2(k8Y z@k_QSqv8k26Er4tSeKSLLQ?ifr{7?pR?EbC7eW0r5Vt@ z#2_NrZi?rDJ|!>-=`uWWIG@A(z+axhu?pLpE*d@_=Wgt%@kPJR4CjiPF~+;a&C8nc zZctF@7Box1^}Ib|gwfk3%zMfIz=?MGBpg#7|7&5FkL0j459KQ8Jy_kKrpF4YM`ymc0OiwVpxtk$2hNa7@r;CkloTGc7qoMN=`8 zb>LVoMJPUIJcZaYa^YqfJ^mggP(?JmSr>{U8eHaVzp*eh4Lec-dCg^_N>Gcy;YXh( z(f6@S{gjMYnvmdaro6Ie87~D_c#lgT6PLZ+Ub+w9i;>ZqhBk1Ex?B9@dFn&a|EJ$Er~z6$ize?5(uC%u_)m> z^i;5zaw+VqC_Rp1vuefvI_FzzUViNhj600@ttPoDCv}SIUwxBFbkd5}8eE46u)3HT z^tzV;NAgXyE`}U0Uu*k44{=E&O{KqTZH5ELAU|EKvx5&67c!&U`W2r>tO#7f3fk0z z_szK}bMQtL_Ln67{^kMr+5p*TGx}B7z{ueldp62nH`HU2fZQz$U(^#ecaT`@tcaJZ z4qD!q5m^#8=*W+qd>F9m?GGVax^C@!51|&u7G+coW=vXjgGcR>w3?muThafApA^l{ zm1+sc1ufi$I56J%%xL3rb3MiMY2#<>76?f)F^>EWHR$XAbH?O{`}IVvb8mx6GJG+m zOXZeoGQ!=RxdkNTn30g=rP;5!wjtUl3vNY}foaH=^P-sL?;kmtz6Ey7^fqQ2&z(Xk z@Cyjk7bXf{6IuN7?NPtCvf`?^*JfoHtEbY#F<-VI%u7*>sAO%BM<>i4^FE!3 zzPfUrg=Em`PfozH=sr+e>9;KgMgL?oy83njm!m(6Gu*GFnPp3!lp@8e>0v&HEp$gO zU|e~*0&`;d$G2G$LJOb!Rnyl-j?qMJ%p%aCSYxq zMD~K1OI!;ku-=5RvkmSsfbh4fejX-jaSoY zf+0wHX8oA2C}0%SL0KYoZ??qfu{ZjE9aYsYg*-EMBG{iflCT_ld1vu|JR(-KObZZt+IIxmX&3z9G(Ij}^p^PW7gQtLQD~~~mw{3{c z2NwJWXEY6I3D5{>fwsZ=R*PdpCD<4+6{^Jh1GIQjIM zu+%06RCH*hD}>6c?67{$YbaH89X0H4pnOo9NgwC`46s)HQPu0tdruvYNguo7h+*kd zV$)u>%>D(bh5t~Wm)E_|tRDfnFh&$6qS9;EnQ?WBcx3gs{Q1xRYR4cX)#vH$iovym z>V&}dAJ)gO$f5wMx1T@o7YYgjrX_$IbuhiX@-tO~BPOoc?~D%nZgaE0aCy|byBF{7 zS2UK2wJExAFzfYl$d}QmJ(YO}cjDjmW~nL8J=! zx3r84I9pu_`vW<+|0`{&vH9qebwKyMw^i-R_iCjAM(YhoWYQ8sWJA z$ldBW=%FqC-&xj;2P2a9>8Xs-wr&b`D$Z;w{4{^hB%)lxqxYVZm9v05)Yk&KXRcc4 zAb#s-<>%O7e&T0Pgtcv|rk;8s{69sD-97jXUkj&kn+GgfNQ1noI3IUKt#pKw9ih8c>ZB9RX@J6)4IPm{LxhsQ*%NMzq7)G0sXVLOA_j~FlHPmYRMc#8pgSz&OFP#Qbt)6{rOjAUG&9GwYqpYooZ9^A^T;Q8MlRQ5&B?0?BZAXyB z3@#t{4Kc9S*#Dsuu%! zPVgW5o!Zw4{`&Bi^WgW3;8!;j2q3VTHp=BRaN50w{yH5DYg?Lq7RHbbACbuOs{dc) zTRSOBC8erh5U#)cQ!hj(Z<_n-$+9cZmKmMMoA(MmTJF5A{Eg6Y2yU7=oVosYN>e|6 zai7%dVB;L(EjQnZt-o<}RZ-7nfZ6O`r1^Y^6Ud&C{xDu?(9&-X{M2$~M{7`W&9*4+ z#ZXScFGyC;xYEheKZ7Jx+^Lq}Xk~C8rbcs1dSxg>CM7uIrv*+~Fo7%tLD2G1h}Hm@ zstHUnnvvv|2uw`ctN3+jkD0-`VO%^NfkA~8oXEcgw6+)(dQDw@2DWDO0vl(|q7OR~ zSF=T&)U|>aW0uy7*xheQytOUEq)U;|=n{d4uiawg63PoV_Er5}!rwGQH2A(%orXDF zw~mmcs1P?Vs3uJ{N_d_#ORee<|GI$!ZoF1R4sK{LaA;G{*%upp5A<*K!)FJ~Jt<7K z#*9Tw6@#~5JE-4GQv?B}GiBL-m(p~d#Mr*EoNAh)?Zio~5w`BUmMp!@27mrhzs0J^ zvDiD=_fg~_~#OJ!(;s^}DV~pK8(QP?gBWxN~QZ&($z_hC45$ zaWG3GQ}s{FX1AD&rOUg`HQr+FWkeTi^|Ph# zCpx_O+8YIVzF)(qCl6m*{51sg<6EGe9aRtYB}{%hNQIZl_&J5Kcv+I;x^#z8cUu8j z^ZVn-at~b^wjquT^N-wjce)9+gXr~F-tR?qnXbGOXdnH(iKhH&`8?u|EBrp@DFf(t zr3Z=`T90lC>P@xB1bnH0&t1s7w{FejB55lkL49lDaoHWSh?+_&MY1vd=z)MZ<)Bkl zb62c_xWY!RlElj>5+B2V<`E4C9G1wu|hPxfVK34zD9IfBw zb}K$7d#@lRDC=Lx4a7)UIL@O50klg>FkLEkpDM)}`2Y$1aV!l+_Agbxf zNvOysMRVvrY#D3p7Tm>pwgpA>bfaoflRU|l2bWZ<#E*DY@9kQ^6O!E{&A?KG_Nu3qF(v5qR*NZj382I^qS*)9EG3qq8YK-bz`c4)D7>YTQkqZxm#?|cA>9u!`~^4_+I zVDQ$1?jgt$$Eqe(q4GJK2jc|3+3=D@A}>{~^X1oCpiTpYB-|rdG+Vv~#_?exe8{kV zgMU~QGtrZK;x)o=uR8Xy%MwOP%+HNboX_TrqQiXm%j%ko={M_^9*CN=t!$e(%wo<+ zGz#vbxBdU2rvFo@DSx^4MAY32@(qQm*{WwIrCMw1Vp)nxd;=}S9PzKelRY1xb33$I zDTZK;-Se8Y=#*l9eYO5tU%1pt7Rb$VUTIy_lMdylxj$n%4ol&P(&?SwG zpLZy=zvll(E!o+b$#1&J%wlIvB4t+2|gNS5h3U@B5AUNBV?**d9gJx?F6uBx}zb(^fjYdQWM0gzEFah@?H zFIcTyaU<(7P;?o}#i*4Z_(66r)Kxy$3J$7r&i%|Pi&KNJpb@Q>unsO^2}>2l8ZHUx zZno~kw(V|ENd`_gg?}W-z6`++a^EnI@1l2!q&GVo!^SW)?&Qi4w9x%DSl+<1K)@}2 zxX^ueVWRaz?YX>XdwkZ;M}S-m6RX$R@?#TNQD>>*|KT=;9)Y2|R8da+adMp)ItLQg zrCELxW!%g_lg`)pWm|Qh8B#!fO7;cEb>?rE46K}GB>5Ff6%hNqoxq?fmG<{Nw#!i! zt8T-(>`V14orr-YnsWWu4eyQgov5=sCDDmXF{z7oBAC{2gw>&!zm*WNof)p*qu4*- zrtqAS?f-_tY~5^XF}S=<_OhJ0pT?xvdcPAR*SR5Ewff*X0*&@rk~8y;{Xr~sLA3>+ z^Y%vKxY5(S_O+&Z^~3s0nX$R+xzRhw)8tP^K@IAMDEayb_NR)|C=Evz5fI`UGJ8ZYTcVs z{sVH-{s-hlR+|sd+x~Pn=fFbzVG zb%A{Ofm;}0f`pha$N>fM+0%}r2VY%X{XOnoajEK;#HoIw>V&Q@s=ll0aH#M3Vfb^V z`}FCp)2}(_sljhe{?(EHG~^@q>Zx<9mi<`w;k8q*W_{dSlm3FVvjy{^PjBYVJ9{4A z4RW)>u6zB=t=*ITta!5!*S)}Q1-{L1c|7FhNB7v9C;gRwX#>w>0?$+d&qTn+bf--! ze0@b_&O^OjvUyrUk!Jj$W@3`Ph-!n~kY(&N0|n(Q5m^gN5?K8sX8i^Ru*bnxhp zR;gD>`V%tGcv8!F5=RtLLlhFfJBzXOt9&_^w%TR+c4CIfr|14010A zy}w;7q-HFHBod?|5(KdSYdDrpSe$LhNrD66lCxeFC<7@G23C|*B5au? zI+-*+nJhu~l{*7EaE211RBh;qI=CY(%p)Cwqpe)_b8iMr(9{IviOIqoE(S&C)LP!u z7IlW-A?g5`BOo$YumtYklG(jBSACUN{pSQa@Q?tF0H8`Cuq8rZ>bT!c$Nr1Q0S{Pk z!Ba>OC^9e-xD&9UU^21@WRU3)cg$D_g5aY#dAvdqE~0AC7fLZUs9GhNH29y zf=@_ch+D}~qSThwagU5d&(S|;LlWEqua1SYP0TCUgO88Rc<*vr`V*32|1?r z(Q}H1iis(v_VIIuhH*H#26nWXw2z}~;c8~?>2tmY&`G*Rj@ifh!=_F+^=cLR|G8}} z@?gp6<9gPi#aS~X@H6fSCZw=2jcM+~sH;$L|G_i|yo z6MNzOfu%~y`9|?fZLP-4NLRE+#eUcoBs_fPTGn5)=8_dK>e+ds)!(GX+pemb0==@h z?wAFnJj>z};moSg$?2BAitg!Re!8*XQO3B3EtZINeo6x!@oS_ne|Meb6q&|OAd2nt zDPizsdn1bV^Ro^FY#0aW8(}IY@e3dW7cWNxoS-7J0-<_7W;EZrQtN?HQ z2oc&~4EmEShtqgBfw)Ox-#h$)Bnr#DD;lg9#55)M)57@^OtJRi2K!=YH<)a>F} z;YTP6yR~u86XjO{K+Kc-p<_kX|DTED4V%mibq#0fGrPkM;AzZIs%My)jEw)&(lOc| zRLFl(I-cu%Ip(Tb)_%SzINRuO>0%2YRp-O=Q!RCZROx0d+}`1Em8sNUuF0WTp3auX zXq4~9h4H-suPvWJ!h5PPVpUW?%+4Ss6cU%wR$MptiAw>?ZxfvW3v3Z(p$Y*KgMr{& z20~#LB1Y4QHX6Ln1Y3~<+Jb7Y75=fsU5(4pT(#=exI$^50A-!UPDeC>>>)X4M#wtN5`QOI#Mdv;m=?`9-~U6Q9HaW5kG?KQ8EzC zHXkk2`E;Mzd}k(Zp*Kh(J(v+!7~XX_v~hCJjgmi;c}t_@4e~AWGF#oPd8%jBCGq}m z*jxYxoBP^Z?>Z77N|)!$r@rOfWwJ()=%63O$FkNL!eZIQ$;L#gP(s5RliQ`#p!J zp)6U$vff|=p$)y#&T5EZ8sRakXcXQq<%*n|uzGCyZR9j`8tY zH-hjKEgq3#mlkxLneGSNb0YEy7~%)05j-Ut@uD-XR zgK#)#)>34oT9JAov`^srZ%qV~C0v5w{-7#Xx^D}2wo=6&mUkjji=)XRFAtcDfSw#- zz9pfz6oGDT!iN#t9Zrt5`I<-EgbLXd8o3rKOop%q)}&wuP^BJd(oEDy^}E71`c`bA z4B0R!UI*#!TEIbB9%|dik={zFbO@TpZVc!~sV((75yNE9-G*jPU?<7#u<(b5yO6&R zT|s3}zu5wxAU6>pEucZ3!OfDjl~j?3FxEuFhqZ%7ei~*Bt4|q&`@Ch|$VXyMFvx{R zc}Gv`EtCM9H6mc1jt@jTgEuDJ3i2%;VgobCQXK1-hRblgGFAy#GM11#IK#Z9@6*LH zcT;S188X(_cpob~58;N1S;t@iJ%tK`78qg8EIWPu-5oLk z!tByf6}Ug%u1xcxfZ9fV9#ahVMkXANjGeg^Jy&6>CdNsVjS`X45l$~+T?Dt*2b&z$ zpw5)I`vvdkT^?(zDyp-QyZ6*4TR@R4P`;rsre|0!GMOZLZ(A~kK{}He%Ogx>ysCPd zt`YxrU*PO&zFW_hvOFjCZ+{26z|6m3eyP?Xs#;4`;E>C5TE?t<9ROVT^$3ph9uTOI z*Br81aDnt~VzL!Tw?sPf6(GY$WQfk8DelU(5#b$Dq8lNqL@O9HoKp-jJK5Mti$m-^ z$8aB!G_hx4rMZ-|E2!c_u5~3Eyd(fM+CtAG(e4xw-@WFg9 zW)`6ZsTqVqvAaq~PgtWWf#FNaAcx7T5Tj3lWp5Z9QM}Ite0`2D1gTJW^~W+uQq2v+ z!0Sk3rWlkW{3vj;h7kKEc#;8C60}rRv@{k5hspSEk(v13Q2QDaVv%hv?0}q5&s8gC zGrU(IaPPLjG|6aSI}gqZ1A`3=;UTh2D}D zS^j%brOk~j$N~iJ_Ot>U+^I=p_DLsa8U`6AeTa=WNIb5V2DZRIP+A_ob9qR;Xo~*G zr!A^d!%xHm2ACnY57vz=Ot0=$CCY3(-QInA?;)OL*Yv&Rk+1<*<&jXmE;z?Rc#XVO zBK{@_dJ3G2YD3Sz>}?5Z8TfYIM+7m&=PfC>u^2r;b#6u*27(IQ5djl{g0k7iL1JlW zQT~z9?AHY}ikgfDq_<`73jO4%)EcZadWPFKT|`=vSeQESJ_R17?x6<}6Q%}pcMPQ7 z2qz@tyX5D^nNJ)k{v@Frif1*)()b=jC!#pyj}n?NY|`irnjBi!)_9^@$qYu9+DsQN zlo?sG%_hMX?84H^;cV49(|O_2dR2cJc!~7>y8D+$sXG}W&jQeHvJQ3(?(#$0NWY_r zyI&EvtJG&Z*5hc+jNfLDiT7Ox~bTI~n2 zhI=f=JVxDV`74d7`?)f>pWPpS{Ba^#8Dsy6a~(i!&;m;wj8V9LriW+{f)4~4S&64P zGN#C#C;?jS*Qh4uRTbETr{ZG1PtCk%Q5u1S^0HS;v!L?_^PZbUnn-1MYcS!?r*RD` z$hJGWcd^7%|6QY;y4?*_$?80 zrOX2e#Va?az0v?;)aen={mZ~)G;y*|PH>0HKob^B^}I+ytY$)~EX^!1sSHUB zcBPRr_HY&}ugmk|$7}t(phM=E+#gm=dhCuAmf1ONZx%=8i7BE0LSnz0>b8@6i*YiF zJ5sIeEc}Ml8GAeo#~=7CU-A+yB$-W0r1fhsMxOrM80jij$)WrK@|j%i{%O@boznxT z#bWI<>HY6n%D?>Kas+yCk6pC)>OV;TFZSLsNVYHC*Dc$&ZQEXD+jgz8ZQHhuRbFLt zm2KOuI`!XudhhPOz0cVn?~S+-`5|-6k?%X^jL680oX_|@wz#z3*dcB5yoyqnL2PA} zTt4k-z7DqYeNxL)dvNcdMu9^K%eI98znXN`Z-ExUsLl<;hWF~~#?b-=67gwkLSWhg zJaXbKl(F+D!m}x2++M!WRo6c~!h6N~YC{SAi0C-@XMXttzN%F*D|M;#c!Rb}x5l`Z zqqEGcJ<$MYH|q6pg#jjCB89l~7)F>A=BvTI-}?uliS0)b!?@husIY<~GA%wL>OEr<^CD?*X-p8m&VTXK3JlIZDC zx3y7lc1*#O5dm{NguV}X{7&`dytPRpzn~5q=I$yN;Ezs1VuUUu6_>Mc>b~Y}d+^U1 zM#^rukTtLbe#4|1aJWw?y)bB|V!#R0J^EvjUrw6kxDI!9Z1pwhq6T20$mGn|>@F&dZ$9h~CBX7(~=ei$9M#3h^3X!MbT}Ct~le zMpkgcj`EUIteaCHx?X5e#at^1^})4>u&@*j<3T#b5fZFouu?Yf<2Avsk0%7t;Lq2N z>%L4zSFJ-TFS(pIC?y>t`lgj93+4#E*!Vc!oq4@hVY5kYan@!ePj9TEroyTBfTOBeHM!jC@K-m;+I`Fv@`H_FPefol83@%UT? ze&MMG6uz#l3$!uKuo;R@;ANY{+H za~|~6q^tQB;{*fz^=3a5G%A{%a>_`Tt+SycHls#Im+B5Jg>7FdW6tkpL#k3U`*TXT znj4TSN2FjIu!GFIB4Qc7^%5nP+Wt_2zhgPU_;)aHLFr;Ty}F_ydBoZ3HHey2euDlQ zSPST&LPXQdGAa3O;%`pl2;SKSK`KjE`mG;xSH=uvxSb((erK58*2wDEzj`ys=vCk5 zBw>_kgkJbnSD2_D{UZFd5AW9<7}4#s@ri5Y*v3S+yS_|X%n>1IzATu#9DA)jV@NB@ z;|zyZ?;4RvD}bJAmXJdHQu2eSaM7 zv=3BfT~9QUbm033%EVCFgJhD)9*O%%aJQ@DcD=L8`OsPd`z*l}1fC=tJHQXLyyNW_A!38tiW{={91wIxh|=&o+Hk*F$M;Hm}rq9lxe~n_nEYa zIPKr<8~4-9y?If8RN`JgDVzvrxWjeJ*E`~tsq`YxH#&hUsg%AFf6F#qQGV=Ne(}rU ztx--bLiE&*9^z(wRMx!lCzkT!=nKUcLFMyOR}-Vo~R)W=vHl;bQP$mO-bwCt^}Vq<2=0`0OztU6Zenw;csuw`cLGTL0t} zRfLWxx?FuYh8sbgmeW};R&XL0X*_~Es{Zt9>Lqr80v_J>A;lZCLYv`?TL;=|`3=Kp zO#O>VjC+|^&b}Ya6dt#`tv%9TD^VM?zL)mKyR29{g!78fw0b4K$kG0S=mPUe!>)b; z6>!C`z}rl9oAYPCc!`mrLAAQN+!G49Mx>pLj03h7OXq}9<`X%NW*?qX)2*MLV(;Y8 zKBbNP%*_(IT#`&_H52zWv4d(yi`_I*nq{c3-Uw@yyA?^dKgantE=NJ`xr6PqkkqpX zD9s5-Rz@CxNj|A!A1 zYvycgUiHDZ*qc^g3!aoy;K&Rq|7>~*B~eHt9$gHbXn#2*@X~xpS$+~iIu=}1ubIjE zVy1=eCy|ro;58qE%0>Xe87<3GGNCV&OL!Txa`ZNlB|t+UGLF<>_nH(G2)N6h@fAEj*D* zN@W*yn`bo4>=^|D_(eFJ4C)0Z@uoKGozi-WsEqBJ(**8s-e_tr>x zJj5#02iFqCXgbFlbaXdWFD(zHnReZW9XFR@v=zD#{yga zA`#H}Oo^!R>!ay^Y^U;JHdz#Sh@Y5-$yj^4O;2tR*3@WT((;%_+;Q4jxyHzB)@K4I zfm7u9bR?%_j+pvYFvjyoQqKBgM7cZNgEi?*t!?$xd$Bv3UHIZ+3U36EgJZP9)+}jW zx-6)MWZ$p*;ny?4R%N$E?Xw@fx`dx-!fp&jQPx0i68dc-p=Riok>YmPuN`V-6EC1- zrd+FW5yq}hbK}VvN9bBq=2L{WLw{tS`m~*B3*rA%Jf|K$K-4+ykvOpGv;`XPxw^hA zx2=sEIxgzfCd+qes3?#L!=Go}sy@X!!bx%X@uS=l0mLF$sDAh~U9Hk*pGJ8Z;!lM` z{sI`4ag8ZZ9$#e|O0%}cfG~gU1b}=bE|Q!j&7uk;MB;I4fn)(y%Z&)S z<%_Q5@E`_!1QiXoo{?t0+!FeG#Ua8A5ODI9rbKHrs#p85*l!}6iM(l^0(C5OBrS^C z7h^qX8Ag9+JbLT_m0%#>>@4RQ*^4OFl{eCCPkb@xd+ahW+W%^G zY;1CHld$8Age3YZ;BU|StZ94g&t=rzbHA7>${b-h96X}Lp2#QCjJNvd67E%xDQOO< z7A}rwu`9_7C+;!uER0wSe!Z)R!ZtcJkC%Wd@8nH|P>XHu9a;*mI-&l#kmO~)`R!@% z(FM4Es+at6)>rrYpQVNa$N9ldGckNCX+QorNRlY9o``|tDbbF1vAJyT2EssFQI}lF zk6ScYypI-Z+p2-LtrEICzXDt#(R|7168K&z#Ml$#xdKt07Z{b{{vGKa*Px za=wMgOD*3*uCBuc{DNz|;}1@ZaF?6{x3jD+)PZ%AX%q!F$vgZIMU`K=698C&8Y zBj_f-HB@w!cPeM4i;xxxlLEBgpt&*4Y|kRa{CD%7yjUM?zJ=evdXIy2XY%!0hYo_wdoBOzY_z5Vg*L! z(|ElmlO!?WOz;P(qkvR=cMi?TzqSD=37|phJeT$ddnRTVjtS< z*{H+-;Asvmi@5gQW>3GF{_e736UY|pW_<4xzIkSq=Nvxfn{N{`yUL2z{X@4C{%HeB zb4an$W!;Q({mY*NKJ!oIH6iqn#IIUjIBk55aP3Gah;bJlbBCGKi+_gx?G%P%dm>Y# zsMx%sr-0p^TU||*@IVi3KRwDez>1#0@XJ+I5MXJ3K&KygD9T=$2aL;mL9~?rfb_dZG5+`uB{G1PD+7n^e=3o^bPJ2I>m2{L5*g6p?@HvckiRRD zqsc=Gt6y&I5yd`?NBG>85$im&@t>u6-%1HcMFJJ5$*4H!~x!J$O z_Rl|DLZ)kJ-s{Frt+~rPl^5gAxP{F>LCvEUaJ2|wqe8FPMtcM@j?EtGIS1nq+vp@u z)p0$+?aMD_UAbY2^~EHghQ)>uf@*+*M*V=Y=zFj`+0-mVX!kwmRcJpNQ4d zHl@>CB`A^!rObNTyOGv4SW1B`O0L81FpN&p0Du;lOfmT#(jM{tF!SKEPzDM0$1jVf zZ4g*_aIHf*Z&Km-Y-1RGtHLq;BkE-h8Wm#raay*x^D%PP?re*Og2_TGmy=25wj?)S zh~85DxRRy4U{(=5g198Om9hwEQAompx^wKdaJzn(%Dy*`#voaIs(W&uM}KzAz1U%a zOZJbDTO&GtORC>{JbxghR;+bO-GT7To#)3xLOx@ry=ZgXLEq5A%L1H@mor@-z#XAI zCO!+H-_>gcj~D)x($^MT*fsl4N`J@HFoKs?VT!6>^zbRuz23pVU4Hs&k|2D;tMcfi zzP?JPE3xEsb+seG5&Kl$?P&7hc@sov-h@k_I3ReJwvmyw~Ko&j+uBZ1;A0gj)P(5(A{A)8< zUnu-P*JdETJ%Vpq#c1lPW&JHpujs8tkGYz>4VhVD&;_mFN`=0gXSqgqPS!bNJiE0x zR=0Z|S3kYWdHgoga^EA-DY%$cG$9xy;3dwS1A|bhN$uPAa+@zIsO&peR5(>BM0phj zai_@5NEp)mRHXqwL<$dF4_$K=C}?$hkoE89K&Z5Mb7b7*i{zAk-njjmfFF~5^svm9 zL6YqF&TJ)Yszk0Zu60Ef;*N}qHny;YXri$_1l35x*P>`Bsp}24aU+|VB^&OGZ2kiR zN+ZV>7ZSeP(%oYRnwY82+f5g-km}-!LR4?D3jyDe(@(MVYJuEhsvw@kd-E}Nj|jLB ziR@fmcoRyKfl?ngyfQTRW56CK`D1z^jfC8}5>Z19G?!zf8En+>|0+Z#@c9-Zd)WP- zg~&6z|0P5Q(ES!7_X+)j5Lt-fe<(!882!Hsk+=TeE<{e;_=~isU%o-_TzH6{K1d0P z!AdZkCg#mp_h&uI1hvG^$MNU@v34Bd;wmikMtMCk%5gp_xa%g2N>nFouza|x57GJ1 zjmG(LR`#w}AEu*Qg45k-p8AH>cZUKjlkpe20MjqEY9y0Mz|_F4Mi#q+1) zBbrAyB`5~wt1Js%6;v03bWbjXGeT_!z06wg5Y*I?8(z@COb%FMCjWlN2y>T$@!WCp*K)Wx>Qj^JfWXS&1t{&hxQ;xE z{j@e@AM2CJvw&WS3ZbyZXzOS3H(lSN)iLdA^^|6-!#`84Q?0c`RrnNUYabi(_<>(p zy7XoB(di>i?+Jf@+p;*GGxqE+9M`Vp;*}ue;6z62+LpvV>M*?JCoUrZ&=jb(1>eu=v2BbPo@%l=7h-ev30`@O7Q7gQPZ5m>_Orxw0msyUgNr9Ev}2^<|o$N>?5Z;$0n0!|tC++ucwhl1|~vi3Beui&~+UyyZB+ zI%LKaf^m^j>TRipw>?);K1zb3TzAsuO`Gy;z!@^g?C`OCzX60%)&`-ORbhr%-wu+l zkiy3`6h0P074u-d{+*i92foT5jWlQDkBiV8Xz&(B=igtoedq3^0KQIm2CXUb<=546 z$on7zj%TcbS$V31k00g=wZ?EbL1DhinL7R8=GU`9^L8~C?DJ~a@$Q@(PhrmIEd_gR z&TxYA5dm~!GMQ9+cU8k%SBQQzY8d*XX!{jVK@tnIH z5Ldeq$JdW(AA>iZpuMeLjh3;p#M!hZf8_~Hh|gvzZ6lM|*1)w}&}XF2cc=^*ayzLwSof(eau|@YcYFLv zNAYyHH~SXtM*Z-d@0|#)_Z<(;6kX-BaYnId{IqYtU+7c(#{q;(Pf2>RMx#w6Y+i<9 zm@Bs$RD3{Ny%zHry=;NMf*5@mDM<=Qg}&Z@MJ+i~l>m@e6UfO@Y`o^tu-_h3r#<3% zL;K`RMJKQWyYw??J%9xvw%seXn&;8kq>cB4?vc#pDi>nIR~Xl~G!YrO^)&?Snx3nZ z*G1TI1x%6VF=qAD3Viv#sR5TosZw{~_KIJF+`WA!aOn@8r`ZKYz`XWH8E`V&)=v(5 z<{Zhns=S@z4Dr_oEGiF8XV$;JT25|Dx*0fXL+9fJOb!Wqq}!^_4hIVZ`?OyN^4U zQzL)Ox|c_AW?wl)Bcfv>Hcy#r+YW~wI4O9YM@eJW@DuGCiFW2?$d+zb1gkX9s7R6N zIi&xgQaWX#Cc1K3)OPtcBCD=6({-4t!fD@s8<9)O<~WZV5@)Sdt+|o)>nOO4pJ7! zrloJL%)i=$K|j9Gi=z0oiC#H%EAM-bldSYr^DEH;u&Bqb_n)BpY(KvIMC4^TmmU@x zF{#%!^=X6^B&uUgr8Jv^)3oRnz>s$Jnx{y^c6Q1Xk$QkN%@a;|akY7wPfVvp&=v^MOh0ez_J4GD<+vr@IG(P_-H^9VrFy#VfkAVF6|i{TrU6qiLIB z?;2>{BO&^>8L7ye(>E!)8{E|ADY83UGnt>AE*%X<3x~bxF+*DOuQt7d2p~ZJW2T^4@BfBNJ?cvQ8i~oS!VWNQSxT7AB-WHMTMOge)^_Fk9({Be&XY1R# zY@Q(5oaPhmz}smg%U{T6y-QQgR7fBKqbPYr$+#sp(|2B#K^}&v5g*_GQH%4|Ly_8Z zH%iL?8GGF0f_)e;WviX}Yoh4GX9YQ1qegLmQd7fR-KN0<2((W7Z`aR5xTeoAB96)K zCE#|H_O9gQk6~ImuV=~%G;fWuk1naL6rkve63Fnb(4}AhpY|RP+xfvY3c4geH0mx+ z-qJWWut+s3{(_9&)^)z-Ow<;jUKfBYU(`d!%7|lu&zww|aEgLP00gheF-?=v#`&KNR7+6cK$C zVecc*p*sYfP;UnG=OJJ0o?n}XE%xWog}%_aK*MMDeK*wct-x8?xS31p)G1X5n8Q;o zw;UKqB#gV0Ae0sbOJ|L_?GK;?oGIDa-VM3J<5;kMVy@0A&fkwh-wg)GJ{IXdj;KBc z7$N@q0DA_gkY0jg@UA>;V?ituK^zf53=n^Ox6ft#zZm?dkDRRsX8s3c{zqc|d*H1n z-eF)t4+7}gE5Lr9_H*M&H(N}POp<0`&o56UNN z7O3wfX#supl)$i6I)8I1>jPjC#vuc1P{u8RGQA00B8=d@;oTGZb&JfDg1n{(;(N|4 z0p7ds#{$ECLhf3|_I;{hy*?{M4- zKmke+1C^5yWWyBA16#lfSQeU}58#C{0@#ZYEP@PV`lopkTmpu9qs0CTeh>c21ki;^ zy7$lcJspJ>ev&Q382i*eM;7! zVhn7Ff~P$K7kz#g{XMvS0C@1c7!!anrx0MSK!H4gvzvhm{C>0iSTW-Ng5UcuVE8>? zL=R12fIyOgw!$8QssojjK>rQD$BO+se$PTu8RSwf*8*9sl=|=R`#>swm%5tSFzMyE z2@I?TK1^m7Go62j-^0h`)e8qjj~v2|UgjU1B|Zqhh58B@_v9wQ5N7nHO%P%Y#6=Nh zh`t8`JDls|$5#O^d<&Y3&l8(PJXc6F!&R9{$HQBg$=<@zSV*WNTu{EYpTBc1>ku&) z2r*Szs=b+N&GkEsjb|rHj4fxEhm3#D?uQt=%wF%}v!ENX^q2?CLcotA6jEL$a*746 zlNLsqa+1zP4RMkIN0V`pFh_@AedRr1a+8c8YFrR%TmmMFI`{qqeJ>9DEmF>I-}^#4 zBcWToTK~M2Z{6zo@Uq~keYG(cluJd|a;{e~tegseRv#hSyHh0NsT0*iLS)Uc+r+;(|AfII?y^1@YhWzS$#)ir}*m9k!=;0*gsQtDm8%=ZO zLkw5s*%*+qF`$97qKqGfk77ss_ZH=-e``?&?EP=i`(YMVIE&X4ZsWa<|0#O^!y+t? ze*%y3WndSzQEwuL@onfFmmH3BWK7hQJblC1C22*))GU3gOT1gvxgJ925l$8n2r zDLvcFC3nT&6kRjR+;jDIRX2oLt)jF>!hOEm81ek&{CxdEU4lZxI|D{c8XoPy*YQ`%`-c%I zL<}oIRi%LNk9Xt@6r6HJw<0O^Jh~-hp~u)_9Gpnbs`0jb$WKV;S&&oio%lWqAi20w z47Eh9pCql<5)SXr>VFaZ%dSN^bu~aTv{u(!{JVLFTM7q%K0JV<1x+@2YVM7*hgH~2 z95rK47r;wT;pNx}kQyyoEO|9fPPj5v_$t7Lp-k;h%RY&Dk(u5T|8P@w&NWy?$f`Y8 zT(K+`XAj8&i)R~*XG?Xo>K=pHpZho;HI;>(>9y%q=YR1&zp*xD4RYMECaixNQC_Ag zYEhHJu5Nte_eEzIvNlz|Qu||M%66`1H%YxZBHHZ5D!=-_=#t z)mv7*qaC=i`bXD?EX!WY0J>wlkU-Q-m(F%}?(x(GlCL;zyZ2F3pNrSQX18nh;u-Gy zZP(el&xMys5UCa)&Zlx&3%If`Ytip*j$hJM{7ZH<6zoem(`ZdB#wj@sJYyU?igQ8m1_q4F zmje;&cE-pC6*Q0(sR)NShdCCPwi3J6uv?tIrKE!_^Z`JGQoM^6=+u+J4Qy|%%MXT; z*f~?3&H0rJ<@1!axsGJ)I=T*|@$N(c!UD=@Ava$F2&<=;-$W2#kJs7=0;(d-c1B4g zDXE99s#gx%TaexYF&P9gyDbhK?Ke_Ia*Q^Q7i{k!L~-3>0Arr*pKcmsdsjhJy(|Np z1V5HexFO-Yi$a(Zm!h~WoBsy15+dmzR0!1jlNX`A5%foFb~X8;b7!L zlD-V4#nh;Y;9!B@BdD^Zus=e)jOXqy?g%MwexdeK^5b`R_X$SV?!K`UxX!bwNAI=h z#pG=HgcC^nTVSu0dzd$C6YNt(9fM2FbBNL(yPs_oP+WTtNo^hpsE08$c1#**0gl>+T${5d%u<}A)+yPZ@Wv`{0B5?tq=W_U zwEWax-sml(mS4YyH~P{KeyU*es8&b?{V{R6U&m)5z*K~qPY}DjR;04fJ!2WHV`iGl z)@as)%g`HTC1Qe+C9kgtUFY3_ijfE&geJ^Wo{qspAK6JuDZSEpaDhBZoQM3L?YV2sl&yK zq(p_Ois0=GB=!{qI}HF6Lu`X;i6n8Rd1ch)Pf@65ydDik^O6;v6Mx62HpUZK%_-Tf$nT7{6O5| zqX16!3<@p2)+<_OFzU!QoXHQW-zuwJR-#E>H5TmER8!j(ZlMNvdZZZe7pjj-(?~X& za=7aZqUgk^j8zEy?5^-$IJsN;{<<#y_06wqqm7GRx$VIcXWSt5$!58t?O3a{ynIq) zIKalluLxsG%et<{d3{h^>#*`}Vcg&!2zE4KMJ(I;$1f8E%c%hzzInYmTuAd>^Aekx zxV!j#deabrvH7re(%aX!FR+0Am8Uq&v`8^KRcP7=bLES5?XNvHTAQj90kb8s7;`NX za{lQJn~)UjJJDED@(6HON*OGVte*MzRU~Wzu1@;%AplWAIx}y!X-F_+hSY(n$gLb$ zo4bZVx&FVi8*lobfnZRkL1ExNQtCq6Kr=)kdv1T*6btVv$b9v9P(7FU8kapH^`=wq z3b$$w0g!*KfneR;?SQf!;tX1fI0w)y;11#qt^fKhPu>BsQpJty79Sf{jNuuIEQ9&7LOL6IV#MP`|_)$RtKUF~m*1XPMUfrySsk8x<( zDsqBarIFWm3@n7}m_A^B_@}3a3TpZX_*TBG#f01S3fw*)Y6q{86S@>`iNtb9@1ZSh z#6GA0mT0GDb%G=GLiTRH=!P9>qK3Y&>iO>2JlXd)7vKHU(KJAOvv7QBp7{;E2v&XN zPH@u%v4w{=K+sR+thDk|5(g_eY#cUXIIuz@FrUtG zg|cZqfzbQMpbqyyoF4u-T>>$>1mg5@h3F%*(EDYM|1_d-f%Fdt|K&Y$^=JQ4;lLAp zL_y{7Kb~jn{8z2NP1n@^*O7m0I(Ew1?)*?~y8SI093ZyLcDOBf zxVXFpvwH|1#j6u2Bd|u>6E4^w&Gi63B)6@@dW56WMMN>br1Uqbpf!a77$6=D^YdvD ztVNFfJs{$Zdeb<7u3E>oAgm>PL_Y|^iaT)f`8E+&=ZqV>gzCmQdkZO8egxhr5_wGc zGJ8myMa=Ny_MKOR{i)7$hsg71U<>%Y!~6+GXxozS&$k<*3?4`qh>cn2+Gz^QZYa+% zz-sS9v@HPSwSo8t?mh_ft;YEKcYZj9)=WIaji#0!vGx&mAZ~y@NsMW_f4Q*nXt97F zi%B343M=ci>VO$A_ZWQK;)Y)EBf!;sdhv5D8p2|rL%{dViFYqj(~$94)RH#q$(2T z1>9((VF`|aUjYymlGK<7!8_^@Q({K+7x@kWmHz5^iq|!H!I24oyJ%u`JRpAKT78M- zk|G_V=RFNNP36F0T(km<80Bl=OCvK4`Op zoWaMtx(GUSVRYyssn7+Hj)G2Y1nt`YH8Ku5dk}E!@b8BWgPi~Uf&ZKzu>v|940iPI zi$HI+{#P$_I+wrKs!N70_&@gj&+>m?_y2G<1>_fdKFNQcU1as^?_O1%|Mp~M%{2nQ z{^Pp*t^Vy7vq-98WAJb-gio*B2Eotk(yPs#UaiYUlwQIi6RT^JtA&eWY>~ZItHFy( z20!22-<@q;n#~@1-Vg5wxi#-IZB`pToI(VNo0E5d?`v;|mcX@q_&TW7nZGyJV|2BP z89Ps6uC#nS4%!s9`8f7eB3ndsUl^4&cXp_Qe)XzT@2#mpST`W3r&@%+yPX%uU*HCENe*KQD3~xuABSl#Q-22K&z48y) zezH-{ZaU*>>NcrM#tl2UGJARPlt&2|Opn0x^Vy#AvzmdO4)4XnM8W(WxhjO(?c0$} zh=Tz5Dv&MDsSM4(6m$%{c~sJDE%lZo+)4vP6A06TSYV)Y$`u^O&=G)OK(>u=N&Sau zrlKu`Oz|gkXhj+o2f;}K9<(dNgy3vNY0sbEiMPLjjR4;R0DG5~UrMp^!7eXG_yB>o z5I!f11~cXTa(`q2@&_|VW98E_7>1GtY@CCVL$;2nvu36f!it~r5);d?x`$DUWN-F( z8&|=QCJ{}5<}sOz{sbw9OHmF~YN{|C&Iqis)JL2|#D%cMN1!ZS-Wd`N2^4@ zH5%n(Wl*2WsvZOi4%b<;5|m}*W|98RW79}hDaHaWeDxZNwy4902C$lH5x1Xm?7-^> zCJa!Ji-s8325J)$%nF+cOAfP0D%6MU++FE#(2P@|xh(||NTQw#HU7P21luqNmJI$D zOT2#g$#}P63l!Ki^$xjMDc?Xga`FJ?PQLq~{3R-dU++7-qmKH-98{Z(B zJ-&1&bX{Qz`zVMgKP42dpmCkRJ#B}9HW`d6De#Pg(XesJwx$Eg6oS5`Tb->6cVkBS zsuo8BCFDcotQ^o<`jjv16LdEaG2jf4xg$=XkOGt7U8KwS|#I#l{dkm*H3SWNZxL z79A{GXPD`YyAy@cX;5KbmH3DX1$D7t+b?p3kZ1#sRs-wRN}ApChh&?eahO;>*vkzp z3UF;{Wr}KF17oy|M3day%UlF)D9<5sp43EFWa5!T&Zs|Nh3ct*nE7FcpFtJXZd4@%4(?w9CzJ%m*@0XzY)IfnvI{HfFMR+H2U>o6)J$Upc}4n zUh{m1=ow~T=0@|UTXT;jSE%KZhAr7kgK!9}PtS;eUQrKrA41xB8lk{3NU5BBY(I`u z7^t}8u(TTyR$61|K$<&9dq@Ne|M|0jh5-~NbL&e|?*x?&GVCem^cUQ<-CTl!Zf7pa zS{Fb%r5m#q57MMP0(XECn??2ULDymjXjB-b|AmTXS_`ekUY*<@2v1(%Q08_?q_{a~ z3^6M#F+j~+wV&})jusgjt+td9$UMmFa^OMfv+Sw)?0cNXWMZDP8BFW_N_{U%RX`ye zRl8$tjd8b^_V;MwrpAOJs^x^TeoryMFc1e}cw!&GV~qeCCG_k}ZS{K)j+hoj6g-dq z6u}x!9d=wGPfUA;U3bLDvBE%HC;@7Hjza;cUI~qD>UD&fXdEUA{D@$2K0E1gLGe30 zR57nn`tKzS@EF1|D$_IE0rr>SfgM9cgH7{e3Q}>7P9)bt^;#Kw>axS1S4`2cNBa=+n`uz- zADI{YoRGGcY-}0#Qk0IbC2i3vXq7~f5QdS5*U&x(27?G_Q|}B#2(8DVWy~)D;gg98 zT+KSdKoh(_e8~_kyt4ZuXQYr13k{%z6d5?Sp&(Ph$2k@Gkqtl;X3sJ6G}vzF>2Ksc zw%69wDj|6eVi1Nri-FsQdu(*Wr)QHIY}yC8G$>#PRZx^6c22o+?V3+66aCX-azz`d zB2NfynVjp5Vy5kYcEZFKPKc$lnbK$MyefxkP8m2`1Wi1?IM}#LtwIVHtMH7q+zJ6% zwvaYVUF!xjO(gOK?P`!kK}{ld#B(^mHc7>OmLR)PhJ$FU>~hZwzK5pN8WbHnRq7gcS(80 z?SASB)Sj(1dQQU@XZw62X5L@{fGhuxH!RP$8W8}sFvJs>l2znB*3`#*Jjtg1cV7EK_gLqx)wuPa#yNq%bhNIv$$az zu^#6^i3_VT$@!k4MB}bjP(w4fD70Y28#0mEkHqjJ_m+)+2yvi$ia5ubu@W9mq8Fkr z5Y;mmqovi04CLpO1K?HW)?FB{jFGHj?t?K$a8xSP(6-s)O3SN&nf9Hjy}U&)w>IdG ztl_vh+w84-u4Oealfk`Xi9I673I@`%!AJ(Nq>r%KXd)18FlZ!TMW?=_#Iu2k)*y(b zu*K(9l7QXtw!sy;f4J&8gXe3PwqoOsl(oFTp=Rvwmd)s?>m+}Dv&k}94q@`Cun2e_ zgsrOI_lr>SEs*s*X}hm$2$#23u6d;=U^&7a{^7mFJMOrw&?fG->1qwGAyRRFZ)9z!m@P8z^x(8 z84FI}RNZ|u#B<&s9`*ifxfHp-x1k_Y9O%Embjy0>=pPULM7Sxd?H^(p2e~s*AQeu5}rj7DMtcQ z{-jX-G-PKw8fME4A*K_NJ49T81Vd4jH?ow4wbLptG&h=Zz(4SG?5C9>>-6A^w#U#ux5VT%Fe6a-`bTz*@moYR45X&u2NchsKvVkh=BVk72m zNeqkY>wqLaGibxH!Vd%?z-hG5-o=n5LXEn_pk@NxO#SNTGD7^mIaMP!Zy2EbMk3D~ z>;#ynwv)d{a(r63abycc(J;efT=9<~#vGH@du^t?>639o-|^ zOE}M7y3+T8-VHEhCcQ#YWy*TiSd_$j`8JmNwIKj0A!p{b#H?1n`K=_sS&OlE@Ddt7 z5w3l}Bb*!#<%(v8y6wCe&J#UnKeB`$2atV5?Y??2t22&T4=DqR>*y*$ zHK-1Ym}s6JL_lBYrtU`=)2w`nuai*2A(}pTnRFBrIABI!9M2ihf{T&F&nGfQaugl? zC6hB$H}z}H3C#m=YrfV4-+hb-utxlu4~8q*95u_r`%$404ot!lt=6g8jxW z!R%z`?S*V(XylLZmW0A)kTIw;WBb&laD$(DO#<&IW7K$MaMZHFeA`jJNx>b%JCS&j zjG$Pn0&!JibweW}rDQs&c!TPSWYC(@&&`amPoGAFgx;Ew9lCoP||KJ(u_DoMIDY#0s4 zrab8Cg@dM`z^B7dkKesIzsVouBJ5aLz6*8Hzq)?at@BqJf+%1m%UC9h3hu!dMsC`xK52$fBJ_9_!&`6D2x_EJNl zYkwFC&Y_j&9PYzQeI;ExKQZv8bSn_SJjRfZ6|j{;&;Hy=TFq((O3> z0|nRQr5sQ404o(VseBg%r3Ak(tgBlxrOoPnfWtGiVvNu_lUkXY#-y0HSw}Fcf8-fX zyE<2M7ktAJE&pgL%5O8aebwyD~V{#4Z=3Zm9QqV0#dK&P|}~% zW+-aLcRf0O(^Z`HXP$Za@~-Lp8b4rtIPvJ}JVZn)%!s-lpZ8%GJgtCyDcdJaeo+Yl zUCKN=$+VK6uZyIfXLmtl3BTv_G57D7A)wLo^93j*`7K1>1a^=28_>z8yp;Hk zMW%%@BXKL`3pjK7HmD6350K6-NC5j-d=!iGly(GO8&_JkkAzf{8qNm%nGO`PS z%{NXx2ZL$_P9>;BXI3*a?G%8p1QR?Ha^+>G9CVK?`J`}qa@rkuR@fvg0cX&aE3A6d=rcFPiGv<()X*b=F~`s zt%E5Fp>lK;V*KoHK|>@vt=k(7xcGr|+vlQg7UWdcf$lT`r-`=OGI+vN%*GTaZ{GRh zeotE#){10oBpAll zNW4-Ewd#9ggaioYiQ+k)^ zho`^pFWAkPXcAOL|InGK0O>7$SxNzxw&2F?#sQah))xG+I@v!?F7j=%u4+>7q7%2t zF&2+*T@Q<6fPl0_jF(hY9z&o!64oM`3K%Id-`1X0JWOGM#(LVW3#E~&y zdQV{EAx29eb#xI0CAP&gemI_E?vnuq5U$;2Ecb>(49i zAJo;PQzl=<7?o-|Bv~v~ZFV>1-L2;#Z{I(EF??rfW>+kg*x2{JlMAB=*GWaV6C^cs zmH!uQ_YfXB{|0Wpwr$(CZQHhOHC}iW@a~wS!9!Jb0tr{N$wAH z6Z8ff<$$2@Gy^26X!q@ym)cyvb{c^K1t0wgQXbLJ&QVR2a>O!PH=(;A zGSvv~BWJ|ApK`N`RC|VXzaZM86A!p>O#R^Y{h#1fy(uELh5Q0q-{MDsLlkr>)mF7S zImg!ggwsNqP^}7HNj0z*LdTj!_gJYohui>=oVT*xWI{#~R>tHFWv5%=5Zq0!t!1V*4+8D}GTJND z2HpXhx=XiFVi3wXXAvupK>`O#XWKf6IyH*~sDF1G24hddGy@t)I6742e4QMh$p@^j zAi2594Q$@7%6tzLrtGeKq}G#|9h^6V2+AWngmW|2XG%kysLp%kv8|p*psUi%;}-?V zU3i{xiIfyr-jjKm!xC9&f=@oYi<2rTl3sT(ftH!nO$DjW-z*cjnJTSaK(nO9DHz+Q z+Dh#rhD#T#SMn4iHcAbU=FsLfkuPJ5c$g}t8B68ZC~mxUZk`P)Psx+=77Z?)35RXW zZQ!46Wpw{b!_U~e;7o9xRy(z#hhyh zWuuwd8E3MpTMWt>*Ebc9E>^qme4_9sdCfL(Wkkk5&WYDk;UZJyozqSH zGXu7Dg_D^F*3pX+)Vp9MOoX?DGSHd1XkXm*VI4hB@9ylsJL&&5S$k;9E-BNC!MJ>4Sbij-wO$+v_2Zo z`K>?d!9zR?Wciq6ZKqt4A3TALf1#VTAtwsv#XU198Av;?1znoFz+e??8YeHU_@i|z zOifzLNw;dQSC`kV3YOsZ=z*8AMc@|aHyDh4WL#)p1UDatm+K-iGv_3u`hy}ap8Vaf zll}W*>`uXsj3QR%RX%&9jEr;L7%|PJ&1Kk5^Lz|#V?Y&3pgeQ8xrvUlI=hDUF4KQv z&#_h*%2O39t&>dbOjdh|+s+Tq>NGeE3G}3j(VMR}ob(67rKFd;dq4Sp&IIdCSB8;Q z&B0+ezhVA&amC>^W*a?eD7RH(B+xhu2@83GBrF0u#89oy)oYdT#Qh>fZ))}@C~sMN zvSGH=z1zGMm~<ξT~#)>(h!%00i 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