From 8277ef9bc21c2d81fff563bec5300ab1157f4332 Mon Sep 17 00:00:00 2001 From: Bernhard M. Wiedemann Date: Sep 13 2019 14:29:36 +0000 Subject: restructure files to remain below github limit of 1000 entries --- diff --git a/aide-0.16.1-as-needed.patch b/aide-0.16.1-as-needed.patch new file mode 100644 index 0000000..1ff5730 --- /dev/null +++ b/aide-0.16.1-as-needed.patch @@ -0,0 +1,13 @@ +Index: aide-0.16/Makefile.am +=================================================================== +--- aide-0.16.orig/Makefile.am ++++ aide-0.16/Makefile.am +@@ -55,7 +55,7 @@ if USE_CURL + aide_SOURCES += include/fopen.h src/fopen.c + endif + +-aide_LDADD = -lm @PCRELIB@ @CRYPTLIB@ @ACLLIB@ @SELINUXLIB@ @AUDITLIB@ @ATTRLIB@ @E2FSATTRSLIB@ @ELFLIB@ ++aide_LDADD = -lm @LDFLAGS@ @PCRELIB@ @CRYPTLIB@ @ACLLIB@ @SELINUXLIB@ @AUDITLIB@ @ATTRLIB@ @E2FSATTRSLIB@ @ELFLIB@ + AM_CFLAGS = @AIDE_DEFS@ -W -Wall -g + AM_CPPFLAGS = -I$(top_srcdir) \ + -I$(top_srcdir)/include \ diff --git a/aide-0.16.1.tar.gz.asc b/aide-0.16.1.tar.gz.asc new file mode 100644 index 0000000..bd24143 --- /dev/null +++ b/aide-0.16.1.tar.gz.asc @@ -0,0 +1,14 @@ +-----BEGIN PGP SIGNATURE----- + +iQGzBAABCgAdFiEEVJXNoXyawXqyOEGnGO6GOGAi71cFAlx1oEIACgkQGO6GOGAi +71dV5gv+Io9Qw73FxRmY6G7BmMlmiULmwjPW/ouU/8eVvFEmYxbUmPKg0YcesWE3 +MkmNBSE1QbeIOw+vQriPrz5guqxaA1oBl0JsZMiSbgnsQ23AA2/29ryrOsYflLuM +9/18sEpBsrtY+VCM3PBGZ3r63s4EeUwibRsB9Iv4CcZFwC30KLS6xi0tnfbrt4s+ +JSFAdYc4VBXvl2+jy8B2etnWMsIMUfhuiwdtXNxcJZBTM7a9159osv5kOub8qe2j +VJey38sAbcuN2VhhduHZZW6QkGTR4FRuubr+LBMCpLYKT0Z+2FJ45fer99eJYxh8 +Z8/08qKINFffczN/G6MBUPup/YbBP+PVEc5E0pXc++t/OXUYuQ3CgVy5Aq7nqrdV +s61eKORrOJo3aF5HBvw6cxOi05QNfUiNRl6j2l+XfBO+kO5vzQVpoWEOHD5w4cEy +MiqNUdvFGULtRHxnGq5XZJTcYtNyJqngXILP1JC8IPW1kzqvhi4bCb6Aj+mzIHyo +sdF5WFml +=vHd0 +-----END PGP SIGNATURE----- diff --git a/aide-cron_daily.sh b/aide-cron_daily.sh new file mode 100644 index 0000000..f056c8e --- /dev/null +++ b/aide-cron_daily.sh @@ -0,0 +1,38 @@ +#!/bin/sh +# +# AIDE _Example_ Cron Script +# +# Use at your own risk! +# +# Matthias G. Eckermann +# + +AIDEBINARY=/usr/bin/aide +AIDECONFIG=/etc/aide.conf +AIDEDOMOUNT= +AIDERODEVICE= +MOUNT=/bin/mount +UMOUNT=/bin/umount + +# +# if you want to have the aide database on a CDROM, +# then play with these options: +# +#AIDERODEVICE=/media/cdrom +#AIDEDOMOUNT="yes" # some non-zero-string +#AIDECONFIG=/media/cdrom/aide.conf + +if [ ".$AIDEDOMOUNT" != "." ] && [ ".$AIDERODEVICE" != "." ] ; then + echo "mounting $AIDERODEVICE" + $MOUNT $AIDERODEVICE +fi + +if [ -x $AIDEBINARY -a $AIDECONFIG ]; then + $AIDEBINARY --config=$AIDECONFIG --check +fi + +if [ ".$AIDEDOMOUNT" != "." ] && [ ".$AIDERODEVICE" != "." ] ; then + echo "unmounting $AIDERODEVICE" + $UMOUNT $AIDERODEVICE +fi + diff --git a/aide-define_hash_use_gcrypt.patch b/aide-define_hash_use_gcrypt.patch new file mode 100644 index 0000000..e643a00 --- /dev/null +++ b/aide-define_hash_use_gcrypt.patch @@ -0,0 +1,37 @@ +diff -Nur aide-0.16/include/md.h aide-0.16.new/include/md.h +--- aide-0.16/include/md.h 2016-07-25 22:56:55.000000000 +0200 ++++ aide-0.16.new/include/md.h 2018-11-21 14:07:01.347479021 +0100 +@@ -48,7 +48,7 @@ + #define HASH_GCRYPT_COUNT GCRY_MD_CRC32 + #ifndef WITH_MHASH + #define HASH_USE_GCRYPT (DB_MD5|DB_SHA1|DB_RMD160|DB_TIGER|DB_CRC32|\ +- DB_HAVAL|DB_CRC32|DB_SHA256|DB_SHA512) ++ DB_CRC32B|DB_SHA256|DB_SHA512) + #endif + #endif + +diff -Nur aide-0.16/src/md.c aide-0.16.new/src/md.c +--- aide-0.16/src/md.c 2016-07-25 22:56:55.000000000 +0200 ++++ aide-0.16.new/src/md.c 2018-11-21 14:06:05.602295496 +0100 +@@ -55,10 +55,12 @@ + r=DB_TIGER; + break; + } ++/* until libgcrypt-1.8.4 not implemented yet, see doc/gcrypt.info-1 + case GCRY_MD_HAVAL: { + r=DB_HAVAL; + break; + } ++*/ + case GCRY_MD_SHA256: { + r=DB_SHA256; + break; +@@ -219,7 +221,7 @@ + if(gcry_md_enable(md->mdh,i)==GPG_ERR_NO_ERROR){ + md->calc_attr|=h; + } else { +- error(0,"gcry_md_enable %i failed",i); ++ error(0,"gcry_md_enable %i failed, see /usr/include/gcrypt.h enum gcry_md_algos",i); + md->todo_attr&=~h; + } + } diff --git a/aide-dynamic.patch b/aide-dynamic.patch new file mode 100644 index 0000000..ad95154 --- /dev/null +++ b/aide-dynamic.patch @@ -0,0 +1,20 @@ +Index: aide-0.15.1/src/util.c +=================================================================== +--- aide-0.15.1.orig/src/util.c ++++ aide-0.15.1/src/util.c +@@ -497,6 +497,7 @@ int syslog_facility_lookup(char *s) + /* We need these dummy stubs to fool the linker into believing that + we do not need them at link time */ + ++#if 0 + void* dlopen(char*filename,int flag) + { + return NULL; +@@ -516,6 +517,7 @@ const char* dlerror(void) + { + return NULL; + } ++#endif + + const char* aide_key_2=CONFHMACKEY_02; + const char* db_key_2=DBHMACKEY_02; diff --git a/aide-test.sh b/aide-test.sh new file mode 100644 index 0000000..6835adb --- /dev/null +++ b/aide-test.sh @@ -0,0 +1,11 @@ +#!/bin/sh +export TESTDIR=`mktemp -d /tmp/aide.XXXXXX` +install -m 700 -d $TESTDIR/var/lib/aide +install -m 700 -d $TESTDIR/etc +install -m 600 /etc/aide.conf $TESTDIR/etc/aide.conf.new +sed -e "s#/var/lib/aide#$TESTDIR/var/lib/aide#g" <$TESTDIR/etc/aide.conf.new >$TESTDIR/etc/aide.conf +/usr/bin/aide -c $TESTDIR/etc/aide.conf --init || exit 1 +mv $TESTDIR/var/lib/aide/aide.db.new $TESTDIR/var/lib/aide/aide.db +/usr/bin/aide -c $TESTDIR/etc/aide.conf --check --verbose || exit 1 + +rm -rf $TESTDIR diff --git a/aide-xattr-in-libc.patch b/aide-xattr-in-libc.patch new file mode 100644 index 0000000..08aa387 --- /dev/null +++ b/aide-xattr-in-libc.patch @@ -0,0 +1,23 @@ +diff -Pdpru aide-0.16.1.orig/configure.ac aide-0.16.1/configure.ac +--- aide-0.16.1.orig/configure.ac 2019-03-17 22:12:56.269936982 +0100 ++++ aide-0.16.1/configure.ac 2019-03-17 22:14:48.084669784 +0100 +@@ -536,7 +536,7 @@ AC_ARG_WITH([xattr], + + AS_IF([test "x$with_xattr_support" != xno], + [AC_DEFINE(WITH_XATTR,1,[use xattr]) +- ATTRLIB=-lattr ++ ATTRLIB= + compoptionstring="${compoptionstring}WITH_XATTR\\n" + aideextragroups="${aideextragroups}+xattrs" + AC_MSG_RESULT(yes)], +diff -Pdpru aide-0.16.1.orig/include/db_config.h aide-0.16.1/include/db_config.h +--- aide-0.16.1.orig/include/db_config.h 2019-03-17 22:12:56.269936982 +0100 ++++ aide-0.16.1/include/db_config.h 2019-03-17 22:16:01.303841342 +0100 +@@ -62,7 +62,6 @@ typedef struct acl_type { + + #ifdef WITH_XATTR /* Do generic user Xattrs. */ + #include +-#include + #ifndef ENOATTR + # define ENOATTR ENODATA + #endif diff --git a/aide.changes b/aide.changes new file mode 100644 index 0000000..3c85297 --- /dev/null +++ b/aide.changes @@ -0,0 +1,228 @@ +------------------------------------------------------------------- +Thu Jul 11 13:03:25 UTC 2019 - + +- Remove not available gcrypt algorithm 7 DB_HAVAL (bsc#1098360). + Add aide-define_hash_use_gcrypt.patch + +------------------------------------------------------------------- +Sun Mar 17 21:20:12 UTC 2019 - Matthias Eliasson + +- Update to 0.16.1 + * Move to GitHub + * Update documentation + * Bug fixes +- Upstream have moved to GitHub update URL and Source URLs accordingly +- Refresh patch: aide-xattr-in-libc.patch +- aide-0.16.1-as-needed.patch: replaces aide-0.16-as-needed.patch +- Some cleanup of spec with spec-cleaner + +------------------------------------------------------------------- +Wed Jan 18 13:38:03 UTC 2017 - meissner@suse.com + +- Updated to 0.16 + - lots of bugfixes + - including regexp matching within subdirectories of expressions +- aide-0.16-as-needed.patch: replaces aide-0.15.1-as-needed.patch +- aide-no_m4_dir.patch: upstream +- aide.keyring: added from keyserver, cross checked key id on + http://aide.sourceforge.net/ and a signature from someone + I signed. + +------------------------------------------------------------------- +Thu Jul 2 08:07:07 UTC 2015 - meissner@suse.com + +- aide-dynamic.patch: avoid overwriting dl* functions, as we might + load libcrypto.so dynamically in FIPS mode. + +------------------------------------------------------------------- +Wed May 28 21:51:58 UTC 2014 - crrodriguez@opensuse.org + +- aide-xattr-in-libc.patch: Once upon a time, 10 years ago, basic extended + attribute functionality moved to libc, therefore libattr is most of the + time, not needed at all. + +------------------------------------------------------------------- +Thu Jan 23 08:33:09 UTC 2014 - meissner@suse.com + +- seperate a -test package to help with externalized testing. + +------------------------------------------------------------------- +Wed Jan 15 14:11:14 UTC 2014 - meissner@suse.com + +- aide.conf: Move from md5 and sha1 as default to sha256+sha512, also + to allow FIPS enabling with aide working. FATE#315925 + +------------------------------------------------------------------- +Fri Apr 26 11:26:37 UTC 2013 - mmeister@suse.com + +- Removed AC_CONFIG_MACRO_DIR([m4]) from configure.in to fix + build with new automake: aide-no_m4_dir.patch + +------------------------------------------------------------------- +Wed Jan 4 13:34:11 UTC 2012 - crrodriguez@opensuse.org + +- libmhash development was abandoned in 2007, so it is time + for it to go into the library heaven, use libgcrypt instead. + +------------------------------------------------------------------- +Fri Dec 2 06:21:56 UTC 2011 - coolo@suse.com + +- add automake as buildrequire to avoid implicit dependency + +------------------------------------------------------------------- +Sat Sep 17 10:50:07 UTC 2011 - jengelh@medozas.de + +- Remove redundant tags/sections from specfile +- Add missing call to make +- Use %_smp_mflags for parallel build + +------------------------------------------------------------------- +Fri Oct 01 15:12:21 CEST 2010 - freespacer@gmx.de + +- updated to version 0.15.1 + - Ignore changed file name if attributes does not match + - Allow absence of DB_CHECKINODE if file name has changed +- renew patch + +------------------------------------------------------------------- +Tue Aug 10 17:12:56 CEST 2010 - meissner@suse.de + +- updated to 0.15 + - lots of fixes and some new stuff + +------------------------------------------------------------------- +Fri Apr 30 00:40:34 CEST 2010 - ro@suse.de + +- make aide check verbose to get started +- add sleep and sync to fix build + +------------------------------------------------------------------- +Wed Aug 26 12:53:54 CEST 2009 - mls@suse.de + +- make patch0 usage consistent + +------------------------------------------------------------------- +Wed Jun 17 19:43:10 CEST 2009 - crrodriguez@suse.de + +- fix build when as-needed is a default liker option + +------------------------------------------------------------------- +Mon Jan 5 14:19:26 CET 2009 - meissner@suse.de + +- fixed abort on check/update by removing the hash requirement bnc#406597 +- fixed version output bnc#463511 +- enhanced testcase to also run one aide --check + +------------------------------------------------------------------- +Fri Aug 22 09:48:36 CEST 2008 - meissner@suse.de + +- enabled SELinux support [Fate#303662] +- enabled curl +- disable static (does not make much sense) + +------------------------------------------------------------------- +Tue Feb 12 11:26:20 CET 2008 - meissner@suse.de + +- Version 0.13.1 + * Fixed bug with reading gzipped aide.db files + * Removed dead ustat code +- Version 0.13 + * Added support for selinux and xattr attributes + (kindly contributed by Red Hat) + * Added support for the Linux Audit System + (kindly contributed by Red Hat) + * Fixed usage of libgcrypt instead of libmhash + * Added file locking for output files + * Fixed bugs +- Version 0.12 + * Fixed bugs + * Allow http/https/ftp URLs through libcurl + * Support posix_fadvice() to avoid caching files +- enabled ACL and XATTR support + +------------------------------------------------------------------- +Thu Mar 29 10:13:37 CEST 2007 - meissner@suse.de + +- buildrequires flex,bison + +------------------------------------------------------------------- +Thu Apr 13 13:06:36 CEST 2006 - meissner@suse.de + +- run aide --init as test + +------------------------------------------------------------------- +Mon Feb 20 11:16:00 CET 2006 - mge@suse.de + +- update to 0.11 +- fixes bug #149059 + +------------------------------------------------------------------- +Wed Jan 25 21:34:08 CET 2006 - mls@suse.de + +- converted neededforbuild to BuildRequires + +------------------------------------------------------------------- +Sat Jan 14 22:08:31 CET 2006 - schwab@suse.de + +- Don't strip binaries. + +------------------------------------------------------------------- +Fri Mar 18 15:46:21 CET 2005 - mge@suse.de + +- fixes #71272 - aide-0.10-47 config files not yet converted to utf8 + +------------------------------------------------------------------- +Mon Jan 26 11:16:41 CET 2004 - mge@suse.de + +- upgrade to 0.10 +- #33600: more usable default aide.conf + (thanks to Dirk Mueller ) +- example-cron-job + +------------------------------------------------------------------- +Sat Jan 10 22:05:03 CET 2004 - adrian@suse.de + +- build as user + +------------------------------------------------------------------- +Wed Nov 13 01:36:35 CET 2002 - ro@suse.de + +- fix build for current bison + +------------------------------------------------------------------- +Thu Aug 15 16:11:22 CEST 2002 - mge@suse.de + +- update to 0.9 + +------------------------------------------------------------------- +Mon Apr 9 11:30:55 CEST 2001 - ro@suse.de + +- don't use macro for version +- remove obsolete macros + +------------------------------------------------------------------- +Wed Nov 22 13:00:27 MET 2000 - mge@suse.de + +- created PAC files +- make SPEC file 7.0 compliant + +------------------------------------------------------------------- +Sat Jul 15 22:06:58 MEST 2000 - mge@suse.de + +- initial SuSE RPM, config file /etc/aide.conf + +------------------------------------------------------------------- +Wed Jan 26 00:00:00 MEST 2000 - Matthew Kirkwood + +- Fixes for RH 6.1 and sysconfdir changed to /etc and /var/lib/aide added + +------------------------------------------------------------------- +Sun Sep 12 00:00:00 MEST 1999 - Rami Lehti + +- Some small changes to make this autogeneratable by configure. + +------------------------------------------------------------------- +Sat Sep 11 00:00:00 MEST 1999 - Zach Brown + +- First go + diff --git a/aide.conf b/aide.conf new file mode 100644 index 0000000..89f9385 --- /dev/null +++ b/aide.conf @@ -0,0 +1,85 @@ +# +# AIDE _Example_ Configuration +# +# Thanks to the Debian people and Dirk Müller +# +# Use at your own risk! +# +# Matthias G. Eckermann +# + +# +# Configuration parameters +# +database=file:/var/lib/aide/aide.db +database_out=file:/var/lib/aide/aide.db.new +verbose=1 +report_url=stdout +warn_dead_symlinks=yes + +# +# Custom rules +# +Binlib = p+i+n+u+g+s+b+m+c+sha256+sha512 +ConfFiles = p+i+n+u+g+s+b+m+c+sha256+sha512 +Logs = p+i+n+u+g+S +Devices = p+i+n+u+g+s+b+c+sha256+sha512 +Databases = p+n+u+g +StaticDir = p+i+n+u+g +ManPages = p+i+n+u+g+s+b+m+c+sha256+sha512 + +# +# Directories and files +# +# Kernel, system map, etc. +/boot Binlib + +# watch config files, but exclude, what changes at boot time, ... +!/etc/mtab +!/etc/lvm* +/etc ConfFiles + +# Binaries +/bin Binlib +/sbin Binlib + +# Libraries +/lib Binlib + +# Complete /usr and /opt +/usr Binlib +/opt Binlib + +# Log files +/var/log$ StaticDir +#/var/log/aide/aide.log(.[0-9])?(.gz)? Databases +#/var/log/aide/error.log(.[0-9])?(.gz)? Databases +#/var/log/setuid.changes(.[0-9])?(.gz)? Databases +/var/log Logs + +# Devices +!/dev/pts +/dev Devices + +# Other miscellaneous files +/var/run$ StaticDir +!/var/run +/var/lib Databases + +# Test only the directory when dealing with /proc +/proc$ StaticDir +!/proc + +# manpages can be trojaned, especially depending on *roff implementation +#/usr/man ManPages +#/usr/share/man ManPages +#/usr/local/man ManPages + +# check sources for modifications +#/usr/src L +#/usr/local/src L + +# Check headers for same +#/usr/include L +#/usr/local/include L + diff --git a/aide.keyring b/aide.keyring new file mode 100644 index 0000000..14cadc5 --- /dev/null +++ b/aide.keyring @@ -0,0 +1,590 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mQINBE4J+9wBEADaOHrCu7XWLSs4RzDPQMv4vCdtMASJJFBzXZzxaqUaDTZpwOxR +6wMw8PFwC0UphzbX/UBSZ1Q+31Xq0sCMOBfKA4hFVY7uDwLqommVVrctlvpcKNa4 +O1lov0pg7yessUnaidO+DoJ2SJW7pvvXcI6FWLXNENzsOWL8zzgIXrkU73hV3moL +yrfPXwwj+tppSXeOg7HgxRSUfoqKwVkCdtQEyvBI1ue33jhwL1/9RUg4m8ph2unk +QXJIloivIu7Yv0S3TgcbNzJJ7V1B/M+v1EjVKhtImp1iocxLctzE5d9G2MKfpAkg +c/9McV9+KdflpS5gWZIMHHKnsJ0dzh/LZGKi47298W0h4ce3BM9gGetNyu1f7hQi +9pumoUeMymkuPeuQv3NaecLY9LSvAF9KLWRwXXxoihDYlr4cbpMyS4jT/nFCd3cu +5CXBBIoeO2w+bpxs16LD83MQdg9vRKC77sgOC/O+gWIJDh31l4aystomOOHek069 +pWoOb1aIbFtaSYtVntyZ8DmyoDWvB3b/PXbxle5CkN/NPw9VDjZxqPSliTdUf1LG +EDPx22fFTHfMhjgC5XqceoWWCmvqy+4grHaLSkYKimI1DlhhVH6jYnhfBzcWDb4n +LyoRGOAKa0FurW5//I78wpkZCvTA4lTvJPHBI77+HlfiDjuuCMdFbyp6GQARAQAB +tCtIYW5uZXMgdm9uIEhhdWd3aXR6IDxodmhhdWd3aXR6QGRlYmlhbi5vcmc+iEYE +EBEIAAYFAlXbUMgACgkQxa93SlhRC1ptHQCeMl6V63Fe7z8SLGcBvQcWinLKo6YA +njYl3O69RqkD5OvuFXWJIQXvt4JsiQEcBBABCgAGBQJV3o5gAAoJEMTQEv/gFjeH +ga8H/ReA0zR0VWnCDLvFKStCrX+Pf69Hp7rzqQ8nEuVAeoL8DNsieNuz/K7YJ9FI +6iEaBicDDRrQRYEvPDThYZcLu8lQUWXhrtmHC6G3qXNfu+t41tIxTsn54stuVpAf +U2h1Vl3KYdFNWDpnWoTXSi2FGd0YNe1pr3CQXt074HP9ldzj7FOt6nCvAKXOMUJ4 +PqwAuUhrA6d91FTHLFZLv8iLmPu+H2US2yXD3FJ1L6Br5hnelEKj6+5F23W5mLEW +ZD97fvZPv0Ga+4c0XNrPk9prdC7OLdc91dlALJYnXKCwJ0oSglAv7K1U4YaRMzYA +HQQlFebqGhIRNYeCebCrCeUNurOJARwEEgEIAAYFAle+rMwACgkQI0UbEHqgOUGs +3wgAkgt65ZRjG0+4JhWt07FiXT1OkdnmZ66WK/gOoGyIsLdXyyW6IZwqN0b43zLI +Tya1xoUSKY0cCC9MY0ez7Jxpw4W3VZ2Ing454Q5056x0n8nS1eIxXToSoGnso7Qq +ZfCAf4PuThyJR8OUqtzhpFBUE7dcKVxgZ5FZXATv77BID8FTe3NskQaZOS24wFCL +gEvnrSEBuqVzTjzbhc5iszbt3s/Yr/KdsY9GjNMddGoPoovC1MhMnHWcFSqVdSyX +Ii5DTipTDHBDPpmJB1LpXCDWQGf+UR2MVK9zsg0ttLayWq4u0GGGBjfs+ROR80pr ++EXPYJDyXqNJ7wZbwHRzMAZFoYkCHAQQAQIABgUCU0hMEgAKCRAMsY5SGyTz/+se +D/9DuRqiR9g0oqeBCwKaN90uaeJHyaSIPkOKSIevdomBeJjR39Z0RHqXZkx4rOOT +SiESW+on/Y+Y6SXlh8Ik+ofuu9wpMztDtP87+sv7ggwqp1AVh3Wwm+nJf7oDpWHT +lFG+GSohQ1xrjRuxtBEj8fW0A8D0RWZNd8p0tezEAmLwZk/UbYrSXJnAKLpXJUOV +1UmNX9ZoqHqbjRo2RArWprFlpj7gXCfMsd5opXOqY/Qt5Prub1WdotpDUsrrCgZt +GwjnEVsUCh+jq9grgcDqRQRLqSw1oDgJoKM51MDZ+msBeTPreRgwJpXr6cQ2ucUS +GzdDXUgdVify9CacgsaVXHOY5ktSkYXfI2xiFzsj9I6rLIYt6EKjPxV0T7bsax/e +BDj9c2Xuh/m+FnoAZBhfKH2S4fkMEvQYI7XQRx1uf/q/xWRHIoeiv84GBxGpDF29 +sBJVMFUfuP10rFzZbDKBayfQ7LS3Un3URKFlMsXi+/HqdFA3U1sglHyb8ilQYI1H +mIJZWn/a6GTE3ZlOoA9rFy7hgDzIHkkrRZzwfMrjE4q6HBgp8ZvDhgM6ZxTsh+DT +NfuLSJsDI0fl+T5cLIywViIfSVQBrxq9LezJr4OsywM5oE1tjWq+2zN/aRaT7lWE +3BZC8AyOBbFl7xjwziw/tT0WtpN1kGWLkPHGvDhyC2doNIkCHAQQAQIABgUCU2c8 +BwAKCRDHGXaZspsjKoArD/97XGhOZP4bqjXphH4nmjewV1QpBrGIl9kov8ZEwYNe +ojpHUTGfSNynLdm8PGVDbGx3KvhOC5h4W5MBIEtelhDgTHaINJ/VJBL5q7kDev8j +aSIrAaLMo4hl8NN9Hac+q5+3ymYepb62AlJ+Rnb1WBqfOVSbR54wZtp0IH89YEE6 +Jhbqp/SNvQPPWyuWDxMZFcecqu4NNcBA4NF3rPmVPSsGqyj7yCUfHMMGQiFLBjyl +0J510DrG5GKOKpQT74AWe9GqN6CUuMV7qf88g0W/B2SeeigN6F3+We7reBu+QR3z +WdU04GfUv/HYQSNcn6IYolsNtE2HsNKYKSyBxN2RM7uy4Yv9JLv07GTXu+fMYm/E +qCax84gUggVhQfjy0K2dEaXT/GtLGCLNTbbuu4ysXiVVd1QV1QDKzEAc6uUYHSU0 +hJzZOYDgm1gGEYeY7Thq6wukvdPppmsH0yPK+f4iuMfDmOEX0xKE2exGCNLS4hHY +LgrGNbYdxfgOMPHIXZU2s3NVwm+2pGMrXUuDOpM08u8JB132jjFYWjpAtr5/b0VS +RAct4u4dLVGkI1cHUMFda8kJ+lq9IZqE21oSFo3PpkulrGALYtZCj0WFJRZcjPdO +eFVYanrvGNn6Z5bu76o6HXegIHibjpIv4Zs/pzExeGxN9Hemc5AD9TaJJNO0M5pg +G4kCHAQQAQIABgUCU2c9eAAKCRD5M6wZ7YD7uYR7D/9Nsg6nzsNjm7ppS/BX4sDk +HzjDXsKyG40T8muqRbeCzdtwDli/xrq64K+MwKJ/hpECrkO+i5ZDF98UezpBhliD +pm5zdJXOetJoH0mNUyvIk/0wnMltSxDJs8mIK45EfN27Unlqho2anO6fw7FDssQC +gUaSnJ7lCPmrAJGS4QJfvEoxKGNAKFLnXaSIQ9mp56uEHmmxMJlWCoUT3Pp8Rana +kaHCXEETaLRgXbC/zUzmmNOwgscNh9luwsK23TGqjGhdYQN5yE2qR4ARaYnhSB/4 +9nfdqfNJM+eP3YAfMJ1ioyIKj8AkfjsP07cTJ0+cilFAeAovJIZx4IxQ4/zo8Mwe +1Wm56UzpsGrhg/uJRnRjwv5iVYJL0n7Z41FK2ZmHapdMLNK322aB13n1nNepkndb +oTJpY6bwjpttQzwItFr3ibDjCRBiATarOCz9gbncCJ64S7VXjhj/bxLp3W1WXboi +V7wx+V7i+GeoqDXKUXwzsSSpO5FBkuFbjL0FsAFiTHQlJilNaNfKBLtoR2McfKcj +7URz8GL+Mn1ns3FqUpP0+aXx7sg5TPC33e46JB9cMIcPx4gepPlNFXl5K0w+/GSN +oDQwj/Scn24orEM6K6zMvBofZujsLE52Ci31WcQz70y/USBEyqfLdN+FRO0XDJV7 +DGbHCgHPeTcuDWriXPAGSIkCHAQQAQIABgUCU2dm9wAKCRDjrbAIUGBWNsUmD/wN +Ml1imqI7AEJflIOGDLzhoYIPM14TdtsVtsOtUIiBrdddZCyStc50+EH042WZYbJe +J8hfdZNEgakRDz1pym/Uwho7F0S/1X525glCx0ZYmv1FGT6UOgcjC7kCf9+/EOXL +nvnYYLhe+GAhnNKw7UfoDKE2It6SksJjgbAcK3WY8DIQFdEY/JAT4W7ZEBiPQnUA +2SfPUXjDY658yH+LNOD9EJYkQh+jAUddVgSMJxDMk3rzdn/roMwy12lKCUU5q4Q9 +lzd1eAPYilJeFPWJGoRdXkevgpIJqrhK5QcfkBcLt7x6bBYo/vRpm26Gn4dDf2W+ +Z9By8lD2jjFEikO04Gqf1/y1WAWrBZqPWZeDuCLrLdjXRN1HFEW5nGPPSDfFAfU7 +3msf6B1RxiPf8qgRd2Ok9qVGnQ4T3/GmJisVz2Jy8+R1CVnu4ravJwBCJ7WDYQhG +3XC/DtssjJ5Kfa3dlR6FQLFYJwtFV1jscj/LS8LwVAED/XtMyzQ0WVVbpyL/SGt1 +LINaot6sycaHiil9W0gBnIdmZz2UoRM/vK3KT4/e9YQ3aEq9YOpZVVPo1dKzxps/ +/OiRCUXfM3J5nowFHqiM/d844786CTRA2km3VNBzHdcysVDgZo5zKVMCTV6ZEUxr +ZIXxRSnhHD/ItWiZo2NIhdEf1cQbcQmHZYQvEtbPMIkCHAQQAQIABgUCVdTIJgAK +CRB7WFswgHwqh9qHEACMVNTdUJx9tX8xM8vLRtpT80UfK1yqQ1qJ7ZcPEprR9o+9 +rxduhQi+QrQssZhlnAFXLf2jQTy/6wb9IEMWE0SNEWm182cMluN1Ht2++nyyxNKl +jGAZS9kjLZpnrjRQ6z4uXVjTcBBTnqAgrTVSXEg3q2egJsu26uMuj2F2VGSQkRoW +6O3fHqmBBC6Po5f5vz0ghDWgNMzV94Jr+Mynqdb7LxZMwQxIh0UXf+LuM/d2fJnx +Qb3FGxZk92se4s2tIG8DQAcYidrIjtKvaJTIK/IzWyX6cRg/Dwvpf/G+grvwg4Xu +9pz7wv5rqC9w3HQJvmZkKgy+BpGtQ+v796ikJktsSO7mrQ1rAmOFB/cikagW3Ty6 +kaOSoIGsWQ4u8TQIL3DOjIX6F/VmAz2iyz29VTUtM3sX5qWVlKxV16lVahgOXy8n +eVPv2HDq6L2m9GwL6NnxPnQxzWzC9Mm2rmjzXtVVpxNUXx7syK8MChshK6r1F1E5 +1Lugvt2X0AFRC159CYBo2BcAvzdmVWTIN0+lBzrQ/41iMZOBVQaKuPIvbWcGKNO4 +uUR2rQvXV08QYzs0SZK2R96nkhkn9alZVynl7rhtK1ecbvc5R556yYvCVqZUNP9Z +mDEJfASDk58CXRvy0gMlmGjLrNYwIb1x8R51IkGwREvomJ+K3uY5Y2SPseS05okC +HAQQAQIABgUCVdbhfgAKCRBb5bnap+x8pyIAEACU4Uro2387WlCvDLGYNaTmZDdz +yztCv6/TUpBaKuMqUz+9iV8eTbX538RXVHxHDkTtmrEyJwnqB0r0UWOT7WEmt5w5 +4ROxgZprOq0hiNd61aC7mbftKuI12w7eeuDQg2ElSQqhjHqdGf0OWc69/YFCOFpy +RssvRU8HzSzo1MUdWE+e5B5zW8CtxjhdTQCIs3b+R8nfjuRiu3hTTVPUjwm97NB4 +65pYIHqmFA+se+wnl+prQqmbXRs7kvKb0WDo6/bK5hJ1qeHol4dHIFolCwWVvPer +2GWoD8ohr8/uFhV6N7j9WUE5qINlXivLA+9yfTqnZX+cX4HdOTTrLoVnwryu0FKd +wJM6aPyAvabQA+jK7zG9bF2Pf5OzXpKfk/Xg4DXqzOmOajhYTKm5Fhh49tZQu5PB +X56hJdV+6UrZ9XL9NP68kmFB81x8l0/Gvrv7eELPvBcdy29qX+/obbvLTqdpIXU+ +uUgQGe7VGiR+VTuRFjMOnR8LvYhkEaO5sghWiwVShVRXD73U9/4HZyEDZYkWQKV4 +VwObQvuZ3XWjTvuGSK40rg0eCsOKOkG23Tfn1Dp6veUGmHLe2KCvC8p4FBd+HfmX +ICVbkaqyziaheLg7bkqRF/VA/WLDslY864zZt0Jwry0cCScNwX1SMMxi2fQCyyil +P08UiftwBUqF7dkOg4kCHAQQAQIABgUCVds2eQAKCRBupNIxGi0mjWrcEACWVm6y +BsJ6qK9qKKRzlfc0yzGpOFJO0hAvzmGQKmlHogLa8Ht+vzkjrIBy7vgiUWlQPOlG +JMVBWDZwLjLrRx4d6GMgR20Gt83jNmwmYNoW1KBYy5GKIaF2X2qLPIJA0n2CHdCe +Z6DNk8tw8XTT7e77myNduyT5k3gQnjE5eKhnl44kN3wCymylt6Jc97Z75tAnOltB +tkZqggZWZvxPvvo/KRMg1vtVBkehpBHe/2ypY0pQ7eW0/WU6eEVeYPJOx/YkYvW8 +Y0C8cd2QILShHzN7mp2BTQQySbyaFo8FKavGRg17nM/B3nZYzIPrYtRAO5CQD0PY +cWJWppzuZSIbeilzXZ+WM7ZmItfCzqtJs5E2jQhyh5rynOXSXvvApHQ6yRxIMURe +5D5cSbcDmoFFKfsyC7LescxH94nUfSUAOxR+QjrA2BWDO7fS3kJmdQI22TMFHEbQ +oYip42aLEVtwhBtgVG3gmvs0EQVO6woFVAUucGtxpePoShOeAXCVxgJ2LW/mlg+n +x/guIfmddFE1cqE6LSpk/oA7vWtw5u5fN+PbEUbWiNVR2KhCU32oUO/9GiYimDV5 +uTzAilU3CfXOx2jzjZmx/nlZ+qrt+VMcGduX4TlfDxDpj8X1lvf56fjw4LRQA2Yj +Pj2jPQi+bOC4Be1RKinZnu+MwkpyO0HqABrf0IkCHAQQAQIABgUCVeAMHQAKCRDy +8Rwj8Aor5tlaD/9RLY6usOaT8cthrhXzuCSZOyLXDq5Jm3YL6knnSYASR3Ox/nlD +2yzLfTMfh6enseePbR5hb/1xS75IEfErTOrpPXqdJYU6EHJAW9H4ZjQ7uuvdNQGp +wyaiZHPleoiAxtC/WC8Lvt+Rk/yVG7/TV025jITkl4QdT5VDhkKs402aa5OUHR3r +Hoxa+Xy+t5Q8+OWQDIIrUK1mTU+aNb1DfffEPSz14Q15oE4lzrpYibPoDeiB/StI +d4h6ePZJoaiIReTHOnQVAvlS4EWcgbOzMAq0AkR0XdAdgPtYvXeY2AIl8NrNax7K +e89vuUKwdkVmYJl6f3kogpQNwnk2x6kZoIqM5D3nYJrlnN8Mg0Flp94vIqc9Iv8D +/j+Uly1w0NX757hw+99vfF9pUaWTJinTuMDqOqGS9rTtA7vYhGuguMmaNFcg1svG +mTx4T0Z50wIsrnBIl6HHGZh+D0O6BC/b+b92KA8VtExH7CwwDXBHGtD4NByPtEB6 +wLwlpKL6b7XjoZFJY1BRJacsxh42IGQzJGljgyBPGhyqnVUJtGQ7wo875wlYd+JS +/PgF0XXG4+XxOL1RiovnY9RCZ+Pqk2+lIaikOh4C/RFN3l/GTTQICn2Gt1208XJE +BcsWlyBLubdJTiQu5YrQC8tOdIEfFhd1JtXOWYddlCAMCofDazgZvKRU84kCHAQQ +AQgABgUCVLFH/wAKCRAJ2pQItOFEmQTZEAClxiihA/TZaC1PC0OcWfNpEYCyONOk +Qg7Qzkz1r2F88/yecx44oWVz0XI48zFwvbkx9m47ZhFTs3MeA9fUGFKF/3g0Thp5 +O51VR6MZDlzaQYzLgKG3JkVL4OLh6rBaxkBC4/t15DsORRDHFWJd7NBDE+qL512s +AjhDQVS3sWaLFSaEdAO1yjgk1EZoUXX/7Zz4BIdV6rUIr1+BBcEkuVz6f9k6Ujhu +yCPwWSCpo4wkJEU0qDukkaquV8K85F5SjBFUix0raf1//dhmSi688CQBxT0XEzsa +CouGamaAO8JJ/Z5u5qSllNeG+MxEDCWo9SybwiLFEbzHPjXFintQi7Qvh4QRX/Oh +cwniwika3D0mAfsLt90L+GL4xcGC0R6njZ+2b8CbgVC3gpLHZPEp9mlX9AnTQs05 +RNzEkt01SjaMaEnqFkHVD8CaqB6r2ZcB0JgOyoCVacSJtsdy89VdtmK1pEYk0fmr +zZZE8Q1YwTeSPfyY/mOdQ6jYT7okb4+Bw7neIwqomNn0mzYKJeGy/oe0BAPr/AHb +6UWM0Nbu96hvyguVLeFrmgY/nrQZTyA2h8NShkzM90Uc1FfZp668I5/Co1EX1JoF +/zIG83ndICg+qT2fdiERriBhKOXBTGu/nmf+G4KO15PsOytt6QghnT23oKFSdK2n +efvFShlqIXb1JIkCHAQQAQgABgUCVda+5AAKCRDAc9Iof/uem1weD/9xJ3obSrpK +Z7te8cEdikvF8pL8ZQSaRQbgLwOHijUv5ZBtjdAsLvfiEJjHCCMX45F95XYv6hSD +AQPJB1ngPc0YYGPltF9R+l6sCwejNJ1Gi2jjIjKpjvJfPHa+0DXNsfMxVU2tfDIm +RKvZLNUajU1Vo2bjdK4Xzy2NRFQAdn4wChbNbunnDaYhDVoDEBHbHimjL/etJDC8 +n/O7FMu7iXpHLDH90Fw0k5y7c/BVRFrxn43IdiG60ozBdLPw2a0hgNRG+nWtC+KL +nJBv/GWLMRGEMkB+tOPJ1DGaFQ6JzKgMFjnIG6aU67ed5ckIzVcdojTIxjOhflR8 +R+fRJAMwNwYVRnorQUkHwE5GGYsEWBp6ZoL0qulAHp0pAqvJt8HD0i6tZm7CL0FY +NrdVrLgMKNGZFcpamarJlMoApqIb1Wd3Y06k5QbhHm+NTKr1Z5QjdVyRdDbF4qUf +mHD1FKnNRO6HYlIznYU83lbZDmU3w9DJnnCigoYK7DStR8huSQ4rGCnV5AoNiRMW +cck1h/vaqnNzLTlZg6BP00BiE0d8zCvxkK6XTxOMYPH6JwnEUBhhCri0TVsJBYrs +dB8cvorx+vur/2Fq1XxUPGCMHwjHoJgSn3wH3x7tKe3Iv1LE4Y53a3UKETD6iAPm +MhRKTpETuXJ7VR8fFx3cfzrjQBpLBOOxnokCHAQQAQgABgUCVdtQzAAKCRBMWmur +EtKnrqHWEACj2b/TpM1iosPPQVysJ5DbYiMPDIXnHxl7riX4FQ8JqBvmWk0AWTV+ +x8HWCJbYv3934FEw5tYzzwQaZAW6CunWPA6GBQFbbnEKvVQpmHiZO++AlrajANEc +sIE1EE3cHIxO/6jxiHb9Xpb5YqmMPNoLhS4o//I3DFt5tiIXSzf+GRB/WUwZx54p +zKVoC/CVo4nXmX0ivRf3YbYbwQa0dbJ9lWiexGMHMfwBRdD+i79AsgIqORILhIwc +P9yaWU8iTacXZi4HIVthd1twbU1zmBNG8RfGBMP0cfH5LoNQ2s3z/Npz98rtA+YI +VUAjrMGj61UZkGWJjnsuj3uxwFfOW32/g8eYVukLWh4eUyfW6IfERxQmeZ82L6zh +MCB+14yC8+M22bWRbQ2LSfw123fPeUCtA28v80whDdX86Lel2Xqow9TjEGMIce/P +vdfO94zohGrmsf6ZnvnkuX7U1m62/mTb+psTC5YLH1GJRFZNwkvJggi0iZCT9iT+ +BL2HSAQ0PluP6YbK39fdlQ0smwmk16p9WBIv/U6/UGOG9B4BJ+L8vr8HvO9RlhOg +pdThDgGW45agvakdEpILcFFSuiCd0dAaqIREnFxf9c0cIs/zNka/Gdj121dCb9PH +f0cmDmpICVBXpDQrpM3wrGoDm7AY94A3ku6cCLdpOcCBxsW73WwXxIkCHAQQAQgA +BgUCVeWh/AAKCRAr+Nn+B0vN5LzyD/oCpsbNr8snZP5KnAFKb1gTIFa8322zLsMk +VNCETo+CauVans89meS1BciZgnP0edW3TTBLoJrdjLr73S4bmMXhKSRdOVF3HtrV +chsyUkxCii6YPskPOjpg8UR6LjlkUbJ38gyGI6P+1CwfxdWQiaeHzXiZGXOzn902 +d7/2dHO17l8usjsSC0CXNaHlu1aHQulfcPc8/0t8hsHNAfZ9gu0i8jP28xTM8dSA +slTSKp8bWtvjx3eREoYoPNpNynsgiqW9K3CRvzyFUtzDpF1D8r8ZjND0uLNCxI5d +LZcnMrPufVUzdZujj4Y7bJVrXfUfCgj8tRLDC9+oxxPLqLm0gtAjRLioi/aAkII2 +C6LcrA/mJU8ATeDj3a/ybVL2+z3rQ9pq8wxIlk35t/NQwinpRPoiXmXNYCAVWjIm +N2QwKVX51KcyRex/iBbtQ53lYlYh0ihBzAAWs3q0MD7lt5CInNPlRzIS3jBq+j5s +1L19tuOZ+NXm3oeWJehnXcL0Yrdnm19Jdy8WiePjs/a/Z/bhpm7MwWmMbhSwHsCJ +qcepIpntt11q1zvs5U7TudOXMHsVfvkbw2ZHcQD7/WfJfo53ziPsv0fk6YwafZ02 +ho9L/0yl7NOtZD3CmHWF19yQ31UTE9q65eZjTvwWXqQz0yRxozGGurtRTDm4KcOi +XCvy5PhOGIkCHAQQAQoABgUCVd4M5gAKCRDCVa1CzoFTnnldD/9hZabE1PEopr+W +sMYjAlwv/h/glU+EJemph+0I6kW2+1kDVIDIIJbwsvRJ6WIAn4Va7qRXwDmwEej0 +knCuEIbaV4I0Kvv6lcpmMXbxnCSHJ4tzB6zZxyu1hebEiw/6sSf/hOMshw/+zL71 +MKaoTTvwO7dmrpQQzyzTdN7pI50aiBBNEpLrtCcFHf5J052wUzxduTkLSilIquU1 +Xz/ju6rKHV3h+dLhS7hzUVJ9MWXAYjtveGUfkqegc85Mc+zDGwhlaniFc7DRNg4i +mLHfsHN2/sDmv2yibWD6fKtw9Zrruh96cIOqDo95Bo2smiitG1OUcEk+BP4WQIV+ +W3DYM3UBOno7F9/JHDmd9j9+7WdU/AGy58yM6wBJUxVeaJaRTYwAU6RIhyeZDe0S +xdHUg9XIR++JTslcfYZoBbkXHYVmq40B2O4mvKABgxuzdau44uFbjuktKsXkwqst +dw6rFNyoBzYauL71+J0YZ/14fGO/wFlmur//85U11clgrTcTDNelYWvY13x7Tvf7 +Owx8+dUpApG4BlZQU4yf710hejiI6uZDRcvFRF+6UJezmS06iC51ZzrbpR5bhrzT +goduOfGLRFmfYiRUxCPs015C9zpR+CI4ZMex9JVK9ZNs232Fycws6aB/qTkoKnGx +s8kD32phShmru7BFEgGPR4VN00vHrIkCHAQQAQoABgUCVeTuWQAKCRB5xD5iCwOb +NWaDD/4hm0hBUa4Zz5D2eFvpZ78g+bASLGT+EBSbGedXLt2+s4QpQFX3EYWjWoBx +WbhVcmoiJVCSvRlHfnSnUEFYLm2UmeBdPp1Nr0aaosgCkPir0n8hpCuM6SW+dgUB +eLAA1fxyfFZ2zEgZv3QB6sCWHolccNHKbFH0fWkyBtkqEjev4zZuuNczkzVHdBxS +JYA+OsSVyUZuc5xHdWNxL2m8YAicFYiWDM9kKm1H1d84qNHLKgXDNEUCdm0f/Thh +8KM/SKs96+S44xBpDm6R9VAIuV1LDZ98jYPjGc3UIWbNa43kRQ0FCFQz00SkHN42 +IPZ+NhUD+rAH5ugZhnJrrSJR9IFnTPjSyqGIdjgg8N4ck1zWjPsutQTr4P88WOMW +XdPdXN4yHvXNVbaZ65YvFzwc7lXFP5tgLi0PRawa/KFHWh8PO9JL1nMLEWilLrWe +0cTVFm3s6DIZwVi4X5bJ5mHcVh/6Dp24VNH/mddvXNC59RJEe37SCmwOt4it8nF4 +Jwm6JfqMMr3sP2rWHRfD7GvUZeQ81oRSiprRZ8wChYklpNpvfi5OXxDlyzmbvsAk +rR1vh+MatvA7evduBI22iCP2XmKNEWyhVHDecJQoqLyNjs6KdYEwzFdxC43grW8j +XS1/TYUPBwANDMxLwc7YR3u4Dhxa7AghyVjkjSANdm2br+rh5okCHAQQAQoABgUC +VeaAjgAKCRAedZpyap/ddI8uEADQsgyc1thep7WhRe6ucvcVGqcGGDfiZz4wR6tS +60Kg+BRMvAsrXd1N1XMtVq661TfpN54aGNC052WjTHUF9p4L7ri2FRjWE/I1xmVv +QjDI5rig4wvARHv+DnFEeRIsNjd0uU9fNfsdfsoVVnBSDZiGYqKzhtQjIvGvfUnL +ZXmUaiw3/U0sfbEDte0SWUb5pZV2SDPQiCACKjjHNbx2+9wN8Q2Rzj22HptRdhCI +gzpmVZxBbWFwIx0yEObIM213DQTKCBkcRSNL7D8igiEb+8EGxTG2V10qufRk2B38 ++kOPX3eFsM4bfj5avwNL7urwqf4atnfrEQak0rP2HQBnD4ok6CozcIoqw/2KbiP2 +lAmgVqB+D6SDSr9QZgSDV8aTmX+4HNUVbXnJEztVooqwAeox9rxzvUmLWo+CS8B2 +5whre5WGL8Qzd7cucKtqqwx3l6uHFzdAMyP16u8lf81/ui6elrSzBYgWUb8KgF5e +13/C1y5LSi5N6PiYRVLuT1yRR//7LnebnGgre6a+YvDH9OhLh7VW4qwFe3cgxou8 +74307ttR7BytP8hlpJM+sn50xrg0D0LDN6DRPcNzzXsXD8rkmPk6XKTe+h5Qeems +3p7oyjkJAjTyroR3Hgp3DE1Nyz5yDCFZIp4QLHfmHOleDdRor3mpDUR8Bg3aT9Zs +oAlHMIkCHAQTAQgABgUCVdHxsAAKCRBYeXlXNEJoTmg6D/4zp85VwFj/SVGthbRL +GhAZGiEH4XzyR9dTEX+D/XoPcBDF4k7yzu0tguRQoodK8iK6GDei9FURhQn0alpq +jqDu8Mvm6q5NfcFzaegVdGjySuEAep88NyLVdlSFR4bgWFTumWefprI5RxGvTs5F +jAUao7eaB4gG/t0lbB/nQGEVBJECrvC8OJJqyZEBJlFA0Tuf4uVKUg+UMziBwwDq +8MIJdki/JyU6Qz0JyIeG34PqrhrcQYyLDiexRTi4xwf/OHEiYZ57tpO64VcflC+y +I+z29RVanOvSJaAI+HrbjdoRVWibMTZfQeCJHGXoJnjKlCkMpqqM2RvqY/MiyKsL +WM1jdbi+7SwP5wRSQR9n0NGIm2pxexWIjQNjjPa78dUKc0/Tfodt/tyTesn88MeN +HGKmvG5hj9f07j28XSfXEzurjtOi0iGCObA/IIcIZvHnswycfSfJovRxEQwC5FKT +pC1KGdmKbszOZN65bVT/iHyUBTjR5QHyLrrB02L89BVfs97w8qPrL3ZsPQVefC2O +pftNre9tQgCVg/xK8GdKEVsD9ZY5Q26v1bm/pTO2UXXseK3cxuYKRo0dI/wMRRPh +FBnEBIIpzL26i/WyyMBxCGDx3SKElo2bwJ39hPvO4f6i5jXVQ+zPrdoSWhKgzx8L +Fh11DwoXNeKe8h16eAMnDDzqgIkCPQQTAQgAJwIbAQULCQgHAwUVCgkICwUWAgMB +AAIeAQIXgAUCVYxcegUJEs7awwAKCRD2lH2raOe5MZijEACKkjP+MK7r4jnMNg7m +KRXAR3WpZ9ETjaxyBMkRNlhpYlRNGpC1ofNU1usBvOYYO6WA61rRzecGxxUNA7G9 +3qMFWlOi3M7dZIe2ZeKQABc/EXlDSEPvzPFYW6rHB4b+juNx29kHkpI/AhWB7BYB +BYc57QNT0wMXYDwbK6wpovrvqPgnKW37jQm2d1QdHZB4CL7N+JHyWI0JgpNFpJbM +h5xwo5EY/uLlzN67mQV1lqhHiCKh18KYnzcIcsmfKR0d2aIjApJCaIniEqPImgpD +4OTet4sLRwOlcxpREvknuqVaqD4PPCR0VQflVAsrkRft/n4axrIobEy3ABhEOoik +d5SnKNsO7tu1waO+YuukhtRqbbgqOpmjWYXtcdq90KVrxSGHD/GcFp/ijDnm+XBX +kKW40uAJpWwEHcDCt3eibRkjLHWWKKFUSpcakqC74O+qkjIXu94bA+RACQUfMS/c +32/P2d++NPc6ihSm+0q7O1col93pZrzTU47MNo9eSLBD3t5h/f0EHCKSrZMR71g9 +IJgj0x+NpGmeprsDhiLXdqU1oBQeTDfUyuJMgQNsj+cDwiCWT4TAJCdLVUkuN3Vp +rfCHtJE829Tp0ICV3QpjkmdHH7wDYeZJ/tbNy/4tC+aBQntcUi9ZWegwApjqYNrl +L8ocgR3AppNyoLOGvIr1jIIAUYkCPQQTAQgAJwUCUm1IwwIbAQUJC0c1AAULCQgH +AwUVCgkICwUWAgMBAAIeAQIXgAAKCRD2lH2raOe5MXwbEACYTZJFZLOQ28RHz0rh +Xryf4mKfXdryhngLDysfovHCtRZU1/o3xJVpo7l2uExeVIgYdKzbmAeCxeARZCg8 +AiW3gV7FRGVX0nb4NLBT8T20DcP1r3SGOI3/GJJVHkNbM5RSWcQjiu9R0yO2XfS/ +teKoDrm/PcfHlXJC9ZWae8wn93CrTYA2di0UsIXUqIdSzbBdtrfIACCtyp6WC6E8 +ApFrcz8wnE+Z/EQNXALL67cKwjIMS4NZsKVMyOGShel2cQIynH8NdzbqMbp1QKoV +rZ5U8RL+yHIy5uiqoC18XsIbcxFIUrFlEm0hD+k8xnvWijDx+7ld2Db0AMO6I3zR +NmwCXiaI28muNzHKCi55QNI2KOUMHLC2eFqPGGrxy0nzCiuedpseW/OPVWVXbyXL ++kCOt94uC/pNg/Baja3Ox7NLbXijhMnSc9U9NYHQ5i4M8ZJBwxd8SbziYiISX6Ze +7WMgx7Cyzqemf/7Apn98m94JR58+qac1Xjf2sRQ8pfYcTgCok3P5KUBq8ClFnGWa +v/TSlqlK6qxrWrKbHMllSuMLzU7RRfFL5j47Wo74GoNKxgp2MAO//S/qR/aDL31Y +U+uuxwEZhZzL11QLQc+bNfyfSHQ9gGBHZ0Ewjoa8/uG44VDRIC9yqGwwLh8XxmVz +uj3FS/ZeOjmM3u6UGXxB6WX/HbQsSGFubmVzIHZvbiBIYXVnd2l0eiA8aGFubmVz +QHZvbmhhdWd3aXR6LmNvbT6IRgQQEQIABgUCTiLe9wAKCRA+oPhreU+dfLnFAJoC +BrtBZlGMpOeQ8PFm0tsg8CipWQCfd3qtX21HfT+w0TPg44g9NsLFuT+IRgQQEQgA +BgUCTgrypgAKCRCLPQ0qnZ4R9VmPAJ9Z/k/E4vZ0UFrhnBYkih65PMzzAACdEJAs +RD4wWlNaz7si1qtcQm/7oN6IRgQQEQgABgUCTj00WwAKCRDtGjkzss/N2GVjAJ4v +1rYhHfypUb3sXlhDWe3v3+PkzwCbBBdHvRmyCaahdPx55eWUUBVgSxOIRgQQEQgA +BgUCVdtQyAAKCRDFr3dKWFELWkTSAKC1VQXby7zBFBC4Hk6RrPF18AxH4ACdE/iW +eQn+hWirzGaYRlzswostvcSJARwEEAEKAAYFAlXejmAACgkQxNAS/+AWN4cqxwf+ +PZvBSVr9nx9vWTaQxExOrzJGUhn7t90bOoCKdAxTmhY39PewPOuJbz4qVg36Oal9 +8hZ65AOLmifyI0W/U6XfY0ZD7Xa1t/YCKioprPMf/mjzrNYa5Fu1i1hq0eWG/3SF +l7py+8GITwBIaJsJ1SBNcXG58HJhHr7aDrfvqT08X9977jkrZaUhD5bWlCUl1nGK +NN993YSa2A1hQYpQFQ54VtMI9RHb3GZxLcq0NHMKCYkzafTHo7mJfH762PsKD2o+ +Ha2evY8pyVSy6m110ZN8obzYch5fJ9hyoag7t2JmHTQ6NDSHPoi2PMJEUdKfMrXu +RVVGzY7AwNlrAixpd9RDVIkBHAQSAQgABgUCV76syAAKCRAjRRsQeqA5QXCdCACA +SN99ALW1TzYLyYVavC0iNpKF+qY6sCebf+aZY9UbuR7dADzM24EytRfTLJw3H7gV +bZHlkMjstFBi+Q5FYVO75nYb8zfkTrdkv7Gxx9sm2ZWvQQFg2kvcFhIFeTxM3CuT +zE3ltvLRY64pue99WJRX/R9SId4nZpowfGEjFZqpm33/UpIMGQwI2E29pYzuSs2t +cyUiNuhMHEhvpOchHytKhlceNEiE3ixciDB93j2usx1G1cKw4DJOSOmb8lZGDwYe +5fqfQhCLmUXCe73I8unmazfAGhalPcCLNvi9W+LupHzsyeWGRnsgrU4JkdedYlyb +bJR3umETyLyd41TPnBoMiQEiBBIBCgAMBQJYbuXiBYMHhh+AAAoJEIaNRsspV67Y +D7MH/Rc4/eLeltWRFpSCEEuaIWQdK4FaH7Eu7wU7ed0l0wX2TWTYs7B9Sj1qex8V +i58nMLd4znaIcJ126x5cDYDXZR10jhAOv2vk3RPsaRUClnnKT0fJLln7D/8OShmu +uLX+/ulAqtYjXRTH0ytVavCKJIiJu3SzQo/lGQ6VRVBaTJPB8abnLL8ok0Grh7xQ +nnnFuZnR950RotEEjtVGXpv/b01NuGT7GKP+DQ5KR/pTVF6wxWI6Byr3ziJ9Nph4 +r3HfqKWt7YP7v54QTMfuqsOEdwlANEJPmu7V/4ybH/YDYFjDloMgikhdZHOxq7p8 +sfCQes9woNxtxneDgeaBJiZcWMuJAhwEEAECAAYFAk4qiwUACgkQx/+TixwaPklh +Gw/9Edgfrmr4F90DEPiVNmG+819/KjRIYXIQKi21AwjEIg4kBwJw/tDukFCm2low +g4Wn3eCa8Qh81Auy4iGzKIMY95UUZybfWU0oaiL7CNYO86kvZH4h6xkVlYoEffy4 +fxqvuVWVZJPj77aIie5GMSdRISHh6vFCznuSjZz4jYL5Te0is2oYYVpq+EgmVGij +aq7c06s64iCQ5R6Cj+e0QSu0BT7zWAemKdwVP27qQwXLa0JKRnJIHBfOwLyxlAaB +3OfcSQR+mno8wBLayc9dAPGSObmcAzdLLOJEHR0nWalmFs2S9MaDEIUc66SZvlgf +b6374iCB0U/sLY0+55ICSYdIEtLtQnd9Vc+CqhcK83RPVr4/QrZaurMr6vActJe3 +3fpL6s18GNx+bKcV6/UdfmUXnd0aSuHKpsmFcmNezIde7ea2GYSMooK2ETZ8A0oZ +LEs5UvurJdDy3x/q0C4kBlkvgkGuJWF+d8vah8rNV97sPlCv7aBUppFYV0e/Bnyl ++pCBmDtnATqNDTVokXSMWb6ZY+wLcoXIzm5TJvWuDjbq26gsZ5CVLMc9NY7CwFNy +qX1wTVf/cU6SE74zH+VyUyPI+9vX26sS/c5LrPJAp21hYQZ1YwaiO18JSNopXE8V +5Fz6xc2IL8+qvvY9r3WjaYG3crPeUEa8POxhJabHcAymFk6JAhwEEAECAAYFAk67 +my0ACgkQdFxHZtTKzf9e0g//UWmolg/A3RTuN5jKQgpWPBjcowS26hrmuybcdc6A +vvMDm5zFb0zjaY4jXOMj55R7MwfLwHQBKflSGwRZHX65fFqBZxXjJSgbNEn59h+X +I3zIn/oelvf/GuD4dSUOSDqMG9U7uHX3CX2SMCpZrqDAU/HpuV5xV6sfgyz59vgf +aTWuOGPHV8jWuSb0PKXhnzQ8XxhsAiOzDVvh8ITquZAYpCOD2wYvFw1JnThRrZ5a +s/V7Vwan8ylcgl/tdkTEv2EeqXhqVt9jg0na8YyywLVarPRQip5yePnLfhUzmyN1 +c+ea9VA6TFM9WxoyMVjjgl5lKHGyZgX3WanlAmfjtggW1faDlwHCd2I0KfdgKCbb +xu+2g2WyhZ2co6qaHwu5OdrYRiiBIuE2rStUNM/a4rh83EhCIQDo2qnxz/mAXbWf +jYWrVJXpZCWu2ad2tp3j4X6HwxYCO6iefgW8G2mInPA4oFWWGotdUEC5yTvmG7jL +9RHSoPUy8rB/0GGlV9hYXhmIxB32bd13sv7OrQ1lLzxhFxTAZ/acaLJAqL49eXXJ +RTvkaaz8EkQ/Uv/c+/L8g3jO2mZI6laSLBM5Lw2JhKePPrmMlZUjVcy0WltZXJ62 +mUtjyiGTE8WhmW6TbtPIv2eF9nn8vXyW6dcaW/Mjpurm4tp6EVKBeJXB9r2DLeMG +zn+JAhwEEAECAAYFAlNITBIACgkQDLGOUhsk8/8bORAAp3ECh9ITzvoR2GqYs/sh +aM+BluoWRgvaC6O1OFa1LeIaEIVXUVQMoflHhpaSr0LuAX2xI2vAywmXGJ1FYHgb +HFzfk8zxdzmjK+PByZ7c8Z8yeYfHwXUCHipFRZKM0lBcx09j/qgb2mJM2avk5j7M +aYTBhDNNgUS/bQF5oP7SnWaxXZd2a+CT+rCx6WXUqL3wroeeKcDvn1Osq3r/jWim +wfuwsTRaw1rOTPhHAVR+9iQUGNeL92wniLqngkyso3CUVgvuLJX1nofZD5PrT4c5 +MmIWZVJxTjmcmzIgAcCa0KLKzm9nUUq+uSWP9W/PQkMMg1GqqHZdS9Bule+l8Y2i +Nws7QYcBL8ocA2oOafBNxWR82rmAHfscooUVvb3l4AFG+OHGcjmvYlfWdR5T8jB9 +Q28xl4rNhhPWrTPBwplArfweuVZ8VyoH7Ux7f5571LAgz3RLLf+x9oC2rUJoCLQW +RXv+/vcduhh3DmCYwit01944jbfHrsGub+zoYHR1NlxrMAO2I3pY5aUlpGgtOz6I +4d1PpxLpKvr+qywVfXe7qplvQ7oceymL5aes9GZ3gJDCPZFyHU1viJXEDMEgj086 +cvI2dU8OvyGL3Nr1RoZdxEb/N1sGlwWNdNPtt65jKadz9mUq4cPxakcjNYfRj52J +m68cXrFUKd514gvPniUm4uWJAhwEEAECAAYFAlNnPAcACgkQxxl2mbKbIyr0UxAA +m8q1GfJ60j951RVz06CjKC4GNAHuEjtakPftuMHbGELvfmJNlAvkYLbkpdMAjy0W +jVg7rRBMKElxP+5LTGLGNh0p2sEWBVo/OjkZ9JWrB9GUixRUX7DfvY2nyKQeJoT2 +gnOptKOVtL8SlqcI/RZceCK1/5GkP3dO+URp8xFDUGckLwOcyhgo2hcDwevR1WKk +hK5mwxo5hf929nZvgIhep+D+oovYSkFwwpXx6t1H8KQiAsHMHpjPJehCoLZQRfiY +UxDFXhVMf2dXQbG1IHGjFIrRo8fPr7xx1ktgnlnr8EUajw4ng/2X6QZSzDzfYBUD +SkJGD0CukbukBtV9m/MVYjl9D+3xX0YgKadxcNGmi2tj63OJqLLv9uD9/CRPs0J0 +K9fnl6442LB7cpInY8i+usHanKV76PPU5P3cWldcJxQF+HAc3KEO3TSLbWeVGekI +jUp0+2x8+KfARiHqN7T0cfTJ4kem6PgqPZvrs7uhIJOKQ1+jbziEf03y48dky4Ao +Xu0iuMfAUTAQ4SXBzvXanRVcbfJr/B8RTlw4ZwrnaEKbkSEI1evklfPqCnzFIuo0 +tVSFiP3AYMCokBQE8PZr/vrwMzwfKPWt2WXAbTJ9nN7VFftYUXCVTAzLt3Zdxs4h +YHfF6kC8eqwJ0OfbvlxfmmTSJDLEqwZgOXWgEjSykd6JAhwEEAECAAYFAlNnPXgA +CgkQ+TOsGe2A+7k/oA//ftxdAe9dpH8QgzkpXVaUVVeMOgO/U44x3jfgAEEPf7o3 +pAGPVozvDNShIIXv1VdotpZOPdbDCXe0gqOX5uRo1fuTlnOs+YDUoERXd7W0My9y +z+n+lczcvzCqN84WW1VN6acn76orgMlgvWX/Ngtc//3chHKlhVgZqlERdLxN0Eo+ +VaUgmnIkCzV0lMgpHPRO7aS6l8PNDv7AhfSpdIZ03fG7vAyLLNpzCyHllr+lmlKy +Okvnx3XnoKlDul2AbB2OK8THnTmPvmY4bkuO+J07p+eJ4aLfyz+5SiRpGgNnFqwh +tCe99A6onLwo9TL8X5O3AJUZ+HAGAHj5zmxNT9D9cekwQ6b7+U7U38ZSdB8oOyXL +9O7KdEhNV1/Th9/svCk8EvrWzkVGTK9H4XNG8tHpA2vugy2LychwKwDjm0RB04XY +Elrb/A/vpNErz17A4dEljdf1V6xvrsmQycNGoFD1FsU3lWF8QcLqDwcmsTtEJcnh +NbyiUAuonMUau60/0wpeI7qmn1UFnZLhtpQpa8DLRPgnTBMNMa1Ok55UKWEYrXVK +YlbKMyCDYKJ2Mh0Uc5F2F9wvRJEFVMabPjoHVYBi9d4D4B58xYTACP5OsCuIaKN+ +nVZRpRcC+XjNU6JqlHtuSFcL3XzL6fpvZVUStPs7fvmv4OW5bWTdolukxHwNSz2J +AhwEEAECAAYFAlNnZvcACgkQ462wCFBgVjZcvRAAorQjxdV6WJkmvpBw2ji8UwDe +kGhu0bElgI9eoKjXwyEbZ3tMEsc3pPJMiXBEcFPq3pmlwgL0U2/m+M73x0zXddNm +0Q5mt7Gr9Z5/qPPkqpEcItpAd0ValcTNN9/fQs9Lfg+Bkjnsl5yrHBQG2Sotxdd+ +WCRiJfB/HbRxRcdAKFzVM3h06H3oFC9WGnS/Fm8szQ/l+xJGSq48umMKYb6Pivxy +5JryoIi+zdMlT7HyjM8NO1UcOHxNZUDu63Wf8lNTJ/u66ATGUy9ORLFw/7ZkBB3z +5HltKja6DYK87E3CmteM4mE3Og/6GG7+0q461icl/hPWAlPE8pZKOKNqmBkkBrEY +DVXn2z2vbS07cyArfjQM3GNbpDWUIuGv7FhBVQkCi5WTBdSCfLQBO1lC7M4jdioK +mWIfLOv5DnQGiWclrzyT/Dh071gK3xdPYtGr4tcp2czZFj+UJo9FdvWCUv//JnHf +YSA6S4JaYccR+s3sXLZVxQiWandx7cJUoBCnCjZPg5cfpQjhfqlcMtjZ2eI8TJK3 +wS1ELCfz2/ipA8Kn7aMcawpW45Q/tegfO1xs7weaN7Pkxb86wtWNnCpQUA5irC1e +jXe863gGh5iNvoMzOexkB+5dCvEP+pUpfSNzXRuqKbHZg6QR43jZrubCG/Iex+ip +05gEkZgoZJmqQJsDZUmJAhwEEAECAAYFAlXUyCYACgkQe1hbMIB8KoeYtA/9FppA +NwlB962oel8KlYLJZb5bPuyYqaAV8QV3uFO2xCbSi120OCU/gSNEyeX9KAli85uf +CyzQerWXeyLVV84cbQRexRAeHcvwBwoJjJJtY0p9fSubJNOhiveFkk4KwayboMYW +PPeSZizCwBaYz1cj3jREWTepTw6wfkc4jqioVUbDVdLZcWrLgx6ZAJVAu9tut4VZ +x3o97mBj6B7UsRklbPvwTXd82caaR4xPkz9kemobTIjkt9QhKYPi6j//mEe2AbhK +Oiy0BId7a9AlU2ZIGVYrIQdB+idvNXJLRRaViZzsxS8IQ6ULvOrM1BvP9wa7YfrS +2OhqWWmhipnmIVowOGtU7bZKf5K2q0fv69aBjpWjKlnoZN5AzbExmJ6bRdasjCsu +99hsi4J1JEVRvGYlzEXbbr/li+/b+o/ilBb0BlteuLFw6LSW2A/8yBrSLgeBL0/z +8OLoi3ahnecVoDUi8YFDq7JDb7NjO0gwqKNvA9OgkqCirLK6SmBHBbwSK2dbpxzF +pJkxwMpE5clqr/5Lidc8pnzeLmlRdhkfTW6EfZOhyeyZUDig5Yb9cpsQ6KjPXQ5P +5t5vV48c8UJQTVtOvnRqK4Wcl/OknYVF4LM8C7+zhITGkAIyQ9JgEPm1kXlNBq2K +s66/aBGMtap6P9bjdG0Cw/pU/ZMa4ZvGJbATeCCJAhwEEAECAAYFAlXW4X4ACgkQ +W+W52qfsfKdaeQ/+OTIVkc9D8E4CAyLEUmpZtebG1zAxOo67kHP1VIcxm8DoktKU +HfZZuD4Z90YaUxj8hACeuBRU7PzzN8WIOCVpDl/lqkXjrDHQAh5wNmaS4YvqXFWY +W5yy88OwKwoUKHKHWgQDERrhnrxaigQUXV7IxhYoM1U6hcrwt8zu+PWyVdqMJwFy +irAVRmZrhWPbzC2KzeS34XSYbrvRVEzLPtEjNDxBFOVMfIdxCmGVO/qU81bYHVuu +IUtZOYhq6tMPopP+yCmTVJ0o/9itzj48RsUxCMWbEM6zHqUDjNl+hQQIND8Q/aZ2 +mKyaYbuipIyXG2fhLvG1sEXAnThfuTqu4UJt6BJYooFnLuEkHaBP4+31m+UXlxKw +gQIDqDtLzM8JO5jWxYVzuoWCxRCpi1mQzRvMxeV1CW89qhlWODThdnsf6Y+LShzS +7G48mp3ee/qQyLvOnP5bafG2WU3tRlBafDWB7spbEoeJrfVfb3fIYtoctUCcN9TC +1+kj2ZgcEsiaufeuD6nGD5nA8sw7n94QuvI9uLVK7GViMtqXfHJB7lq7p4plFMzk +NwyKnvSREP9G13xG8MfUKEsZ1DLHzMScp4UxexAxpdy6dHCadJyRb/pANbj3ZcOQ +f2yt5U+JZRNNlfjmiqDAugf2+ZXmV13wX3RnAcKw4ireQc+2/+lKxmvMLOSJAhwE +EAECAAYFAlXbNnkACgkQbqTSMRotJo3wxw//cQwVLwMz7owJbvMK1UgnwEPOwbXF +Izffv5l7RhurmcZlvyzUi0U53Yh5Hp0KP/lZvqN7D7VhvgknQIBU3rOWRtfCAllW +5l837EFXKjQr+AT2+SESUnMoTxj/Sl/qqSRqc76k7qZchZKQY9o9Fin2k/aKp8qZ +9aGDL4Gll6Ju2fEJ5tj7RwYsFhwdse83eEvsehb3Xl5ziHe+8HYPxI6Ysxkunq1D +yr6StdmP5crF2i7nYGKhimE4UxOylTLchnI+X4s/Tdhq6ZVQd+VB0oZDAjBFxdr1 ++yqkr/m3RBcY2ClneyZbLouVgFgEp4AuafSMElWlm8OA0gaKUyCGOv14XJ8+KBNS +4s2t3ycjGGtBB4tumP7XplAtA8jN5zXUmZF6vZYP5079MIw/6iR2nyo8qy7wRuX0 +zhWBnsH2xBiV+D88NN3FZsTBGZBnp3QNFFFIYTj6LYOuJnioHp1upDCjtxAvdB1h +fRX06YBtTpUcq+mmcJyAy70FWhd8N2hKBnFN+6CMFFHqJJCeUPFuso/+uPucczXV +y0U1yIFR4HqVMS0E0J8Z9lNy/vL0CHf1e2oUDDj3bPMqXxcS+bOyzFHVwbQkCC4M +4wAloM58FqIDVPKMU9y+cfCFb6olOyucbJ7BZygkdbHStKNhWCc14FiDp5Ouj8Hr +WgikbYk5sYxopoeJAhwEEAECAAYFAlXgDB0ACgkQ8vEcI/AKK+bIRxAAmyi4sDlL +rUrMCsYZUfkJw+1jW+hQrHD1VgWjMRvDR1IZrP95vokTiJbI2lKZuzLb4YpNObY6 +/3Uzix7V0FIL5vmfzTZ7tPuqVQgI1K0LpjrQyemMbTuLxC5BNiLJd58NX3cGu8gU +NMFDcF2LLohiJasEk3jjL6OklZWvSgf06N2EQ3Eb0vbBx4ETJn+7OL3YrX2fwvT4 +0Xcb9rGpvTy8GgxQVEddMARjVTkwYHZ13myv5zKcgasYYU7xzucOemwtb/fQIlJm +PUJjawai7+C/PWE6BBCCcBaPfjLZBlFylwGiBbcOeBN4jLCUo3LyhPJ9XS/hbukA +lkW+x3yZPryiQaGYz+XtGV24YwT00Wm4igUB3DU3O/K5kp6n/ldHngr2iGTLIw4x +Ti60U9MgZiybPAqcuI3+Vi0p7yRgzdzUERRjYcDDBYpGZj8QWNKRVqLHqWU95i/q +REDUcBs/rPaUHtFEJA6/Y69UVdvgC3MAfJ92GHfDYuaa4xBm7bIclpPPAnhP0Cj1 +5MCeenitzMUAv7w9p80yu0B5kSfzqZzn0Uf5AXsp7IjP8IAhJvAUYm0eke7S1+Zo +w6VuXESPaFPc9DxNXCpg2SWit/P/tYE1fwskGQ3kZHhBCR4HiouB7eO846CMQRRX +bmFdsUFtj6oiRxRX2L+uZ9iA6vUo15wba8WJAhwEEAEIAAYFAlGFMZkACgkQPIIx +qPRHTlrK0w/9E1RsMFkB0j4JXcRO4hnqgDwenjnIsoNMqA6lGdKW1Np2V8TAxx4J +S6eplxBpjWXQc5N2bRaI7ddHvNddr3Yz73v+fZ/+7evx++HRgvMEZ2cpZBbznjtG +G1Fq5BNwILAEHA2pf91zI9FuTwmHNnkDSvQ5ZUFwJY4zW/pow/xf+iLJZq8yvyR8 +uantA3XlBxnMHW5JavmRWFgl9qfD1iFQUYwx1sy4kjUoFtEDYIUjqdKKiKGFfahD +J/clCpwkq666xWzImTXt9gy0xZLa6b6wsy1FID64JkV+IdGrWd6/zyu2edZLjaFZ +uFwN308xJtmfltZrMTj/fu5D7T4HLKK/LYZTyEipY1RvYIlan6vpGj1xp9poNBQc +vNkcfSg7z9UZIzInKW9qD9mKG1BIWdD6DKaRoRLk0PcIY+cwGqSyLWGNv+QDZK15 +FAm7kMmY35mIkmRFAl+foQIXDi8GiUdzWJI+ll2lpJisKLsW+2SRxe2Co5CcUpfu +MDnmeMIv4nT4qDy85MSwQtRkCWuTj38AM/GsgWFrT26rqM32DBIDuOPwCNF585oH +zVsFCN46UGRdPXwZ8qACwuN8BauXf6zVm0/2QI5KNMdTjHlSN+jzwo9DQVE3TIrw +QO3mH2rLNMEEztejpw5L/kEKRcoHM8UF4Lczds557GBni6mLzsC7vfiJAhwEEAEI +AAYFAlXWvuQACgkQwHPSKH/7npvd1g/8C8DIwCZJSh6KRiG9MbloxUZ+yDHHkt0O +kq4t4VDMv4RoYXXAFJuYvmPigAI0epQjkJxjZ+hoARO6H2cNTjWuXJOppujY9Qcq +m5IOlXR58XjSkm+CKjBvU5l+HuLDk2YcKWwY15WEfRYotBqZfWJbkADwyysZCmw7 +olp4tO3CpAydMXUZgsNp37Mt4JIyAhxpCz58qRFK+PhHTqJxqfDYfKDbjcaC4asP +82/mLKV7ezolV/2UZDFpjjWRhBtGV+K8cpbJ5otTsE98tUwvigGlY6+P+R5rOSBK +MT8Aa1vwdFkk8JL8Mmv6q8w285Ys13Hk6NywAZIvnTs62fVYJCyRVC9cbwjuTayw +px0FYTAyJbEIIt1c6DA0h8RZSectFkh8jGYdAutbcDiZ0HzkWWfO8/nMPitpV+GU +RU1i/iPn/1pAKLo539KmoPQuzuXNv2FaKrlB0Qb3DwZhUSV4DY2AZFzsMBFGuqg0 ++vxZVZxjRFf2vWdwseT1PFELFpKYvP/2LuSmO/0yYX0GjrvpW+H44jKZBVMSYFpU +WTLtlomSD2tqbM4LjeRyVt5HUDigPbv34/7bmahcJFanBNaFo/zFNA7T8jal26hB +G1xjn4TvxXb2712QodtJW/QwrTpOcDaXCIpy2OrsIE9eZtxXZ9lG6ZRLhcvdySXc +Ocaon3zG4YOJAhwEEAEIAAYFAlXbUMwACgkQTFprqxLSp67B9w//Yur1zgXlw+AO +oN9TKooKn+qhfR0PlBMAKS0u82965VkyPVgGR2HYOWOUyyMPCVnCBu9z1aAIpn3/ +bth5Iaw39Th+/C/JFZzDhXBZst1ZAvvY9mUC7bCE4zkKh7Gp1DKuZzddAkMatNLZ +835aN823kVkBT62MCUWwj97d4tdOexAAWPIwSZ025xUOiLAj27sNifvL/wwvYMzn +ceJkFSxF2Xo5Nf7YAmYPrWnHiCtHfekXjWDcVxlIF0yxMhhVa3roVINQWnvb25mQ +yxdGlT6YHx08GanrIWUrnyOGmWPnqW5EQRuAiptV437cuMERXV6FrzkLJBmp+Aq/ +gva0zyR1FLp8h1tTbcEvlMv2q1S271NFU8bOF/zPDJnFzfZes9iTuWto7CVtWS4c +63nALBHwJWLa/or4bsuI8ljtQI7QRImT9PEVulOU2EFJXL5pt0lvKexOX/pl9fA4 +KSTxOabAVFrWFBQSPDnThudxBhw+KMRc8WZ1j9r0sG2+Fj2/OHnvJrn1yiCat+R3 +wHsqAQYjoPppQiP2Cp29CYwb2nZjklo0tEkFTNx/K95aycwtPkzHeARxrMXvJ1QW +5rB41ebEBUfwy/UMMOvvOfp9bD2g8yzhYt0i35ajr0hNoQX3OhBkxoYfjlp8Myn6 +nQ4dtQ58MQpNtcNF2vla0R4K1hjaTMyJAhwEEAEIAAYFAlXlofwACgkQK/jZ/gdL +zeR9GhAAhSxuD+n6noyZsiiUgwnJHVsK2hOFA/U1SaBiDp1JzmoUYepboIR1wkLm +RX2LQGyz3cGPKEuwhKoCX0eyL5Eqc3PVjIeJRRc82mz4FohuHh/BxiJQOvg6NizR +czkds9OvMcRhIOWrPyiwK4XkWskcx+e+BwB8MJ6szOPogIz2+Ocf8PH36NpUBkCX +4/mfk5iu0t+LX0ztAVjWL7UMH808aOcLejGqEsN92JIiG5kX+bor07zEuIdjmS28 +BuVtjN42RD+sMbAJBJNHod+ClB4pwUSSha5zqHacngeRQ1u52dXPn7U+vXeWBLXV +5LZs08N1FsK7OxMa1wDIWctaPhy+9vbhSwyvOfShU7WNycHrnnmeDyhrfqtaEMBP +/NuP1BMHYH6eMXntwO1oghV32p34qkK0Pst4mihXlAc9HQw36ZU6gD61hIcw1wQo +s26+U+CdF5bKpo13jm16BL1vJ+a4RmImxjnKkFY17+5Bbax0c5+1QNSnSfraiLuP +FoU30DepaVpwWdDa+m4EzHb1X65uemfWq4RIYpp8lmjQyukq7eX55jidD+mnSsmN +epx3vVLc5P0eKZkzeIV03FxP43OAc5GwUBra2R2KRXwUjJasA/OnLS6oRvHp5m6V +XBRyjnK8HhfSWNS6s9M7gexPh7lexESiI1niSvITRH9lmQHhUYSJAhwEEAEKAAYF +AlXeDOYACgkQwlWtQs6BU57unA//cYyyUGVWv7kFqFlk0kRfwjGvzEL1+80AuBaG +J27nernyXK1uMPLz3/5z3Jz1cwl1/GvnnqLtS7HyC1zE/fDmpozOpQdJdIp6sfZC +bq/Tqge1elkd0CqE7iXiDVzvvnw4/m8qGqEqYosAwFehIno7Is6mamhUVn9eXWs7 +CgDLy12w2zVQEukDbsQaJcxd08xuexW0xZBZLUBfSbhukeX2/NZKttBuyVN4apch +EsIPFfz7n6pHA37RLYvH7g/jVOCBOnApZ7yY1QMMhbkY7xl20aSPeUWSZCifT8JI +k+Qsg1Z4qMbpBQdx86AgPxVnsFVs9xwwux4jh9cCAEYjIFr5LG9zZsTTPlvWCJ2L +lbStRYZhVY+dM3LqU+fTc42mgWyoBmDUSwY5ZZIEPTKCzQPZCIT5nW6yYQrrzAVW +TrMKNlo6G1yV84dhez/sF+05VfgAhl2Dsi+nBdafon1G+yOoSmlqZlW2GlYLkUlX +f+8hGPD5b7WblejS5NJPWmu7HWK0Os43CbGZLqFZjJwib4Jc0+s9PNaVML2Q+WcL +M25I4CMdrLVj/Ti976NX+KrHQ2IeP0QyDGNvgOSf39kS08WY7cTuS72C5unQvyrq +68w4DQxvct88tNVFMgOdiiY/bIGkL9sOe3Xxk0Ik6Ph2hU4GTDY4M3R5misoBfrp +dtF9j96JAhwEEAEKAAYFAlXk7lkACgkQecQ+YgsDmzXyBBAAqYMEuKQqafjUn26Q +KDeRuTNVLs0nWtAhC1iHD2IGgK87tI7E/wElBkzpc9gSFzdbkqfCXMUx/ZtvC+CS +LqyPQ+apskHtw9oobmRdFJSu+r+rqCj+9crJ00kG/QgMIg84YgtybF4gctdzCcQj +rkgZijXJI8kPi5iKmlT/nGpQORWc5DP9o+Jpr2dW2c2GoRqfYU+Tjh3w2bubzfEm +5bNehkHSijLne+m16lZGwXFt0KBte33Xt8n1vXlDJ/u1ND6MEMPqOWkuPhPtWV43 +oBiEM4lvHAw5REkQEB8ms0O3fn0JQr1qmVK4WL9DZVSTqfeP049YH7puqC76mUkf +YpOWwCDvsbQ/v0w5WSD/xWdCEcEU0132mI4ROuEmSwF4tR9TJ1TxjWvAjdQBMp08 +qIw75bbKoxDsobUS8y5XZAAImzXuoI+Pe03N/ZVhDki+zqQ+/CjpkTOu89boC1b7 +S3tQ8C1xMHicEBE1raFdeUZs5oWgVNy40r/F613iqMjRI5NshRc3ZQv+JjYeiZAr +3MVR4h3GOP6IEeHGpFBfvuzfJFRCEUVX3An+uQhcJKboTTX/koeRoNxFpjmv4O9X +UOhMKhkmURZhbyX9KBPDgWLHgfVjGT0e141cEtZtRicY0HttdaYgvvXf3Q1sjGCq +CdjBpbLzWpVB0LMgZeyXFhup6j6JAhwEEAEKAAYFAlXmgI4ACgkQHnWacmqf3XRx +PQ/9HVFF8HFBqWoRtEf3bKXk9RRr05cMd4FHqYpNBJij+lA6kgrBKu/5OGO7jz9u +pv8jBi8DfNe03SLKYPn+Z0GKk3oC7QGy/uRRPiB33zD0FUWQaibe/AaTUeEvPZu3 +arx3P7mKPhcMB+Wdt8KLwN0m3dyn+t1p0Z9TIx6kx34CB9rkabbPTXO/UANyBu95 +/uqtpkZp8AM1QOKs0nL8WQrQsl3DmeDeQJSQxNtzY7wp1bFBmCgwMsaA2CsuWX/+ +XVoPoGYxlx4MFG64+yW/52ZvfmhrWWjBn0KjGOQpJqzuD52O+fzHAzlXn3AKXpqF +UW5VYqXu0YN8KCQKNjGEJqrcr/p6iHk8VBDy3Ba6c2+aV5IfvbNNQ1Ralkpmak1h +JQzyrlY92snziuR6VcM6zqzVwHrcrJC/BnXub2x/2wSizu/mx/RBhTQp2rFCqzLn +leDsb1tMsbhbsozleaUk2I62oodWCrfW/Otltpsj5ZIIkd0ucs2sZbTKY7kMV3/n +fhOhV5l6FnJ4uX5z3Z7YVtz0l7EDvT6hMhzie2UlJNs5XwXr3frUDvItFo2d1+sD +D7/HAdwNtN1CqIayh4RCJb8XjffWddAdzSB3vA5Bw/oa0NN+G5BxFZk5VfHQ03r4 +Ji9jjP5b/GYNKusmaG1oRWkDW0zkd0Sii24VJkDp474q/TCJAhwEEwEIAAYFAlXR +8a0ACgkQWHl5VzRCaE5sHQ//Z3ztRcG5oNnSF1hYMy8/2geyRTarnOW0jILvHgH7 +pGrh3M58M8UcxGdOKJ68pyFvTKBIdgMzdrdMGxVPwojUevY8d1RoXR5pmDy7f5DU +fxgvjyjUmHALS3ND1CWRZpLkR/uUfAJBU015r2ADVZKks/PndKhUQD8ACYp0Bs5f +YlF8kdR50I8p7HPJQSVzfxq//6UC0LWwPTMMuRmIXJAJCC1JNK1HdZsjACjTLYt+ +N/6yR3RWQtKb77zaZe1wbve9FROE86wLJpTjmFOmO2ibMGZAuke4SjvNK4x7WYoT +Z0du5ddeVhAnjk6bu3z1ihunnjcW7YGkiZazEuYdE6GEL1uxQh5pTVteTyGe+E3C +HafbL8eh/oEvANYfvUs78B1n6OvXLa/xtoPe5eEgZ7wkWVCu6AwWksq+b8shcdnh +cLmUzFz0h2nkExQiHW+7xNMK+tm+vysC9xlALSAa6ZOIn2ryDtac1IaQr3W/4rtv +LdDazVRWg4yAveAkkCTbnCPU7yChD3pcSUM/5AdGnLqXHp9vTYMM9tU8Gxv2UmX4 +hDHBZN3TR79LP8WjyIYUSofunpQ9WdCAMWPgDtoT3dFUapF7OBU5ge3KN078OQeV +ijLjer33sZA7tsPa4Hr0xlxXL2dVcbpSW8C99ks+bRkLrEk6Nkhy1aYB6uMoVTZk ++HSJAj0EEwEIACcFAk4J+9wCGwEFCQtHNQAFCwkIBwMFFQoJCAsFFgIDAQACHgEC +F4AACgkQ9pR9q2jnuTGGLBAAy8l7oi9rd3ZU2wNqgKrbkMqR5secNX4vq+28JiHh +jAjIMXuFNF+n73l2lWl8Jo0tUWxlQIvYiOh8BqWVmyPETCFEV2pijIu9rHKyPTuI +42bPWT2ylAG9jxXKdCSQda1hO7A7lp5h8sUh6w1RGhdMWOj6NOqlQZj0gF1P55fS +71E1Nc6JUc5u6CSJktzrx8oeCInvvyMzgErTFPQ2dX4nJ9DI+D6Ho8UmJ9xkq/zm +Bz4ybYltMJMmZzJcmO3hXjJ6/q/zLA5//q7ApBHrwOx8N1Lzx0Wt03br+IN6yWsu +lqymd3EcKsdcx4LDub3S7Ge91t3OnDJr+5XHvr+/QdU/wJlrW7o/7Dpbn9Fa0+8y +zM3rzbyYw8tMzWxsNM8+8mioanVlCn+JNYqysbltA2pjYMPrRU6xwKEiyWUOpq0o +jZ3gXBk/2VAfJOj2SNgAu78tYV2QXoFO0cI8YFXEpq9L+6avADqfdWNlOgqFp2j+ +bN9IVWboYk7jJIqPms1wtT/rtjDlx4ZUJE5WPO+5/bG5ZSAteicmOAPwafv3+hFr +tlk+mVPhZUp7x48Ns7Ae7GtDZElNTJT9CLwheex6I+2rzh3IXSDoxdeCUNmNTH6i +DsIKi51hUk5s250Pwc/fbMBVz7vr4yPXumYnndim/pymxZoQHjfqpGQDRcqh0H9f +g/iJAkAEEwEIACoCGwEFCQtHNQAFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AFAlJt +SNUCGQEACgkQ9pR9q2jnuTHzXRAAsFY6ZbZKFfFFk0VWwODcDDJaDnYOLY3PIY2V +HfLeGSpgqaje986i8MAnfHv/Mei6Is1klczcjwxvu5QkIwMa2GhcI6NtFYumixmg +dVoyXDO6E29hn/2BLjDa0V/eaNzypV9k4lJYldSZP1LOn7+Pf8gHzzj+ogb3A9Qa +WivFaE2vBjVTrbBPtCHyfGTkLfdjzjcGJsrxhSE6qCGwZ48zkPbXpb81iiiX2kxr +6sDbyYuQTxH9OHFrlnf3UptmKTdAKPqvEdGv0nQMdD54d0nhXevMH3IRbf0mLefP +xBIYrGYXuIl3gesr+9QqZ+HMXatIZf5wf0yY4S++bGNVYC9B+BPO7oSz6o5cgPJy +BFkpMwboMyuYxieZbN4vKIMC/2+0wIrHYRh+AsXIzJcIQf+9+1XQm9r6MwuDsJ+V +RW87SWgU6NKlBiNtQRGq5/cYPa+Vjgya0LlHKRE/LZj6yjFnbaISeDgUBDxge8u0 +lb6QnI0MCqVjmunqofpluUFY1ZDf8tdEAmWXl7i4eSIbBH7QOcoDiSkF8G10G4Vj +VcuEWuHaACYnztGxyErwVZw8LQw0d49U3gCI9eJvo13zpfF8ER/QS+BsY9l3niJa +5iCCSyZmEqNiZd1pSWuO8DZY+hV0V0RnLUmZErmQuhv4dlSd/mTjWkj0a/GEt+94 +cKR0up6JAkAEEwEIACoCGwEFCwkIBwMFFQoJCAsFFgIDAQACHgECF4ACGQEFAlWM +XF4FCRLO2sMACgkQ9pR9q2jnuTGALA//aMnxUWcamJ9C+0MmaYnQpRzK6/dQS8Dn +7YZ7RlsCuO6BWG0KSrN6mhcqEV8eslb5vc0YzJlYZQ1MElNFMDMIWzOjqbC0Tkhy +qzf3Vz3nKYsZ29cXH2OqxBrwdl4XHFy8ZN+UTK6HZi3oF05b9/hQiC/IHCFLV+lY +NNsed5a30DsjHQwSHdi6XEzGz/o2gW/AYDoQhU5RyQedLfldrP6hatd2xaDunQ6W +FT7NeHFGnRd+9T4A7ZzzMvBRPKL12FPj9mx0G1OC6WHWWrwPHtwTqp93pbx5wxcf +ifjkOnj9mheGeifXcjtkxWrnQiwTw6Y+Wm11vER4cXR4hrvo7FYuE2PpYdXS19gm +vNBfbohL3KL8psAw7T4hJvf/oUVjTjRN2OjYlzf6rVKBzNxx1it6yyliESCTroMx +zsGGHqU3hAEed8sIxS+woTQf2Wi6yhwrLyDf8YdQ3yRvne9pGL/sxpT9kBisO+Lf +OjmZKpuUG3rMshbyNMiIFVzuS/28RlbX1NlurSHdN4+mhZH9GUvgwODzJlJh4gwL +RNLj4Dw2Gho5xOSjn5waf6nKNG0hri3IVQ43qpoEGDZ8UEU+8nJoQiZ9BePVQtCD +hIYnKexvT63S0jVK6ch2ubHzOb93A5EKtwEFqZbupClXZXg/OQKtgB121D5halOt +O4YM+Rq/fjuJBBwEEAEIAAYFAk49NFAACgkQUMNjTTopHPmylR//cxR0ITukwa7c +0Ey4DrPub8wiO5/m1rrpsrb9M/IWWUIraY2OnZNoG+B/e4TdfzGHve/vK6Xvbfr5 +qru7Dh34fpuSLPnFG7pWErssSUJwAD5jVBwod8JzEMNzatk4AmPCnuJxZBH+dmlp +6vLHbyOigQMFEsSRbkR5UZLDLFCG0jHlLl22D5apCix6+C91AjbHlbdOmIbBFa39 +u+zl3Xjbreyrc7Deb3MEEyyzb5MP/xZwSzbfYnZLMSH73RdVTWkCYGbZNiKPg77/ +MjOrSW3yciAmuKpZQwzFPeiifYOSJMYJPdO+4DJChXt+g1QWwfIKQ2jLwQyq2LlR +GFMyGC06oIIOF7V3KdSHcwn/e4WXvxOGirPMRDO5Xtbw6IDSa/VOyNKmnhCocb3o +YSmA3ru/Xoco5Hur//KE8mBvv6qe51r3xFD4GH5o4lzdUq8RZcEHxXnPyh+mdDQS +qHy3t93qzLW/lAtUe/CM+MFFYHc9x00FZLYv401lqKRRERZZO5L/yfldDgFqw0t1 +iKtVj4lApqqR2UHT3a9MF1bEDlVmxXz5lykoQNy1usKKNo3V+dVPsosi9GLahf2c +KAT5O8XPyxqQp1jjZhQEWtELwY6riyqT7ozOyRt0G3fYjkZxjuqYL2XsT4AuVjNE +3ZIouN5YJlAYOV3KFZ4xULtMI3tR9Y0EZhphFyRnmbZQgMjbw50q9XRnGOM3b7Yw +hqbA1RoC4kVFlHllQyrIInqNk0TpLE2P0wWiO3MICqjEbOveqD4e9HenyykMA5aG +34d0uJchOZoTUb8oXoxYcZYrYwVpb0SSsf3IgVrfRlfyLGzsBHkn8ymoVc4B8DPc +Z3M00eUGPODh5aMDFMpvgpGWf6lWVfTw05WOsf8MiJy6ydMVmZsX6l6WDvVBebye +xszO26ELqOkt9gkJjbvteWEHvUJurSzxUTTqkNbkyVRNptLVxGMjOkfgPZA8AarJ +6/QOisn9wRmvY89vp82c3+dmTUjLCpSnm9Dk84PevagAqLWHQiLREG3NUloycE/s +7wvCraGnoNuDNDZUIM6T2XS2LNyAEt37NUoGWH6py9PXP+67Ok1yxO3POPZJiWSh +v0U/QTIJ5iiqrEAkR8GLOfQRUnc3m5bMBpgKb6C+Yw6k1mDZ1gTOCFiQnIIkXCoh +3Q9W/BWOJJH8IDFhBD3tUgXTcstBgfqqI+Gc76oSkAvqv4yL1Gs9JsUEbDw5ZBUS +tizOQD1KhYmWzEIyXMJCpDQLVR3epuT+h8PKZNK3gIpXZyQRPW2ax2+UPTOyoz/N +wiLs/NHgJO9k51CS3itx3pt0XqWPQ0Y38T5K+4buWBb8EaAQn7Bgd9ZrRfzpsP8l +ZU64xPEGg7kBjQROCfxyAQwAzo2/bWd4yTwtIfYc8OKvPTDRRaemSp2aTWg8LD5v +hIgvInA2c6LUbk04/25sYsOCvUcjNWcbXyTjb2tJyAor2B11PR2oWaZCcW8YBVox +A9M1BVkW8+JnbuMOPC6nBw3m+cyVnoerCTi/BMOpWLSpDeU6c9hr2nhUtGZk7lrU +DUX4ImxzOJ+aiEycKxtygHWKoFXf9iBBr9FbYaqN5yr+D1+a8gyCPT47Tc8Cngoa +LNECFwFOR5ulWtEZ50z3AW2f6tc0nQ/NW3QTPbIn7QUgqfSj91PjSHqhIN1c5x7R +Yhb6NwCQq2nNOR/1uV5Gp9ENjPa28ttGuKPUQ7k86PpnngED+XNMJkXP0hGSu84f +LM+voLlo/UE4kZ02FYtc267HKQwXKhDn3WpJ60MUfp6CeMgVohHtM1khN7Dj1xmL +VlxhogRvTQR2OVHqAzNf9Y4D+2m18BxorivwDk2cOHRzFxoZA831Yy1zJ5YgmiAU +UxMLTthcHXeXjJR39Z9cjaXpABEBAAGJA8QEGAEIAA8CGwIFAlWMXKkFCQtIu5MB +qcDdIAQZAQgABgUCTgn8cgAKCRAY7oY4YCLvV/x3C/44CpgLVRUZT8bxDp7ZjIpy +xTB43f+tpGlykSFMYS3/Cw/i7ar1fjoAeVonXAp0PpqeuJ9w+p9r3UWPZeVlmibY +ybLujnNDnV6RmeNtzc4HUtgPP/s7rynU6RFX46T5YRUBo/aChjFcWVi+YUaNfBdg +aKyf4INWtuNTndLXlOJkuqGCikKOuuwReJ4pvs49whVj9NugjsotEf4/+tzsrCIW +LtSF2BI/Fz0xV2vlmCzsB5fN4nC/ksaaXAL7jHwaUbTMLJ3W9pcqBzyUd5CEMlE0 +bwPihyVItLLdTErbuN7M5v3iYSRakRzm0xCpyb01Ho/KWsTWznaGh3XK6e05Avss +8mIaju+Zf/Vk+oLNzGqI+YAgczWyK82yDbuxXfWauBI32nmFXDwqN8pvPGGEm8Bg +MQxfKnV0mt3BezPTYBSuPw22+wVbao3xMJSIlIbFitw2ZOSLmit64IYYVGaWr3aw +n65MSK/Db9SRaGv52gOR6ylDul7wkjNE8ohlaos0y9sJEPaUfato57kxf3EP/0+A +CMIr2Fsj1Li4fXcSp6Qimi/TrqOKeSuHGJpDwXC7jaQ+zkrPo0W8+T+2SBJon9Yx +ghvrWKAkBOYZc9Hz3lJjW5/8/2DhHKnTLqIVcuPQkyoTpNdEFMY1jsvVX8ndSzbx +TIiCQOPH0I0pbC8Khcz7ocCaohvP7JuKoNjlRBGaVj4GQXdP+BrOfKRBLg0rmO7g +xtz56NOisuchdJugBDY/04QXE6QZKu/Pw2S5n6dojUJruvMqVsk9zCNQ4Y80wEc1 +zSw85lZR6/kr4aO70eQ/TxWenYkFGKRVQPorf++D1bUQnBO+RImvVQb+IFpCBDqH +8Pud4jvLRtn4PYm2aQpzkBjXa/m6Fe5xd04Ghp2CNl1eMogRF/14JgJn4TY36tMA +Ugx/L2AItOCXwAmYACFj2OvKdJVuPaaxvkRCJ2e+6IiHvVy0Emi68WLsCQI5Pjhl +wqynrgVS0gLD7drallmeKmV3cuRnKd0GkFFEoyD4X3bacVRT7LI80giN0h945lNX +F+6z84qxd1L9DMw58fpQL6Yb9+6e57Q/ueE+Uqla2ATgOm8uv08aqgmj3ac19Uz+ +tBQv0WF9Jm/z9JfpFq+aid2052SJkwHsoa4tqCBCutL8aRNpXin3NfqEFRuiuUUt +CFHoKxulWUC7h1MgJGD9gEbcqiYPOfxNDUIYrVUuuQGNBE4J/TQBDACoLGAOK8w/ +Mv1B3SZN/mfUYXgjJnOS1lqCNdKRG8MVQQCBVEe9QPU8yavh/MpraEvPZhz6WSg7 +k1pHNMbKsDfv80ZX5WM95uMN69nmF/l+qo+eBJU8YIHWabkvMSWTBeD1roo8CwHO +l102ajgo0XzhCqeb4MkUCZCZxdTaoHcD+IW+4IbajozgzTYVEQnyJdZwmB/EjRAn +cKDNCDoimHzjENQ9KOO/cPoGTFNfy9czoAmOY8gWt7b4wELDMx/tP06V3n9Zjpxx ++sBId9xDv+Yd+JSJHbNk8FxQtRtZVGNv7SP0rIWv3AP+d93kt/djtijzFTS5JxFV +iJtjwsDMdXQYnb+ReP4Jza5gLr/8gjbCRlLv/Bh1D9SyXFmftEcZyhJIUU2b2ybd +Ckwg/BdouoQxHN94bESy686djt1wiXLZa6s4jiFuMA3qfF+KHDIbdjMBZzi0+XgJ +wwiqLlRkvLiG8/mGCijwFY+zzZ2lxKCOAEo8bUexOBz16Sw1Fj55vgsAEQEAAYkC +JQQYAQgADwIbDAUCVYxc0wUJC0i7EwAKCRD2lH2raOe5MUZzD/44Qb3GAxwqACq6 +dJVM+mq6J9FRDLmqa4X+X9LHG6YJPXxa6GjEeMM0vOObRJKiOnHo5GtQwZ28Ik0M +b2c4649e9navrQr2uZpLMESvaC/nCJocCrhbN4IcZSS8DAKWST8xtiwiTIbp7Svv +qB0y0RLVo8eSU44ECV/g1s6kIAvas1E894S7Jbs4Rv8LoB7oghkRXgZuBjszaWCt +kNVjIh3FzMf5V/JAonmM2kIVdfBF1DsM3DQ5Cwy1+ki4FXJNwdWpSiB10V/YL8Js +Y6P/GONcp2bA1O/zVGXHYfmd6uaGsue/sCovHMJymFTQXVtJRX+rA4phVyQA+CVm +jcfcZAZE/fdYF2OoHxz/Jfuf+gnjFbnoJU0ddaGd8mo3moCAlhrQyxpgSdbZhCla +njpzYOn8yyEMIDvjEqMLuuN9rn/8Tu8MXY4UbnID63hSsD9pLB0qez3gn+Ajrqgr +ejUtba4xMyD3Q0dlcz6NrapYW5+uoUr6y8/q86TX26vDs7ty+RyrWmvU6ZjZr/Gr +O1jDbtKL3UvvNLRDrwQKgNoU/iXn+YdVxAin6Y7T+AzWWQarISmlkfNVssXdJRps +TuFvYf65AvQ8pgvdclSklgLa66XW1FpVcQ2ZXr8aPFUGQlmt5D0qy3R+FpCoSo98 +QpDTbYhlEAwwVPqs0VUxl4/xh0yt37kBjQROCf2tAQwAxUnjTLLSYdksfC5S8U1a +AVUj3ZthteZAbIpAxqVjeC4rHCkE+EZs4tLgbgNc/pA/ngPuBtpwqjO8TtESQDy0 +Its3H3oXa23cAwbBW3gk3tpZ2y6hqHZ9H3+2A5QsqKSrM4CDTkEMF6+FUqhu3Dhg +xgt/LWml+VAUe1ybNAzG+B4NDnq+5Dd5H0pzsIoX0vZYLpxSKd3TTdYlBKdTQFTs +iYUv/+MxoeRGIk3e8kGEAttR+noiU5p57y5v57JIgXkeERZvKMxgIs3I4vqsI0dQ +HnjO4n6CMbblRR9twGOyhsyHeMuAYfjYvLkDtXkxnHNlyEwI+aBXWHQutcCdwdot +cNuIAGDagCfG6HZ2ACWrRUZ3LmmE+l+WzShxk/ruCqnnUeeZ4xD+18ZF8ny9OoCO +K4tXn9tnfF9JCSGN3Xdiw/NahnwBFPEP6m6D3XmlRLRtBXzAk6kNcsnLdY5GymTF +CvxD6JqYFGW+iU0KL20RlD2RW4aavJ1QLLvo0UT1Rc5pABEBAAGJAiUEGAEIAA8C +GyAFAlWMXOcFCQtIurYACgkQ9pR9q2jnuTEaBBAAlyonMfts3cOQV5K/nIGSR29W +Pnsay/suPrhcYsRovSJRz22HpW/2o1kv2a4wcRmDQovlpcRKJwak4x7ZidbU63cC +a1QE0O+rqlMtvqu3oFtKMlGh6BB+dFViC4YKVfsmAXAZbyNEN9VTkUtnt8LFtEVm +Sbqpm/SahLm37d1wLV+3i0Hn47atZXY+KvFJmbZK9WixjnZsCCcGlNBUuZW3Zz8k +eiy8NJaUw5+uoPVnULjgnMwrjFBaQTe8dX0Vd2Ri0hlQGGPNUbmik+6sgBpAT0qn +yrtju29e5qri3t9tWzs/hGiTnbNKB0N7oDUzRJbAaz1iEQZUS29ZzXFOWCo0NXBs +FUm4Hk1UM/JPj5LcBHlnYSzVgUm+pzXtuXPCkxaek6QSLkjOUelHMmqwfdaQxAAO +/QKZt39F1fXnuv8MmKdB1gMWMT8JPWdwYzeNcRzyZaOZ149l0Fk+anZTJDqtUd9O +anueBhpxbyImv5h8eQuwne5QCELMCdvTF6lQXBtDnmD6hk9Viat6dRN/yMSgU9C9 +VX1Ay1FLG2SyJMAEX9lNudZy5/oamkzouY7ODHZWguWVM75jmM6lYOFbxQtaSNVB +EISPJPwjfrcY+kt9tW7rBFmYd5Y9sDvbKRMGhUFWBbbYaG/VdddX0SAc+QOTqgC0 +qtBIHY5EHQ8b/XuoWA0= +=UyA1 +-----END PGP PUBLIC KEY BLOCK----- diff --git a/aide.spec b/aide.spec new file mode 100644 index 0000000..0cb2caa --- /dev/null +++ b/aide.spec @@ -0,0 +1,119 @@ +# +# spec file for package aide +# +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +Name: aide +Version: 0.16.1 +Release: 0 +Summary: Advanced Intrusion Detection Environment +License: GPL-2.0-or-later +Group: Productivity/Security +URL: https://aide.github.io/ +Source0: https://github.com/aide/aide/releases/download/v%{version}/aide-%{version}.tar.gz +Source1: aide.conf +Source2: aide-cron_daily.sh +Source3: aide-test.sh +Source42: https://github.com/aide/aide/releases/download/v%{version}/aide-%{version}.tar.gz.asc +Source43: aide.keyring +Patch1: aide-0.16.1-as-needed.patch +Patch3: aide-xattr-in-libc.patch +Patch4: aide-dynamic.patch +Patch5: aide-define_hash_use_gcrypt.patch +BuildRequires: automake +BuildRequires: bison +BuildRequires: curl-devel +BuildRequires: flex +BuildRequires: libacl-devel +BuildRequires: libgcrypt-devel +BuildRequires: libselinux-devel +BuildRequires: pkgconfig +BuildRequires: zlib-devel + +%description +AIDE is an intrusion detection system that checks file integrity. + +%package test +Summary: Simple AIDE testing +Group: Productivity/Security + +%description test +Simple AIDE test script for externalized testing. + +%prep +%setup -q +%patch1 -p1 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 + +%build +autoreconf -fiv +%configure \ + --with-config_file=%{_sysconfdir}/aide.conf \ + --with-dbhmactype=md5 \ + --disable-static \ + --enable-lfs \ + --with-posix-acl \ + --with-xattr \ + --with-selinux \ + --with-curl \ + --with-zlib \ + --with-gcrypt \ + --without-mhash +# --enable-forced_configmd +make %{?_smp_mflags} + +%install +%make_install +install -m 700 -d %{buildroot}%{_localstatedir}/lib/aide +install -m 700 -d %{buildroot}%{_sysconfdir} +install -m 600 %{SOURCE1} %{buildroot}%{_sysconfdir}/aide.conf +install -m 700 %{SOURCE3} %{buildroot}%{_bindir}/ +mkdir -p doc/examples%{_sysconfdir}/cron.daily/ +cp -a %{SOURCE2} doc/examples%{_sysconfdir}/cron.daily/aide.sh + +%check +mkdir %{_localstatedir}/tmp/aide-test +export TESTDIR=%{_localstatedir}/tmp/aide-test +make %{?_smp_mflags} DESTDIR=$TESTDIR install +install -m 700 -d $TESTDIR%{_localstatedir}/lib/aide +install -m 700 -d $TESTDIR%{_sysconfdir} +install -m 600 %{SOURCE1} $TESTDIR%{_sysconfdir}/aide.conf.new +sed -e "s#%{_localstatedir}/lib/aide#$TESTDIR%{_localstatedir}/lib/aide#g" <$TESTDIR%{_sysconfdir}/aide.conf.new >$TESTDIR%{_sysconfdir}/aide.conf +sleep 2 +sync +sleep 2 + +$TESTDIR/usr/bin/aide -c $TESTDIR%{_sysconfdir}/aide.conf --init +mv $TESTDIR%{_localstatedir}/lib/aide/aide.db.new $TESTDIR%{_localstatedir}/lib/aide/aide.db +$TESTDIR/usr/bin/aide -c $TESTDIR%{_sysconfdir}/aide.conf --check --verbose + +rm -rf $TESTDIR + +%files +%license COPYING +%doc AUTHORS ChangeLog NEWS README doc/manual* doc/examples +%{_bindir}/aide +/%{_mandir}/man1/aide.1.gz +/%{_mandir}/man5/aide.conf.5.gz +%{_localstatedir}/lib/aide +%config(noreplace) %{_sysconfdir}/aide.conf + +%files test +%{_bindir}/aide-test.sh + +%changelog