rpminspect-1.10-1.el8 > 6 6_6 3!y덏%!E/֡b = !E/֡yfV/33&Gq_4Y&Yr&4^U^_dMgT ;A+|-;y,x#Ns]Mt鏨wcͳE_s<q`|7k;342OY>j7a[]oXOT<-_@DagDO{`BzIKї+_958"K oY$OpuD\>0R2x@2!W/CF?^37m?oi ovZ剎A&dl#[q9h6"R? x; fG8QHJ<۪^X /ܫBfNfxxA.c9&|xۅqaL(˟;`\_no5e Ў38̂p0v7tx'rqsVt}%WfM945b5e6504030e2e84630dcb9a8130b03d3a8318c41989c24520d0ccdeb2f06f9cf20cb2ebff85d5c08a72df78b06f8f800eb23eO<3!y덏%!E/֡b = !E/֡r B wQrU+Qj62>*}VJZ.ix[ݿgB(y"5w_JI qd_CmGFjM7a2iu˙vrY"BN7Nqj1Wmꠀy;sv@D_&`Z7ʵv覉{5Ɔc n]/,|"ŰTgRBID-$|sL1gTiyZe),i'X9]cU"t/kn@K!&["m Jkhf8T'?K4C!Xe7[ -euN<}yBn8״ blz5wǀL@.d|Wq[s,F]$#:oiAPI=5}ePqb\ը{'Kb5wSxŭM$Y,\sYp=?d   848`ds  @  Z  t        U  D(89,: Gd Hۘ I XY\ ]0 ^ bݩdeflt uP v߄w x0 yd Crpminspect1.101.el8Build deviation compliance toolBuild deviation and compliance tool. This program runs a number of tests against one or two builds of source RPM files. The built artifacts are inspected and compared to report changes and validate policy compliance against the defined parameters.bbuildhw-x86-15.iad2.fedoraproject.orgFedora ProjectFedora ProjectGPLv3+ and LGPLv3+ and ASL 2.0 and MIT and CC-BYFedora ProjectDevelopment/Toolshttps://github.com/rpminspect/rpminspectlinuxx86_64txZwJS!MӜAAA큤A큤bbbbbb}b}b}b}bb}bb}3921d1f593be8ae143f19a36bb437ef9780cd8b5e3fcb625d51a41fa859bed1f79a3364400c3cb4d69fdc17e4e47b3aa18f6895bef18a1a77fb0ae489cc74cb6654eb34996802360214f5ea5af7c026e24b986f4c1245c05ca0dec2ed43ab6af30d2991f4ca62bb98698287f081ff50c290c5f129797ff05cf2e200c1dc8272169d16e8508bc824e266b877813f51ffa1731101c0073da3457382b99970f6ebb3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb369861c870234259a01b13a2f3c8ece6bcb952bec6fb316c1016b72a6be2f6cf8abb05d5f0a4ca638e4e9c52b53bd3a90dff45afd7f8b0a27c35653cfc5ad27c716e3../../../../usr/bin/rpminspectrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrpminspect-1.10-1.el8.src.rpmrpminspectrpminspect(x86-64)@@@@@@@@@    @libc.so.6()(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.8)(64bit)librpm.so.8()(64bit)librpminspect(x86-64)librpminspect.so.0()(64bit)librpmio.so.8()(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)rtld(GNU_HASH)1.10-1.el83.0.4-14.6.0-14.0-15.2-14.14.3bb\@aW@a@a0`@`\{@`7@`7@`U_@_@_@_@_[fDavid Cantrell - 1.10-1David Cantrell - 1.9-1David Cantrell - 1.8-1David Cantrell - 1.7-1David Cantrell - 1.6-1David Cantrell - 1.5-1David Cantrell - 1.4-1David Cantrell - 1.3.1-1David Cantrell - 1.3-2Fedora Release Engineering David Cantrell - 1.2-1David Cantrell - 1.2-1David Cantrell - 1.2-1David Cantrell - 1.2-1David Cantrell - 1.1-1- Upgrade to rpminspect-1.10- Upgrade to rpminspect-1.9- Upgrade to rpminspect-1.8- Upgrade to rpminspect-1.7- Upgrade to rpminspect-1.6- Begin work on version 1.5 - Use llabs() instead of labs() in the filesize inspection - Improve has invalid execstack flags reporting - Use long unsigned int to report size changes in patches - Fix some errors in the changedfiles inspection - Update the changedfiles test cases - Check DT_SONAME in is_elf_shared_library() - Skip debuginfo and debugsource files in abidiff - Make sure abidiff test cases add a DT_SONAME to the test lib - Report INFO level for patches findings by default - Python black fixes in test/test_abidiff.py - Update the test/test_patches.py cases for patches changes - Generate regular changelog in utils/srpm.h - Skip branches without targets in submit-koji-builds.sh - Fedora and CentOS systems in ci need diffstat - opensuse-leap CI job requires diffstat - Fix the Debian CI jobs in GitHub Actions - Fix and enable the Ubuntu extra-ci job in GitHub Actions - Use pip instead of pip3 for the Ubuntu command - Use apt-get -y install in - Enable the opensuse-tumbleweed GHA job again - Make sure the Gentoo GHA job has diffstat - Get the Arch Linux GHA job working again - Use ubuntu:latest for the ubuntu GHA image - Simplify the utils/determine-os.sh script - Update license table in README.md - Allow any number of builds specified for fetch only mode - Handle old or broken versions of libmagic in changedfiles - Update GitHub Action status badges in README.md - Fix $(OS) check in the Makefile - Fix the ubuntu GitHub Actions extra-ci job - Make sure the centos8 job has git available before cloning - Change strappend() to work as a variadic function - Use json_tokener_parse_ex() to get better error reporting - Fix reading of the javabytecode block in the config file - Catch missing/losing -fPIC correctly on .a ELF objects (#352) - Refactor elf_archive_tests() and its helper functions - Followup fix for find_no_pic, find_pic, and find_all - Install cpp-coveralls using pacman on Arch Linux - Install cpp-coveralls using pip on Arch Linux - Install cpp-coveralls in pre.sh on Arch Linux - Install required Python modules in pre.sh on Arch Linux - Do not upgrade pip on Arch Linux, go back to using pip.txt - Drop DEBUG_PRINT from source generated by pic_bits.sh - Do not run apt-get update as a second time on Debians systems - The lost PIC tests need to invoke gcc with -fno-PIC - Update the OpenSUSE Tumbleweed files, but disable it anyway - Define inspection_ignores in struct rpminspect - Clean up the config file section reading code - Add add_ignore() to init.c - Fix fetch only mode download directory - Stub out libcurl download progress callback function - Perform symbolic owner and group matching in ownership (#364) - Restrict download_progress() to systems with CURLOPT_XFERINFOFUNCTION - Read per-inspection ignore lists from the config file. - Add commented out per-inspection ignore blocks - Implement per-inspection path ignore support (#351) - Report annocheck failures correctly in librpminspect. - Note all regular expression settings use regex(7) syntax - Allow size_threshold: info in the config file (#261) - Check ignore list in files for path prefixes to ignore (#360) - Support a list of expected empty RPMs in the config file (#355) - Call mparse_reset() before mparse_readfd() - Do not crash with the -c option specifies a non-existent file - Update TODO list - Make sure brp-compress is disabled in test_manpage.py - Require/Recommend /usr/bin/annocheck - Note size_threshold can be the keyword info - Ensure ctxt->lastError.message is not NULL before strdup (#382) - Handle corrupt compressed files in changedfiles (#382) - Disable debugging output for the ignore lists in init.c - Drop debugging output in the xml inspection - Remove what working directories we can - Correctly find icons for desktop files in subpackages (#367) - Followup to the Icon= check in the desktop inspection (#367) - BuildRequires libmandoc-devel >= 1.14.5 - Manually install mandoc on centos7 for now- Start work on the 1.4 release - Trim git commit summary prefix from changelog lines - Report the program version number in the results (#309) - Handle compressed but otherwise empty man pages (#308) - Flake8 fixes for test_manpage.py - s/self.rpm/self.after_rpm/ in two test_manpage.py tests - Disable broken ELF heurisitic and size limit in libclamav - Modify dump_cfg() to write valid YAML to stdout (#306) - Migrate more code off hsearch and to uthash - Replace hsearch() with uthash in the kmod inspection - Update TEST_METADATA status in TODO and MISSING - Restrict style checks to specific directories - Replace hsearch() with uthash in the abidiff inspection - Change tsearch/twalk use to uthash - Correct misuse of entry with hentry variables (#321) - Normalize copyright boilerplates in source files - Use hentry->key over hentry->value in pathmigration - Adjust lib/meson.build for Fedora rawhide - Drop gate.yml and begin non-x86_64 arches in ci.yml - Add armv7, aarch64, and s390x to the other_arches job - Change init.c error reporting over to err/warn functions - Modify file triggers and matrix use in ci.yml - Split 32-bit osdeps out to post.sh scripts in osdeps/ - Split style.yml in to shellcheck.yml and python.yml - Rewrite extra-ci.yml to use the matrix strategy method for GHA - Move the emulated CI jobs to extra-ci.yml - s/pkg/pki/ for the centos jobs - Debian and Ubuntu fixes for CI - Python pip on Debian is called pip - Try to fix just debian:stable - Enable debian:testing in extra-ci.yml - Enable centos8 in extra-ci.yml again - Enable centos7 in extra-ci.yml again - Enable opensuse-leap and gentoo in extra-ci.yml again - Run each test script individually on emulated targets - Try a different syntax for the emulated matrix jobs - Install s390 glibc headers on s390x fedora systems - Detect 32-bit and musl presence in test_elf.py - Skip lost -fPIC tests if gcc lacks -m32 support - Add stretch and buster to the emulated targets list - Drop Debian buster from the emulated targets - Install gcc-multilib only on Debian x86_64 and s390x systems - libc-dev:i386 -> libc6-dev:i386 - Disable Debian targets in extra-ci temporarily - s/AUR/git/g in osdeps/arch/post.sh - In read_cfgfile(), keep track of block depth correctly (#329) - A few more yaml parsing fixes for block vs group - Recommend or Require libabigail >= 1.8.2 - Finish normalizing all the error reporting statements - Advertise of rpminspect-report in the contrib README. - Report libclamav version and CVD versions (#258) - Ensure first argument of warn(3) is a format string. - Enable werror=true and warning_level=3 in default_options - Update the translation template file - Get rid of invalid free() in get_product_release() - Add inspection_id() to librpminspect - Update the po/rpminspect.pot template - Improve mkannounce.sh to handle stable and devel releases- Remove duplicate elf_end() call in init_elf_data() (#303) - Update translation template- Small change to the way Koji builds are submitted - Move the master branch to version 1.3 - Drop DEBUG_PRINT in process_table() - Add doc/git.md to explain source control conventions - Change Suggests to Recommends in the spec file - Add kmidiff and politics to the inspections section of generic.yaml - Update TODO list - Use warn() for non-fatal errors in mkdirp() - Require libabigail >= 1.8 in rpminspect.spec.in - Enable multiple --headers-dir1 and --headers-dir2 args in abidiff - Swap out some more fprintf()/fflush() reporting with warn() - #include in peers.c and rmtree.c - On fedora-rawhide CI jobs, install gcc-c++ and gcc-plugin-devel - Disable fedora-rawhide GitHub Action for now - Correctly handle the -w option on rpminspect(1) (#256) - Drop the relative path handling for the -w option - Build and install rc from source on opensuse-leap - Update doc/git.md on how to track upstream - Add .github/ and osdeps/ directories to extra-ci.yml - Build and install rc from source on opensuse-tumbleweed - Adjust curl(1) command line used for rc in opensuse CI jobs - Trying to figure out why the opensuse jobs produce curl errors - Another slight change to post.sh for the opensuse-leap CI job - s/PowerTools/powertools/g in the centos8 PKG_CMD definition - The output of html2text on opensuse systems is different - Rename HEADER_MAN to HEADER_MANPAGE (#264) - Add inspection_header_to_desc() to librpminspect (#264) - Add xunit output format support (#264) - Support the new output function call syntax (#264) - Move init_elf_data() to readelf.c, move data to struct rpminspect - Update inspect_elf.c unit tests for librpminspect changes - Remove check_ipv6() from inspect_elf.c - Create the badfuncs inspection - Update po/ translation files. - Add badfuncs test cases - Forgot to commit test_badfuncs.py. - Fix flake8 and black errors with test_badfuncs.py - Skip debug packages in filesize, display changes correctly - Fix spurious execstack failure - Fix YAML config file reading for BLOCK_INSPECTIONS - Expand dump_config() to cover all config file settings - Minor spelling fixes in strfuncs.c and making code explicit - Simplify list_to_string() so it handles 1-elements lists right - Add abspath() to canonicalize path strings - In the doc inspection, only show diff(1) output for text files (#254) - Add strxmlescape() to strfuncs.c in librpminspect (#264) - Output the system-out xunit portion as CDATA (#264) - Slightly change how strxmlescape() works - Add the runpath inspection to librpminspect - Rename test/data/lto.c to test/data/mathlib.c - Handle the empty string case in abspath() - Expand dump_cfg() to show runpath settings - Fix block handling problems in the YAML config reader - Note single builds cannot be rebases in is_rebase() - Hook up the driver for the runpath inspection - Install patchelf for tests on fedora and centos - Update TODO and README.md files - Pass -D to rpminspect in the test suite - Add integration tests for the runpath inspection - Python flake8 and black fixes in test_runpath.py - Fixes for GitHub Actions on Debian and Ubuntu - Disable Rust support in pip modules, more extra-ci fixes - Update pip and setuptools on debian and ubuntu CI jobs - Make sure pip is updated on debian, centos7, and centos8 - Fixes for extra-ci on arch, centos7, centos8, and debian - Adjust docker image names for opensuse and arch - Add Gentoo Linux to the Extra CI set - extra-ci.yml typo fix for the gentoo job - Use gentoo/stage3 as the container for the gentoo CI job - Disable opensuse-tumbleweed and archlinux CI jobs - Make sure util/determine-os.sh picks up Gentoo Linux - In the runpath inspection, fail if DT_RPATH and DT_RUNPATH exist - Use pip install for PIP_CMD on gentoo - Set PIP_CMD to pip install -user for gentoo - Handle a NULL from list_to_string() in abspath() - Do not match path prefixes in the runpath inspection - Python black fixes for test_runpath.py - Stop doing an emerge --sync on the gentoo CI job - Replace emerge --sync with a manual portage sync - Use emerge-webrsync to update portage on gentoo - Add uthash and move the file matching code to it. - Typo fix in README.md - Fix some memory leaks found by valgrind - Create mkannounce.sh to help make release announcements easier - shellcheck fixes for mkannounce.sh- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild- For BUILDTYPE=release, generate the correct type of changelog - Minor logic error in submit-koji-builds.sh - Fix reading existing spec file in submit-koji-builds.sh - Bump development build version to 1.2 - Use is_rebase() in the 'upstream' inspection - Use rpmtdSetIndex() and rpmtdGetString() in get_header_value() - Add get_rpmtag_fileflags() to files.c and call from extract_rpm() - Use correct Version and Release values in download_build() - #include -> #include - Add the 'config' inspection to librpminspect - Rephrase reporting messages in the 'config' inspection - Add the 'doc' inspection to librpminspect - Update TODO list - Minor updates to try and make gate.sh more reliable - Add config and doc to the inspections list in generic.yaml - Rename the '%files' inspection to 'files' (#194) - Modify baseclass.py to allow 'before' and 'after' NVR tuples - Use the after tuple to override the NVR in test_abidiff.py - Use the after tuple to override the NVR in test_upstream.py - Write rpminspect output to a file in the test suite - Add 28 test cases for the 'config' inspection - Fix the errors in the 'config' inspection found by the test suite - Fix Python problems in the test suite reported by black and flake8 - Add Makefile targets for black and flake8 - One more formatting issue reporting by Python black in test_config.py - More 'python black' formatting errors reported for test_config.py - https://mandoc.bsd.lv -> http://mandoc.bsd.lv - Add a -D/--dump-config option to rpminspect(1) - Use global reported variable in 'config' inspection - Fix reporting errors in the 'doc' inspection - Add test_doc.py with 'doc' inspection test cases - Ignore flake8 W291 in test_doc.py where we explicitly want whitepsace. - Add init_rebaseable() to librpminspect - Check the rebaseable list in is_rebase() in librpminspect - Update TODO list - Define a new GitHub Action using utils/gate.sh - Update the README.md file - shellcheck fixes for utils/gate.sh - Use utils/find-ninja.sh to determine what ninja-build command to use - Install fedora-packager for the gate.yml GitHub Action - Remove before and after variables from gate.sh; unused - Remove unnecessary basename() calls in inspect_upstream.c - Do not assume an or bn contain strings in is_rebase() (#196) - Adjust what things run during with GitHub Actions - Add get_rpm_header_string_array() to librpminspect - Replace init_source() with get_rpm_header_string_array() in inspect_upstream.c - free() allocated output string in inspect_changelog.c on errors - s/10240/16384/ in archive_read_open_filename() call in unpack.c - Add the 'patches' inspection to librpminspect - Add uncompress_file() to librpminspect - Add filecmp() and use that in place of zcmp/bzcmp/xzcmp - README.md updates - Restrict some GitHub Actions to source code and test suite changes. - Only enable lz4 compression if ARCHIVE_FILTER_LZ4 is defined - Go ahead and wrap the rest of the libarchive compression filters - s/class Test/class /g - Make sure uncompress_file() supports xz compression - Handle more compressed file MIME types. - Add test_changedfiles.py to the test suite. - Add test_patches.py with test cases for the 'patches' inspection - flake8 fixes in the test suite - Python format fixes for test_changedfiles.py - Python format fixes in test_patches.py - More Python format fixes for test_patches.py - Remove unnecessary 'a' in DESC_PATCHES - Better explanation as to why the EmptyLicenseTag tests are skipped. - Test suite cleanup; add rebase= and same= to TestCompareSRPM - Black formatting fixes for the test suite. - Remove unused imports in test_upstream.py - Revert black fixes for test_config.py - Fix my email address in test suite source files. - Support single package URLs for before and after builds (#190) - Handle invalid/missing RPMs in get_product_release() - Use warnx(), errx(), and err() in src/rpminspect.c - Modify submit-koji-builds.sh to pick up all pkg-git branches. - Update the rpminspect.1 man page to reflect current status. - Update translation template files in po/ - Support relative directory paths for the -w option (#188) - Implement the 'virus' inspection and add test cases for it. - Update po/ template files - Python formatting fixes for test_virus.py - Update the osdeps/*/reqs.txt files. - More osdeps updates for the clamav needs - Install 'xz' for the 'style' GitHub Action - Fix a variety of small memory leaks in librpminspect - Stop the freshclam service for the Ubuntu gate job - Support slightly older versions of libclamav in inspect_virus.c - Add the 'politics' inspection to librpminspect. - In tearDown() in the test suite, call rpmfluff clean() methods - Add test_politics.py with 'politics' inspection test cases - Python black format fixes for test_politics.py - 'it should added' -> 'it should be added' - Increase the runtime timeout for test_virus.py - Install the timeout decorator on all OSes in our GitHub Actions - Install timeout-decorator with pip, not timeout - Expand librpminspect with support for SHA-224, SHA-384, and SHA-512 - Define DEFAULT_MESSAGE_DIGEST in constants.h and use that. - Replace some fprintf()/fflush() calls with warn()/warnx() calls - Rename the 'DT_NEEDED' inspection to 'dsodeps' - Rename 'LTO' inspection to 'lto' - Update translation template and fix two incorrect error strings. - Note all valid message digests in data/politics/GENERIC - Improve reporting in the patches inspection - Only fail 'changedfiles' for VERIFY and higher results - If 'removedfiles' only reports INFO messages, pass the inspection - If 'addedfiles' only reports INFO results, pass the inspection - If 'patches' only reports INFO results, pass the inspection - No need to check value of allowed in permissions_driver() - Do not let INFO results fail the 'doc' inspection. - Do not let all INFO results in 'upstream' fail the inspection - Fix RPMFILE_FLAGS handling for %config files (#221) - Still report file changes in the 'config' inspection for rebases - Correctly check RPMFILE_DOC flags in the 'doc' inspection - Include rpm/rpmfi.h insted of rpm/rpmfiles.h - Only check regular files and symlinks in the 'doc' inspection - Remove unnecessary assert() statements in filecmp() - Remove incorrect warnx() reportings based on filecmp() return value - Exclude man pages from the 'doc' inspection - Honor the -a command line option for downloads as well as runtime (#233) - Allow optional 'commands' block in the config file - Fix assorted non-critical memory leaks - Remove unnecessary warn() after a failed stat() - Additional memory fixes for the abidiff inspection (#244) - Free ELF symbol names list in find_lto_symbols() before return - Followup to the memory fixes for read_abi() and free_abi() - Prevent invalid pointer dereferencing in invalid result in 'patches' (#245) - Avoid reusing the same abi_pkg_entry_t struct in read_abi() - Allow a set of excluded path prefixes in 'pathmigration' - Fix the YAML parsing for the pathmigration block - Document the BRANCHES variable for 'make koji' - Include the .asc file when submitting new Koji builds (#191) - Include the .asc file in the spec file- For BUILDTYPE=release, generate the correct type of changelog - Minor logic error in submit-koji-builds.sh - Fix reading existing spec file in submit-koji-builds.sh - Bump development build version to 1.2 - Use is_rebase() in the 'upstream' inspection - Use rpmtdSetIndex() and rpmtdGetString() in get_header_value() - Add get_rpmtag_fileflags() to files.c and call from extract_rpm() - Use correct Version and Release values in download_build() - #include -> #include - Add the 'config' inspection to librpminspect - Rephrase reporting messages in the 'config' inspection - Add the 'doc' inspection to librpminspect - Update TODO list - Minor updates to try and make gate.sh more reliable - Add config and doc to the inspections list in generic.yaml - Rename the '%files' inspection to 'files' (#194) - Modify baseclass.py to allow 'before' and 'after' NVR tuples - Use the after tuple to override the NVR in test_abidiff.py - Use the after tuple to override the NVR in test_upstream.py - Write rpminspect output to a file in the test suite - Add 28 test cases for the 'config' inspection - Fix the errors in the 'config' inspection found by the test suite - Fix Python problems in the test suite reported by black and flake8 - Add Makefile targets for black and flake8 - One more formatting issue reporting by Python black in test_config.py - More 'python black' formatting errors reported for test_config.py - https://mandoc.bsd.lv -> http://mandoc.bsd.lv - Add a -D/--dump-config option to rpminspect(1) - Use global reported variable in 'config' inspection - Fix reporting errors in the 'doc' inspection - Add test_doc.py with 'doc' inspection test cases - Ignore flake8 W291 in test_doc.py where we explicitly want whitepsace. - Add init_rebaseable() to librpminspect - Check the rebaseable list in is_rebase() in librpminspect - Update TODO list - Define a new GitHub Action using utils/gate.sh - Update the README.md file - shellcheck fixes for utils/gate.sh - Use utils/find-ninja.sh to determine what ninja-build command to use - Install fedora-packager for the gate.yml GitHub Action - Remove before and after variables from gate.sh; unused - Remove unnecessary basename() calls in inspect_upstream.c - Do not assume an or bn contain strings in is_rebase() (#196) - Adjust what things run during with GitHub Actions - Add get_rpm_header_string_array() to librpminspect - Replace init_source() with get_rpm_header_string_array() in inspect_upstream.c - free() allocated output string in inspect_changelog.c on errors - s/10240/16384/ in archive_read_open_filename() call in unpack.c - Add the 'patches' inspection to librpminspect - Add uncompress_file() to librpminspect - Add filecmp() and use that in place of zcmp/bzcmp/xzcmp - README.md updates - Restrict some GitHub Actions to source code and test suite changes. - Only enable lz4 compression if ARCHIVE_FILTER_LZ4 is defined - Go ahead and wrap the rest of the libarchive compression filters - s/class Test/class /g - Make sure uncompress_file() supports xz compression - Handle more compressed file MIME types. - Add test_changedfiles.py to the test suite. - Add test_patches.py with test cases for the 'patches' inspection - flake8 fixes in the test suite - Python format fixes for test_changedfiles.py - Python format fixes in test_patches.py - More Python format fixes for test_patches.py - Remove unnecessary 'a' in DESC_PATCHES - Better explanation as to why the EmptyLicenseTag tests are skipped. - Test suite cleanup; add rebase= and same= to TestCompareSRPM - Black formatting fixes for the test suite. - Remove unused imports in test_upstream.py - Revert black fixes for test_config.py - Fix my email address in test suite source files. - Support single package URLs for before and after builds (#190) - Handle invalid/missing RPMs in get_product_release() - Use warnx(), errx(), and err() in src/rpminspect.c - Modify submit-koji-builds.sh to pick up all pkg-git branches. - Update the rpminspect.1 man page to reflect current status. - Update translation template files in po/ - Support relative directory paths for the -w option (#188) - Implement the 'virus' inspection and add test cases for it. - Update po/ template files - Python formatting fixes for test_virus.py - Update the osdeps/*/reqs.txt files. - More osdeps updates for the clamav needs - Install 'xz' for the 'style' GitHub Action - Fix a variety of small memory leaks in librpminspect - Stop the freshclam service for the Ubuntu gate job - Support slightly older versions of libclamav in inspect_virus.c - Add the 'politics' inspection to librpminspect. - In tearDown() in the test suite, call rpmfluff clean() methods - Add test_politics.py with 'politics' inspection test cases - Python black format fixes for test_politics.py - 'it should added' -> 'it should be added' - Increase the runtime timeout for test_virus.py - Install the timeout decorator on all OSes in our GitHub Actions - Install timeout-decorator with pip, not timeout - Expand librpminspect with support for SHA-224, SHA-384, and SHA-512 - Define DEFAULT_MESSAGE_DIGEST in constants.h and use that. - Replace some fprintf()/fflush() calls with warn()/warnx() calls - Rename the 'DT_NEEDED' inspection to 'dsodeps' - Rename 'LTO' inspection to 'lto' - Update translation template and fix two incorrect error strings. - Note all valid message digests in data/politics/GENERIC - Improve reporting in the patches inspection - Only fail 'changedfiles' for VERIFY and higher results - If 'removedfiles' only reports INFO messages, pass the inspection - If 'addedfiles' only reports INFO results, pass the inspection - If 'patches' only reports INFO results, pass the inspection - No need to check value of allowed in permissions_driver() - Do not let INFO results fail the 'doc' inspection. - Do not let all INFO results in 'upstream' fail the inspection - Fix RPMFILE_FLAGS handling for %config files (#221) - Still report file changes in the 'config' inspection for rebases - Correctly check RPMFILE_DOC flags in the 'doc' inspection - Include rpm/rpmfi.h insted of rpm/rpmfiles.h - Only check regular files and symlinks in the 'doc' inspection - Remove unnecessary assert() statements in filecmp() - Remove incorrect warnx() reportings based on filecmp() return value - Exclude man pages from the 'doc' inspection - Honor the -a command line option for downloads as well as runtime (#233) - Allow optional 'commands' block in the config file - Fix assorted non-critical memory leaks - Remove unnecessary warn() after a failed stat() - Additional memory fixes for the abidiff inspection (#244) - Free ELF symbol names list in find_lto_symbols() before return - Followup to the memory fixes for read_abi() and free_abi() - Prevent invalid pointer dereferencing in invalid result in 'patches' (#245) - Avoid reusing the same abi_pkg_entry_t struct in read_abi() - Allow a set of excluded path prefixes in 'pathmigration' - Fix the YAML parsing for the pathmigration block - Document the BRANCHES variable for 'make koji' - Include the .asc file when submitting new Koji builds (#191) - Include the .asc file in the spec file- For BUILDTYPE=release, generate the correct type of changelog - Minor logic error in submit-koji-builds.sh - Fix reading existing spec file in submit-koji-builds.sh - Bump development build version to 1.2 - Use is_rebase() in the 'upstream' inspection - Use rpmtdSetIndex() and rpmtdGetString() in get_header_value() - Add get_rpmtag_fileflags() to files.c and call from extract_rpm() - Use correct Version and Release values in download_build() - #include -> #include - Add the 'config' inspection to librpminspect - Rephrase reporting messages in the 'config' inspection - Add the 'doc' inspection to librpminspect - Update TODO list - Minor updates to try and make gate.sh more reliable - Add config and doc to the inspections list in generic.yaml - Rename the '%files' inspection to 'files' (#194) - Modify baseclass.py to allow 'before' and 'after' NVR tuples - Use the after tuple to override the NVR in test_abidiff.py - Use the after tuple to override the NVR in test_upstream.py - Write rpminspect output to a file in the test suite - Add 28 test cases for the 'config' inspection - Fix the errors in the 'config' inspection found by the test suite - Fix Python problems in the test suite reported by black and flake8 - Add Makefile targets for black and flake8 - One more formatting issue reporting by Python black in test_config.py - More 'python black' formatting errors reported for test_config.py - https://mandoc.bsd.lv -> http://mandoc.bsd.lv - Add a -D/--dump-config option to rpminspect(1) - Use global reported variable in 'config' inspection - Fix reporting errors in the 'doc' inspection - Add test_doc.py with 'doc' inspection test cases - Ignore flake8 W291 in test_doc.py where we explicitly want whitepsace. - Add init_rebaseable() to librpminspect - Check the rebaseable list in is_rebase() in librpminspect - Update TODO list - Define a new GitHub Action using utils/gate.sh - Update the README.md file - shellcheck fixes for utils/gate.sh - Use utils/find-ninja.sh to determine what ninja-build command to use - Install fedora-packager for the gate.yml GitHub Action - Remove before and after variables from gate.sh; unused - Remove unnecessary basename() calls in inspect_upstream.c - Do not assume an or bn contain strings in is_rebase() (#196) - Adjust what things run during with GitHub Actions - Add get_rpm_header_string_array() to librpminspect - Replace init_source() with get_rpm_header_string_array() in inspect_upstream.c - free() allocated output string in inspect_changelog.c on errors - s/10240/16384/ in archive_read_open_filename() call in unpack.c - Add the 'patches' inspection to librpminspect - Add uncompress_file() to librpminspect - Add filecmp() and use that in place of zcmp/bzcmp/xzcmp - README.md updates - Restrict some GitHub Actions to source code and test suite changes. - Only enable lz4 compression if ARCHIVE_FILTER_LZ4 is defined - Go ahead and wrap the rest of the libarchive compression filters - s/class Test/class /g - Make sure uncompress_file() supports xz compression - Handle more compressed file MIME types. - Add test_changedfiles.py to the test suite. - Add test_patches.py with test cases for the 'patches' inspection - flake8 fixes in the test suite - Python format fixes for test_changedfiles.py - Python format fixes in test_patches.py - More Python format fixes for test_patches.py - Remove unnecessary 'a' in DESC_PATCHES - Better explanation as to why the EmptyLicenseTag tests are skipped. - Test suite cleanup; add rebase= and same= to TestCompareSRPM - Black formatting fixes for the test suite. - Remove unused imports in test_upstream.py - Revert black fixes for test_config.py - Fix my email address in test suite source files. - Support single package URLs for before and after builds (#190) - Handle invalid/missing RPMs in get_product_release() - Use warnx(), errx(), and err() in src/rpminspect.c - Modify submit-koji-builds.sh to pick up all pkg-git branches. - Update the rpminspect.1 man page to reflect current status. - Update translation template files in po/ - Support relative directory paths for the -w option (#188) - Implement the 'virus' inspection and add test cases for it. - Update po/ template files - Python formatting fixes for test_virus.py - Update the osdeps/*/reqs.txt files. - More osdeps updates for the clamav needs - Install 'xz' for the 'style' GitHub Action - Fix a variety of small memory leaks in librpminspect - Stop the freshclam service for the Ubuntu gate job - Support slightly older versions of libclamav in inspect_virus.c - Add the 'politics' inspection to librpminspect. - In tearDown() in the test suite, call rpmfluff clean() methods - Add test_politics.py with 'politics' inspection test cases - Python black format fixes for test_politics.py - 'it should added' -> 'it should be added' - Increase the runtime timeout for test_virus.py - Install the timeout decorator on all OSes in our GitHub Actions - Install timeout-decorator with pip, not timeout - Expand librpminspect with support for SHA-224, SHA-384, and SHA-512 - Define DEFAULT_MESSAGE_DIGEST in constants.h and use that. - Replace some fprintf()/fflush() calls with warn()/warnx() calls - Rename the 'DT_NEEDED' inspection to 'dsodeps' - Rename 'LTO' inspection to 'lto' - Update translation template and fix two incorrect error strings. - Note all valid message digests in data/politics/GENERIC - Improve reporting in the patches inspection - Only fail 'changedfiles' for VERIFY and higher results - If 'removedfiles' only reports INFO messages, pass the inspection - If 'addedfiles' only reports INFO results, pass the inspection - If 'patches' only reports INFO results, pass the inspection - No need to check value of allowed in permissions_driver() - Do not let INFO results fail the 'doc' inspection. - Do not let all INFO results in 'upstream' fail the inspection - Fix RPMFILE_FLAGS handling for %config files (#221) - Still report file changes in the 'config' inspection for rebases - Correctly check RPMFILE_DOC flags in the 'doc' inspection - Include rpm/rpmfi.h insted of rpm/rpmfiles.h - Only check regular files and symlinks in the 'doc' inspection - Remove unnecessary assert() statements in filecmp() - Remove incorrect warnx() reportings based on filecmp() return value - Exclude man pages from the 'doc' inspection - Honor the -a command line option for downloads as well as runtime (#233) - Allow optional 'commands' block in the config file - Fix assorted non-critical memory leaks - Remove unnecessary warn() after a failed stat() - Additional memory fixes for the abidiff inspection (#244) - Free ELF symbol names list in find_lto_symbols() before return - Followup to the memory fixes for read_abi() and free_abi() - Prevent invalid pointer dereferencing in invalid result in 'patches' (#245) - Avoid reusing the same abi_pkg_entry_t struct in read_abi() - Allow a set of excluded path prefixes in 'pathmigration' - Fix the YAML parsing for the pathmigration block - Document the BRANCHES variable for 'make koji' - Include the .asc file when submitting new Koji builds (#191) - Include the .asc file in the spec file- For BUILDTYPE=release, generate the correct type of changelog - Minor logic error in submit-koji-builds.sh - Fix reading existing spec file in submit-koji-builds.sh - Bump development build version to 1.2 - Use is_rebase() in the 'upstream' inspection - Use rpmtdSetIndex() and rpmtdGetString() in get_header_value() - Add get_rpmtag_fileflags() to files.c and call from extract_rpm() - Use correct Version and Release values in download_build() - #include -> #include - Add the 'config' inspection to librpminspect - Rephrase reporting messages in the 'config' inspection - Add the 'doc' inspection to librpminspect - Update TODO list - Minor updates to try and make gate.sh more reliable - Add config and doc to the inspections list in generic.yaml - Rename the '%files' inspection to 'files' (#194) - Modify baseclass.py to allow 'before' and 'after' NVR tuples - Use the after tuple to override the NVR in test_abidiff.py - Use the after tuple to override the NVR in test_upstream.py - Write rpminspect output to a file in the test suite - Add 28 test cases for the 'config' inspection - Fix the errors in the 'config' inspection found by the test suite - Fix Python problems in the test suite reported by black and flake8 - Add Makefile targets for black and flake8 - One more formatting issue reporting by Python black in test_config.py - More 'python black' formatting errors reported for test_config.py - https://mandoc.bsd.lv -> http://mandoc.bsd.lv - Add a -D/--dump-config option to rpminspect(1) - Use global reported variable in 'config' inspection - Fix reporting errors in the 'doc' inspection - Add test_doc.py with 'doc' inspection test cases - Ignore flake8 W291 in test_doc.py where we explicitly want whitepsace. - Add init_rebaseable() to librpminspect - Check the rebaseable list in is_rebase() in librpminspect - Update TODO list - Define a new GitHub Action using utils/gate.sh - Update the README.md file - shellcheck fixes for utils/gate.sh - Use utils/find-ninja.sh to determine what ninja-build command to use - Install fedora-packager for the gate.yml GitHub Action - Remove before and after variables from gate.sh; unused - Remove unnecessary basename() calls in inspect_upstream.c - Do not assume an or bn contain strings in is_rebase() (#196) - Adjust what things run during with GitHub Actions - Add get_rpm_header_string_array() to librpminspect - Replace init_source() with get_rpm_header_string_array() in inspect_upstream.c - free() allocated output string in inspect_changelog.c on errors - s/10240/16384/ in archive_read_open_filename() call in unpack.c - Add the 'patches' inspection to librpminspect - Add uncompress_file() to librpminspect - Add filecmp() and use that in place of zcmp/bzcmp/xzcmp - README.md updates - Restrict some GitHub Actions to source code and test suite changes. - Only enable lz4 compression if ARCHIVE_FILTER_LZ4 is defined - Go ahead and wrap the rest of the libarchive compression filters - s/class Test/class /g - Make sure uncompress_file() supports xz compression - Handle more compressed file MIME types. - Add test_changedfiles.py to the test suite. - Add test_patches.py with test cases for the 'patches' inspection - flake8 fixes in the test suite - Python format fixes for test_changedfiles.py - Python format fixes in test_patches.py - More Python format fixes for test_patches.py - Remove unnecessary 'a' in DESC_PATCHES - Better explanation as to why the EmptyLicenseTag tests are skipped. - Test suite cleanup; add rebase= and same= to TestCompareSRPM - Black formatting fixes for the test suite. - Remove unused imports in test_upstream.py - Revert black fixes for test_config.py - Fix my email address in test suite source files. - Support single package URLs for before and after builds (#190) - Handle invalid/missing RPMs in get_product_release() - Use warnx(), errx(), and err() in src/rpminspect.c - Modify submit-koji-builds.sh to pick up all pkg-git branches. - Update the rpminspect.1 man page to reflect current status. - Update translation template files in po/ - Support relative directory paths for the -w option (#188) - Implement the 'virus' inspection and add test cases for it. - Update po/ template files - Python formatting fixes for test_virus.py - Update the osdeps/*/reqs.txt files. - More osdeps updates for the clamav needs - Install 'xz' for the 'style' GitHub Action - Fix a variety of small memory leaks in librpminspect - Stop the freshclam service for the Ubuntu gate job - Support slightly older versions of libclamav in inspect_virus.c - Add the 'politics' inspection to librpminspect. - In tearDown() in the test suite, call rpmfluff clean() methods - Add test_politics.py with 'politics' inspection test cases - Python black format fixes for test_politics.py - 'it should added' -> 'it should be added' - Increase the runtime timeout for test_virus.py - Install the timeout decorator on all OSes in our GitHub Actions - Install timeout-decorator with pip, not timeout - Expand librpminspect with support for SHA-224, SHA-384, and SHA-512 - Define DEFAULT_MESSAGE_DIGEST in constants.h and use that. - Replace some fprintf()/fflush() calls with warn()/warnx() calls - Rename the 'DT_NEEDED' inspection to 'dsodeps' - Rename 'LTO' inspection to 'lto' - Update translation template and fix two incorrect error strings. - Note all valid message digests in data/politics/GENERIC - Improve reporting in the patches inspection - Only fail 'changedfiles' for VERIFY and higher results - If 'removedfiles' only reports INFO messages, pass the inspection - If 'addedfiles' only reports INFO results, pass the inspection - If 'patches' only reports INFO results, pass the inspection - No need to check value of allowed in permissions_driver() - Do not let INFO results fail the 'doc' inspection. - Do not let all INFO results in 'upstream' fail the inspection - Fix RPMFILE_FLAGS handling for %config files (#221) - Still report file changes in the 'config' inspection for rebases - Correctly check RPMFILE_DOC flags in the 'doc' inspection - Include rpm/rpmfi.h insted of rpm/rpmfiles.h - Only check regular files and symlinks in the 'doc' inspection - Remove unnecessary assert() statements in filecmp() - Remove incorrect warnx() reportings based on filecmp() return value - Exclude man pages from the 'doc' inspection - Honor the -a command line option for downloads as well as runtime (#233) - Allow optional 'commands' block in the config file - Fix assorted non-critical memory leaks - Remove unnecessary warn() after a failed stat() - Additional memory fixes for the abidiff inspection (#244) - Free ELF symbol names list in find_lto_symbols() before return - Followup to the memory fixes for read_abi() and free_abi() - Prevent invalid pointer dereferencing in invalid result in 'patches' (#245) - Avoid reusing the same abi_pkg_entry_t struct in read_abi() - Allow a set of excluded path prefixes in 'pathmigration' - Fix the YAML parsing for the pathmigration block - Document the BRANCHES variable for 'make koji' - Include the .asc file when submitting new Koji builds (#191) - Include the .asc file in the spec file- Formatting fixes in Makefile help output - Begin config file restructuring starting with rpminspect-data-generic - Support multiple configuration files. - Docs work in progress. - Only fail the annocheck inspection for RESULT_VERIFY. - Read debuginfo if available when running the 'annocheck' inspection. - Add the '%files' inspection to librpminspect - Add __attribute__((__sentinel__)) to the run_cmd() prototype - Add test suite cases for the '%files' inspection. - Added the 'types' inspection to compare MIME types between builds. - Update TODO file - Update the MISSING file - s/rpminspect.yaml/generic.yaml/ in the Makefile and README - Skip debuginfo and debugsource packages in the 'types' inspection - Add test_types.py to the test suite - Note the 'types' inspection generic.yaml - Modify add_entry() in init.c to skip duplicate entries - Start GitHub Action workflow files for rpminspect. - Install meson in ci-ubuntu.yml - Change 'nls' option in meson_options.txt to a boolean - Install gettext for ci-ubuntu - Add more build dependencies to ci-ubuntu.yml - Drop the 'method' parameter from dependency() lines in meson.build - Split xmlrpc libs to separate dependency() lines in meson.build - More xmlrpc updates for meson.build and lib/meson.build - Try to support systems with xmlrpc-c without the pkgconfig file. - Changes to build on Ubuntu, specifically the GitHub Actions system - Syntax error in ci-ubuntu.yml - Add ci-fedora.yml for GitHub Action CI on Fedora - Fix errors in ci-fedora.yml - Put all of the ci-ubuntu.yml steps in ci-ubuntu.yml - Remove install-libmandoc.sh and ubuntu-pkgs.sh helper scripts. - Install python3-setuptools in ci-ubuntu.yml - Install rpm-build in ci-fedora.yml - Install libxmlrpc-core-c3-dev in ci-ubuntu.yml - Disable ci-ubuntu.yml for now, enable code coverage in ci-fedora.yml - Remove Travis-CI files. - coverage fixes for ci-fedora.yml - Install git in ci-fedora.yml - Enable manual dispatching of the CI on Fedora tests - Remove actionspanel thing for GitHub Actions, drop Coveralls block - Comment the ci-fedora-yaml file - Fix the 'elf' inspection and test_elf.py on Ubuntu - Enable the ci-ubuntu GitHub Action again - Check all return values of getcwd() - Ignore installed Python modules with pip3 in ci-ubuntu.yml - Build 'execstack' test program with -Wl,-z,lazy - Add ci-centos8.yml to enable CI on CentOS 8 as a GitHub Action - s/centos8:latest/centos8/g - Trying 'container: centos:centos8' - Drop 'sudo' from ci-centos8.yml - Rename README to README.md - Enable GitHub Action for CI on CentOS 7 - Drop -I from the pip install line in ci-centos7.yml - Use the 'make instreqs' target for install test suite deps. - Add back 'dnf -y install 'dnf-command(builddep)'' to ci-fedora.yml - Nope, that doesn't do it. Just install make in ci-fedora.yml first - More 'make instreqs' fixes. - s/scripts/utils/g in the Makefile - s/TOPDIR/topdir/g in the Makefile - Install make in ci-centos7.yml - Move REQS and PIP lists out of the Makefile to files in osdep/ - '^$$' -> '^$' - Slightly different sourcing of the osdep/ files - Set OS using := in the Makefile - Make the reqs.txt files in osdep/ contain all deps - linux-headers -> linux-headers-$(uname -r) for Ubuntu - Remove html401-dtds from osdep/centos8/reqs.txt - Use `` instead of $() since this list goes through make(1) - Does $(shell uname -r) work in this case? - More osdep/ work and simplification. - Rename 'osdep' to 'osdeps' - meson patches for opensuse - Move mandoc installation to post.sh in osdep/ubuntu - Add GitHub Action for CI on OpenSUSE - opensuse:latest -> opensuse/leap:latest - Install tar in ci-opensuse.yml - Install gzip in ci-opensuse.yml - More fixes for ci-opensuse.yml - Small fixes to determine-os.sh - ci: Add Python linting jobs - ShellCheck fixes for the regress/ scripts - ci: Add ShellCheck to lint shell scripts - Adjust how the Makefile reports unknown operating system. - Just check $ID in determine-os.sh for opensuse - Use pip for PIP_CMD on opensuse-leap - Update the centos images before doing anything else. - Install curl in opensuse-leap - Get 'rc' from Fedora on opensuse and copy it to /usr/local - Install kernel-default-devel for opensuse CI - Move the 'uses' part of the centos CI jobs to the first step - ShellCheck fixes for the utils/ scripts. - Some flake8 fixes in test/, using yapf - Combine all of the GitHub Actions CI runs in to ci.yml - Manually install rpmfluff on CentOS 7; pip is failing here - Use rpmfluff-0.5.7 explicitly for centos7 - Use rpmfluff-0.5.6 on centos7 - OK, let's try rpmfluff-0.5 for centos7 - Last try, rpmfluff-0.5.4.1 for centos7 - Back to trying to manually install rpmfluff for centos7 - Style the Python code with Black - Add the Black formatting commit to blame revision ignore list - OK, just copy rpmfluff.py in place - Make sure to manually install rpmfluff-0.5.7.1 for centos7 - Don't assume we have a header or even a list of files (#161) - python: flake8: drop * imports - python: flake8: wrap long lines to less than 100 characters - python: flake8: drop unused imports - python: flake8: remove unused local variables - python: flake8: add PEP8 whitespace - python: flake8: mark in-line bash scripts as raw strings - python: rename several duplicate test cases - ci: merge style workflows - Adjust rpminspect.spec.in for file moves and default changes. - Return the reallybadword to the metadata tests - Adjust test_metadata.LosingVendorCompareKojiBuild to expect VERIFY - The shared libmandoc check should not look for a static libmandoc - Update the AUTHORS file - Rename ipv6_blacklist to forbidden_ipv6_functions - Rename stat-whitelist to fileinfo - Rename 'caps_whitelist' to 'caps' and drop the use of 'whitelist' - Rename abi-checking-whitelist/ to abi/ in /usr/share/rpminspect - Rename 'version-whitelist/' to 'rebaseable/' in /usr/share/rpminspect - Rename "political-whitelist/" to "politics/" in /usr/share/rpminspect - Drop unnecessary method re-definitions in base test classes - Use super() rather than explicitly calling the parent class - Call configFile() on object instance rather than using the parent class - Upload coverage report to codecov - Improve the error reporting for test result checking - Convert to AUTHORS.md file, add Makefile target to generate it. - Introduce the 'movedfiles' inspection and a lot of other fixes (#155) - AUTHORS -> AUTHORS.md in rpminspect.spec.in - Add basic tests for the filesize inspection - Multiply the file size difference before dividing - Update README.md - Update README.md (more Markdown changes) - Update POTFILES and rpminspect.pot - chmod 0755 test_filesize.py - tests: optionally check the result message - tests: add further filesize tests for shrinking files - inspect_filesize: drop extra - from the message about file shrinkage - Enable 'permissions' inspect for single build analysis. - Add 24 new test cases to cover the 'permissions' inspection. - chmod 0755 test_permissions.py - Make sure all RESULT_INFO results are set to NOT_WAIVABLE - Fix some specific problems with the 'permissions' inspection. - Pass "-r GENERIC" to rpminspect in the TestCompareKoji class - Add 12 more permissions test cases for setuid file checks - Update TODO list - Update test_symlink.py tests for new waiver_auth values - Add a fedora-rawhide job and renamed 'fedora' to fedora-stable - Update the rpminspect.pot translation template - Relicense librpminspect (lib/ and include/) as LGPL-3.0-or-later - Ignore .tox/ subdirectory - License the rpminspect-data-generic subpackage as CC-BY-4.0 - Add a copy of the Apache 2.0 license for the 5 files in librpminspect - Update the License tag in the spec file and the %license lines - Add debian-testing as a CI workflow; add missing osdeps files. - Update determine-os.sh to handle Fedora stable and rawhide - Drop the use of 'sudo' in ci.yml - sudo required for Ubuntu CI job, install make for debian-testing - See what $ID is set to in determine-os.sh - Workaround a bug in meson 0.55.0 for Fedora CI jobs - Add 'debian' catch to utils/determine-os.sh - Rename 'osdeps/debian-testing/' to 'osdeps/debian/' - Add opensuse-tumbleweed to the CI job list - Add libmagic-dev to osdeps/debian/reqs.txt - Fix memory corruption in init_rpminspect - Add comment clarifying the License tag in the spec file. - If check_results() raises AssertionError, dump the JSON output - Fix test_changelog.py test cases that are failing. - Fix UnbalancedChangeLogEditCompareKoji - Handle rpm versions with x.y.z.w version numbers in test_symlinks.py - Fix mandoc build problems in opensuse-tumbleweed CI job - Install gcovr using pip on opensuse-tumbleweed - Handle systems that lack pkg-config files for libelf and libcap - Add archlinux CI job in GitHub Actions - Forgot --noconfirm on the 'pacman -Syu' line. - Add missing DESC_MOVEDFILES block to inspection_desc() - More minor fixes to the Arch Linux CI job. - Install gcovr with pip for the Arch Linux CI job. - Support building on systems that lack - Add detection for to meson.build - Ensure an int is used for snprintf() in inspect_manpage_path() - WIP: 'abidiff' inspection - Only report permissions change if there is a mode_diff (#181) - Fix -Werror failures in inspect_abidiff.c - Add sl_run_cmd() to librpminspect. - Add get_arches() to librpminspect - WIP: abidiff inspection - Some minor edits to the README.md file - More minor updates to the README.md file - Replace get_arches() with init_arches() - Add test_addedfiles.py to the integration test suite - Expand find_one_peer() to soft match versioned ELF shared libraries - Add the beginnings of the 'abidiff' inspection code. - Report out findings in the abidiff inspection. - Update the test suite to cover rpmfluff 0.6 - libmandoc configure workaround needed on Debian too - shellcheck fixes for the scripts in utils/ - Add abi.c, the code that reads in the ABI compat level files (#144) - Be sure to close the open file before exiting init_fileinfo() - Python formatting cleanups - Add --diff to the Python format checker - Add new setting to abidiff section of the config file - Add -n/--no-rebase command line option to disable rebase detection - Store size_threshold as a long int rather than a char * - Check abidiff(1) results against the ABI compat level definitions (#144) - Add 'apt-get -y install libgcc-s1:i386' to pre.sh for Debian - Add integration test cases for the abidiff inspection (#144) - Add 'dpkg --configure -a' to pre.sh for debian - Install libterm-readline-perl-perl for debian CI - Install libabigail for Fedora and CentOS CI jobs - libgcc-s1:i386 -> lib32gcc-s1 for debian CI - Install libabigail for opensuse-leap, opensuse-tumbleweed, and arch CI - Install libabigail for debian and ubuntu CI - Install libabigail-dev for debian and ubuntu, not libabigail - Install libabigail-tools on opensuse-leap and opensuse-tumbleweed - Install libabigail-git for arch linux CI - Move free_argv_table() to runcmd.c - Install 'abigail-tools' for debian-testing and ubuntu CI - Install libabigail using the Arch User Repo on arch CI - Explain the osdeps/ subdirectory. - No, just clone libabigail from git and build it manually on arch - Add beginning of kmidiff inspection, put ABI functions in abi.c - Read list of possible kernel executable filenames from the config file. - Drop abidiff_ and kmidiff_ from extra_args; add kernel_filenames - Just call the abidiff and kmidiff extra args settings "extra_args" - Define 'kmi_ignore_pattern' in the config file. - Handle builds that lack all debuginfo packages (#186) - Do not assume peer->after_hdr exists (#187) - Store copy of original pointer in strsplit() to free at the end. - Use mmap() and strsplit() in read_file() rather than a getline() loop - Fix memory leaks in abi.c functions - open() failure in readfile() is not fatal, just return NULL - Add utils/gate.sh - Have check_abi() pass back the ABI compat level found - Update descriptions for abidiff and kmidiff inspections - Hook up the kmidiff inspection. - Use read_file() in init_fileinfo() and init_caps() - Use read_file() in validate_desktop_contents() - Use read_file() in disttag_driver() - Adjust how init_fileinfo() and init_caps() iterate over file contents - Fix 'tox -e format' style problems found. - Avoid comparing elf files that are not shared libraries - Support --kmi-whitelist in the kmidiff inspection - Trim worksubdir from paths in reported abidiff and kmidiff commands - Remove the kmi_ignore_pattern setting for the config file. - Create include/queue.h to replace the _COMPAT_QUEUE blocks everywhere - Update AUTHORS.md - Report metadata changes for rebased packages as INFO - Do not fail the specname inspection when given a non-SRPM - For passing upstream inspections, do not report a remedy string. - Do not fail the lostpayload inspections if it only gives INFO messages - Clarify unapproved license message in the license inspection - Use FOPEN_MAX for nopenfd parameter in nftw() calls - Make sure to close open file descriptors from get_elf() calls. - Include 'src' architecture in the rpminspect runs in gate.sh - Make sure kmidiff is listed in the spec file - TODO updates - Update rpminspect.pot and POTFILES for translations ru1.10-1.el81.10-1.el8 rpminspect.build-id7702033d5279d5e66ac705c2fb62815a560e57cdrpminspectAUTHORS.mdCHANGES.mdREADME.mdTODOrpminspectCOPYINGrpminspect.morpminspect.1.gz/usr/bin//usr/lib//usr/lib/.build-id//usr/lib/.build-id/77//usr/share/doc//usr/share/doc/rpminspect//usr/share/licenses//usr/share/licenses/rpminspect//usr/share/locale/ru_RU/LC_MESSAGES//usr/share/man/man1/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protectioncpioxz2x86_64-redhat-linux-gnuELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=7702033d5279d5e66ac705c2fb62815a560e57cd, strippeddirectoryUTF-8 Unicode textASCII textASCII text, with very long linestroff or preprocessor input, UTF-8 Unicode text (gzip compressed data, max compression, from Unix) RRRRRRRR RR https://bugz.fedoraproject.org/rpminspectutf-8e7958abef0040da98a80cc2579a53aab5f7771049c0bd042fc601fe244e52bd5?07zXZ !#,q] b2u y-iSqj`/`qL/`{E/ #$x3 I<8{p' t\'[7fYy\`A9.-(F'H[,7$K>?\WAZHRs>t oB7逝2+k},$gS@V/A؅ M23fF^MF*v4.WşՋe-0; 7ALKh(r+6;j-"YҴX"U5mҧ QK$֣(nu |n^]r܎")mIfὡeXvv~ R]~옥閭 `YcLvq5n 46$r)/\.h(}HQ x&@,' F7KnY)Ar` ?p2kFuhPj{},ﴍ}凤;pɞ8r4 ٷlYOvVo(lzا .=3 2i)8xL Hk1KS-ȫNIĮ{ou[q/5 @߈9Lk ()w}|i+|/DͲf1q?E4VzS cy~ԒKp*+.+fb"PZ!k6(x4QRF"?Λ@V(Zyym2W :3u/(ǭ)}yV)\؍9P!6S'xP"(.FdN5Pʪ|Qӧ ocM)g[ @ >ƌ|;v=CntPOHSR&+zT5XEP%l47&["zAcW۝ X4t6TisgrTJ. G#79۝>-c#N ¤2x_WFKP|W}8\o;>ߞ"HkYdˬY6T0G]a/QS)J, MD|n@k'`:]v%CE1,g[Ԝ]E3)MA}'AL%3J _!ݟ{!SYpYb5xP9vM)DC"{lpk0}J Zݭ42]@eܒ*zcjhҧ{ۢu6G*qw2a';Lk2~mD,_6DaZ2AFIl\ {m!#;QI*@.Zv TZM,Ft#㘨wO8foCE7[]:.r!SFqج{T$:Z/B ]ZGtA-(ihEP~+np"s*N'C!7R(',;DQ#A#86C!r"5 =9s<}ipuK6EwGS|dU]`35C&I4P1f{j#{?ٶno])~mLϟtj e-"&1wV#ΔNbQ v.@:?!$TFv |bx!dܷgǦ H=LR'+0S5V6SpJWvAQxid7udd/j D1|g!R$} eZi%j(DjdhͩqAQl#3˄qI^q@0C7^ˆ H(K,4ul3,Rb=/jgH#iBIݓ)WmzDT!~ C z@-ьjeFISI`K呙[ =v!݂eOB&SZ b;|/P)''GC1%?vHȵdTI{ej!cpASb@S$8,OEx)4'˖l蛎Mm~w^%L1Y҈gihdW~cPskibGOՑk1pn@ ͋$1: d֍`Hx2cT/7+q >nrtW8aWシ6/cUkZC=XŢFemwkTwOmc?u`^Wnc6tfQXPz(Gc4G:\  6"lƗUi}!K&i QG>;L CuwPk=`'r- uxL6C3vQ _l9:gN&G ޣb}d#٦ja킚qZUm[ϲG};Wl4k+B: ڿ,^&Ž-N̈́2Xlzp:hWcͳjwˈ˪][_ha0w^UYm3CqUt6ҲD< 0ZhF_wT8x5/4?rxJLd=.jv\x2);\4G {\1[50]*K"@oZ\;ʛZG5ŝ&tr0a>?L*`sp ͉Z En8؏#[l;x@klM 6E8jC~yjS4I=J:Yݕ &a! +=&n{; ɺٚnzڧ'gVmi,a!6n_;3nsqj L7E5xi#i0DקTKaa UxOD!D8zba.-Qvy光?蛔  N>VlUW>qռ9Ph@,Gn(4vU|4g@ i%lzK9\߶V-u>%km*X -%ǐR]/kjcI)sq;UF.W'U;w9D˒Ge}Ԭpnqfe׳ F6nHHSy;hzBiƁ .蕢X [71fb*i~}?SrvwX%]&@K %ZC^Kɹ/\=TqgbZS{WXo/i͢ԄvϺ~sʺ:P z\zPɝ.]n %}$ =pʆS5 xJyi!qjtb 06P*|pjj%:%a%bHo=AW %mLNF֥Jh]66~'u7}&XE_r釸ga@ֿiBɆ@D,D/$6w,Kl&6!I9]'bM[ /t@i{e(N&mˮX='4Tew_Rq|PΪ4sogmvy7WJ|g(]G+rҒ\|pG>@jSic.>ḁ[*fԇ;O(:^Д:Ϯqc0TZ 󿜹\`F6pIB+#LMbuc[Ckp!ꬌ{&3VۍlJo)M3YgHPi{$a+wg {DCwkhԛVVĤ;A#Eh a46ױ% d3Ɛ5XR(=|3dU? RdNqC٧86g2_*fMrpр mX&h0#ۂ)qtnrG]#q:uz"J^PJ,՝LhAV=\ldv@7hm+ڵfK$1iNT78*=&ZV1ҠQ"c+Vܒ yy?% R1_>?[`aٵ&C|Yvvjw!uQi]FT8E' H`?=Gf$>ۄSګ&.R̒GӸ.6GFLhk~ԁ3WI8&ZH /VQfu؂ȲU1fXT%=ޣ{F1PV I>^ }jrO*i? d;lTDR`ZET~/XAx>gOsOZDu4UjD `B`U.cdF,&_v kܩ(CA9t"EtMe4?1 ^1 ,jTJa6@NxtPyi>7^0vy׻67l9۽Q#ygZ~C_7Ympu>óe؆}:ʶeR'93vsI peMXtD1Cv[~û8aUX>2\uW#4 ;n~5d2! MD1}eA A@ Ak:O$(礙EܰgggZǂko(KlgS#=55<_z ] 9OƓ?oxDBMlV4F)ٞ,C8TjaEa"PwUBFs,+g{*Ru@3}~K{Ȧ?$qCRv{q皭c/DAr' [)܋b_FD?wR͞*bj"/Ep WlŪ.?$Q+@pQ.8'9$7sA;Zgk1(@$4 WvIY#`ୀyIñ9*ʳvY7Lxp04$6ÁQCk7ה q' 1W%t sI43v]J&0B T "@F= Y>ÒFdh16gs#XӺCxΫ/R7~t?@]omar3}cSճcp [\9vWV;k |ϱ\mu3j~2MCNװP/ I2~XП e.V *Y n Z<ēZQڣr%gHO7+h,O@`iC?`ɢh)+{ 7OA+]9Z=תu55"W?VDgjl#'Y8Lm:J̃dfb>S?>7hӧ]Y!r<k؁G+r1'_*ι*7EUg8wUm2"_y‡H=ѐjBhX-HdϩutOϦžT|i^n@OQQnY 1 jAq+ldWu&CupKIY*\1d;F.(߼6{C < 0} 7NLvo73Cq|bϷ:@ T9 >N#@&҈V)D6=E *B u$㏕S9;P~?dW4ONWCaڕluA4hr}b.|rF{e\pcA`ۚi̶8Rpd]uⳳU-@*e&G1Ҵ)3I6Fc@Vp6:˰atgO\͹ij1T ^j.{ݹ]5]n%ujGpFԇLlt{x_`]xv5 ]dh}IgAWY) ;t6O&g0:ġ=wGD)"'F^0XGNpY~qUTnS:+2u^c~L zj?;sGI% 5LyT^  ̲e$5+2(&j:niv W1t޲h<;2# ۈ5UYN҉o,X9F4LԄx8{p0y(j$7Ю\= ߢ ykxUD1_Ϯ-Ob :L|^eda6wֆtdnhF`CO85čǺX &x=!-T# $:Ul蚗n]+f$湾A˶5]0T(>iF}WA<.Byi׌o܂i͏],sCDMFUi>w\.r=aMAk6coE1 ew ^}Kg$]ɟ_h=zaKS+SyO,pBiw{M9pN9H5F$ZU?4. MD?Sh֡uwSs {s֍rb<gD")<`h:hB)=3jQ>rGh#< Z]{u^t2"UQHg?O- aQ,7X !xl!m,6\ZAݮ8($UfEoqƆN4]\nA?p@s Jƙ^BU;-[[@UӔQ ns 6z )t?ᐳAHUd0EZ_Ud|+j3qR< U*,/<c%E\.4E.ɢ$’V`T<-֜5'Q|#tV{W#}+qpT#M'ҽ9;\"T`1,ٽ࿓M#얬g oҚ2,M$WȄZ/ ٚR_`{*.g^Kq|Xlo->ԑi&ztS0?b>ZH[2=7A}6]MHj"|\b X9&VˑM}ez*Br'51 [ zdֺL570e"{ot|nupvܯ>'#tmT   < 4c9egSPD!XVԐEY£!|,K˙nQ.toKvQ>ML":Lz`UL,% 9o 3{;pW-qU DWt&~]O=mԫ s2@R!p9CY,֬wV4pZR$FqN@@{b{* ɺd (Ҽ8+d@b2Cl'ԝW`Fӫ},G]-ԂݘDK?̒8gkCS"ҒK:M@ċRklzF;՜'|MIt i/YzDP$(8È\D  b1=q^Y4+)rޚˍ=?JvRۃ.XbZAyCU>ۙfsg1yZhxԃTb;[_ /x3kiHӤhU@Io)8RCyW1 :p;jW2|h{[f4^0M H?T}gt'+&Hu'(K\?ZYsR ݪrf尗gױRՓ SoQU#oNJ0NۊgoK^wfK^/3=A93.ZTJ-S?ަ+>`izzfV-dR| F3roh\_ohVα8<cy @י y$Mhuu'%Dz )tM1Ӫt ɢM_Dיt 7êKuwe՚e%n"ˉ~ ] (ƑL?4DKbO0@\ -ҏaքRT>Sd#H,!VܑWW-ngh3"r">=KһfwBOg~83l+֐ ;/%x:Gk`#?)SD7Լ9^dIY(K.wm;n*pBB^ {BzoVtZ,{]( XJ5\ϓ.O01m\'Xx'\)!1H=5Dufغ&Ctqf%6 "(P]?|(䗄{ngX67]B5A.L˱48}_l¤a6VbQء`,o/Z+ћA SF=gv?Ǻ>OQTY|s@7gF'R_`G *6<|(ħ .ny~0mxIb/{$]z;+b|iBV{JY-9NFG2D.\+5lHs),Z 97fo)LL"|yּtO;4_zD];=“ݒO9 Z`8&`usmsS7W?Klk"zh:D4Tq`/`ODê?[=NAB'h#&ü}+8W2Cnn=z!rB, `NVZ4 G jYM]Qj)Hb2y<%'Q,2qhm1"59ۣ! }.q&,Db=Kr#3toy2|>( :d*pD`P*8Wۗ2Ʌ-YCR&Bu^LG2GħpJMHG4PksMp~)y?zMM0  3rJ"_dh,0v=F}4;5xqex #)]3˦8'~~R;9C{oU|Htp({ dY6hjm(D#\7QqDm.>S&Oo#EkwR{[5 *du"rnB0dي AZEt %Z_c(!WVNԴP:7|P w2vT3T뮥S!,Yb5( B]H[J"eGwŶb+)H%@dg"ۍXߘSV!_LohIj:8 Pk1PNB~;#dZ׭n$ TB.Lބ s\ƾ'GQwIH(R]U5m"kN[)~ƹShN'9`h΅%lv)ö .zLicRO4`RB SBƤXgP=)˚N]FϱqXO,cA ۞*l䏔0P0]_ 8ig4̘-x -ۗ{¥ Onm'fTT?BuVB5dY`rMXFrsG5m#P? hGP:]k=K>4]oicVtHXN9'j=TC$]G Q(ۀ|Aѫq~WImItY pFg&DF>ĈDW{}z6Rt͗45 @D ,P;f"ah:rI*a=,`n4@~x7Uqg\?|~{1I`~S3FiV_ЭE{Tr/a\h4%/4*zB,i+Zfނm ywe,өFbG_}?2R* Q;҉O=;J `|S~8ը܅CAa52 U`tE86s6EBa[OXbXBRIF.+:UN$yZnUsQ=9IT~*|\&A+41e'Ey6&ѕe Dr$rX>55-C=hٵ!t :葥3%JsYՅN$ 5KΝop)"UGVSZ7pXژDG|'`lΙiUGe IR#s l7~$]oI]Bfe熪|)^kf?hlq.ާ?KǞۉCsRI7YDc- ^'#^TY [vKKiKlS@=ޝKk߃d$aC[1ϧEЯ/RKdUVޒ)"g/&? 8e6>ɩӜ^A7!-|mPHyf@!O*hh=|: Z֛"F`@=l5ـj]!}6We~Y2RaXxJ @F۠" 쮍T.a֥LiQmX T>Z@l$7Nld)QiGV3|}՞%ܓΏ@Cn,9!BkT[Mħ(> =9!A Y:IԬ7X@7;t SƸ'qixi7̫p?K"wg: J P\KԒQLCK?FAN#@/ӊQ&$\T'*)BI!FA")q5=Wo#`Hʩ'RILpo'U> >``a:G//PXͶ['͆]}R* saKzq,A-䏪 SZYxq>^ ̚x:LeOQ:Z@= ŇRǭmQ"'T֮(}<lsxIuCgw~i@`k}J\%ӻ(9ƕ~qSoMrc!$u4~j aڤh+{q&-"'Iq x`6 1LJ@W 6ury\q;k2ʸ#k,Y+?&L×$lqAɕO{mdZ~[',olcElo,QZ4o!G1Á43T16~b-mFuBw{ݿ`5UPǎrL|鰒Z'suSd4Ö7d}Q$ʝx5\I2ccZcD_ 0@V A! ;A ^&x^dkK'&*z"a]{_?m&\%]IZKH`YKnhIЍ cV,Շ9?ϿT!8F*[d{%v-Y!Pᦇ@4(4sxkc.BFچvO'M'\\{\V{D'%2U,ewmV|.$}lMVw*]2K56|ugŭR{ 'KIMkq%ugB/ r m0!4!,^~VG4 biMR'9<_A-t .mktoVwṽɟ&#u\8c1?AuY237,NIoWT$ .W؜Y1dZ;,h j'a(~*'k@ \YwЦM26<#R0/E2Ros}H`tO!kq4 ,%8@r <FhY@WnAz:q"(yB""x }`]f?+o~e;) :1owUlud<$SAr~轁^w)XԂ_WgE `7e"i9:7LM& l#e*+_:d*nwߝ{qb2vOJ$h1Qǁ IU}r^h€+ف_RJ\cH^J-RAvw"PwV#'O_Y?̱5&}썮, "OlC9'Ļ$ԚVrOQt|b}p cd/1/v~Ve7>"Ws>wPWcj))Gv f)q}h]UEw_o'=dn?MN mFI"+X+0&d8rpk@Rܩg'Q*,kj3Cl Ԍ$Z SMޯFΦU1=MsR:-/&.vɷoDE |qOfh3rorӓ?#kKv!ar{tx`ۉx34G0$ÓL%٣KqrRvͣS Vwԡ锽k"{?k 3Udؗt3@w2 JxEW!D(b7-e}>cmm֢ < PU?HNNg~:٦7n"aVzA !v*8hg[|CPV<cDyE5sAς}E Sm̬p9?*~vǍR@{h>:NoĄ\,ӓjTLvoݐ,]}uoq^EP2U 3Md C LU>C34uʖV(m]Bn\TAeMu *i|٠tP1h!SƑ''h| '$ A<PVvv(#Юƫǭ?I6?e{YV@x;Vz1jϞhb/לA^ߗ{TdF#w6eLB~mZZ؏MT@jr%@tKs:dMVTVFG]՞?H{J@xPc#'J/zOKlcwCEJɖΛ[v.bzǧ%pxõsq{|CO}""/&a:L1ƺGm0 uӤU;O+nY"kqrzγS:( 7WonK.,td'Io$;baGm oOwvhG ++C;(m*ЭtipI+RkO&A~?YGnS*Rt]67g@&Rۡ<%qs=XTZw+i9H_U#R8y|q=r6pM`ȧ/X8sMA)~ӪHبk~E% FJ.ruwb  ?)vx?~f4{yT)G8!Is@Hc1KS~gfO VI(UN BUIL:C3M]`G}3a(<3™pt\ XRJz̝z|Kx3e/Z i]8h)N&Qj-ozOF/yވnf-JTU>\.Ȇw酫Y3/%ZFNb믭+p]< z{400$%|ȴ/jl3mjJ/M-$+6"(Y%bz׽ϓ. Gkr aZЈr"qERg|&`;$ PP wےFEu |B2βա\oP]kzm ~A/xyb:wN yM%?H "?/Kg_>hBUjM@{g޽I 5Ay%i&dᡠ+kX:c Mq+Ěk](Ss;w|uA[%F} g=?6!UܘT֑i OбdZ>+Jΐ=BlBuH# P@BJo)%&1^Fj.t618Iu 󿲥֫ 9O`~#1w=$gcuJl]!*&j7-:۶)1siRuM=XvG%զa cEXRTT~"qӱ,_#ا? 2L6oɚO3H96&[gld$h*C]%|ZxEv:3vh54(6 ݘ[+F簵VFc<kY$ ,oC_0[~ir ĕ_U9$2lN]\ 4zkB{}kRgBY%ԥGt V^NyWN\vf<}k))0˗_+_ǷWb x1f>ٝ2OCaF.#zSL 6XF,һp37F'AN9 ]}A1?Jzg {dgԗh-vWIe_ZKHhP澺RhP9]F ',wsKswF)ثdb9E-Y3n=kЃ/}gK7uiMV#cH;wȏ0,mTR)\휡E3{L/8 !߳V0Z&ы9eۀ n;=BR@K?sJPd,n!e,’:l~rg}aaef: 1"ZOSlZL2 FH JŦ͵ *Y6rMdRwh3|Ho~P"W9ֶ*{Q+823>ߋU²" ѫZnS%3sOqd|jxtp$A"ͭcs:!s v}-@=+[49܏\IQAG)6l_iqh ϗ6xyXQ'rb Fęj,WdϞ$K 'trVv2 1|/pW@dL3CW?1]d;o_R*:]EE)|2WԽm|AѮZ{3jx44WL-m:qs[BgVv%sDW,m(r'Ew_- KKJ.(IgPʡ>+ǚUCKASݓشQª#-qX*f`}@{{3Nˎ}.y$;n֌uv3`I$ٸ|,bof 8}Re]Ym'd~TyYy:0{7x؞*  T:u09lQޚ'Pdb ,4x:;L\)%sm}~TV`G^^U38C=Aq)5ɍQJĻOǙPУNJ.LA,Pw3"n5Ӷډv"Y*4Z1X jHȍũ.ty(l:Db604#@S {?#(&Z?ٳ1,~F'޳{vcBZ2 ٓT7cU:ꮒѭ|Y@^pWL|ΰ uGi/ /]OȾaY#%H I30e_Ypmf,6{8OGe!2<̝5jp8QBe}$+:礇ؠw4!jBӯsRa{")+/~\z^ڇudF0)UP7;WB ӛ;~k=UhNRXɢ0Iح &c;H&\[ɢб b:JP|#$? (C!'DG@Py] qIL}xدf N'v;) O/' Q1Z b5#FF_WZ0?eFbM>Y)ī>_U$n_&=7ى8phݸ3KlLk>7ke)%f~Ee;̈ /%%hWp}^gC5B$$DE!R*B*'BSU!g`oj)'LQ`hy,1KZzIZ@U{Æӭ >D'`A2zHGMF|쏇Rs?g߳W9ُOw:N,[v?qH+m3j}ɱ,qbn&|IFs!O-/wS^A18Ӣ$9'2a4*3^b}'OE1)H\Kzz^aPs;}w~c0L'bRO>3=$M^S2J}5_zͨ3ؐ޸w IRW7(~[t꞉#F =/N:oa6H3%102pCDЀk}6l}%i\T*(6MPqYXEad$h}AZas,5soc5AbշBVsM^-L0EOL0#x29bS"+8^pUٿQ"5\U>)/LOzиU`Gܼa@ Qtpot^"KrG ۟BxC&\y6=7 wm零کaw<ק .a햜^&?y"DCSG'2Nރ`M~γ_2ne1Ep|!߱dI_F;a pèxZ2 8b3]Xv.ٰ LE-gUR/njE̬9`u߬俳Zڎ >)݌`_ "-jŀ6Ad}C7:m@j,qXY`3 1 PB^51{.wdh:vHs$DAS7ɱՆ"|Ґɕv *cֱ䩑J~h\ )葠mRūӛ8yVCqs(KWCVgl𣱍HծnTGf @vq]$ēhV/k0Ql"Z(.6 \I0"H,A{:٩_U"LxwUJ~ <߶хϛ-R`:(r݂:{t{X`0'q!r w;.e@D_>$t&Y5D:f DATEUƹ4ə _7Bg8:1N A e(6ԁA (_ʃY8+BS%`uRH\H-TP. ǛHK d]$WF, M Oȿ^X`m,+´eǺ!}?;_j hJI*{룚/晴ΡvK/j'p͊)Λ}y ͈\%AM! 1v[C %،K?YmF}E+#]_pi$xv^@G@5&1]bĄ"gO#fgŇB}D/s)4t̬ )KTa7 VћfcgucC}#jQ9G/zeV5slThAUVwS&2u4<D:ŭFǻ LAjd4YNe;pL"b׬xt`Bd1;w©J3vಱPt6փh+I]|HdQ )MqrQJ: @¬أMá~|i,i(K!%>??ѷԜTjEv'Q }?#ɨ}#[ :0 oC+aI6BH3CsJ|^ssniT(鮗b ؐ_u`vcr:kRevFM&(Zh;6:ڭ8f>=h}5dOl؜>cO7oSxҢrzBumm dҞ2KRug=?J[(\j"^;Y ݱ##e')7kW1+r}d%r+Q"C*[DL~gb_["hc)9AX? mAW)o"pxY"#2Pڷ@yvDf_qHUlƉͮte@f:t1pbv&CU&)R94Vؐ2}DV/Re2: Jq(=PG}T}jMڳkfb " t/@Ry6myHIܟ?^"?e%kw xK{!B,\HFR> -ьm^^`[~^_edrs/_501Ć 遖6q㍴;]G_ ?kں`4~x@v%Ɣ\6UAr(:$ 15ڣE̳(5rgOs}Dښf! "uP3d`]^.H9Nyfߌr $i1jqt5Hj:[wa+.Q%s!Juneu:cj4dqp|n(@ W̞66ˉ1H-Csҽ=Ʈ0֘0Fg}T6\ѐ";I4 ^Ǻlj́4orOP owO ?$*%DGiId I`ΝzDf S  qW:ΫoFX^&~TXEٞO) *E!A}7Ec4IqV:Ve`L:# ]H4>!1xQC`~)ϣjPq]9Bj$ý#ԝOչ~_Fh SfJ]d4`mZolx.2`͎}FGv|,j}q}QUΤ/BnOo6h% TLM~ҵD]9#@j !,Z%aUR Ԃ2Zx'ϐebj, % r#sA8m5IAgӟj"SH%9osc 5kOGd.ш֟dPO`6D"nhu B28e/xAF9 /QAnggY5;ϸzL|< erյtIHÅYKpr^Y%XaQp&8PGў~S?Mg\,#`ƽ8X9Q9 @E4?gˊ21FSP 2&t_he%r_P(cM ƹRSr.FƓNg9Mod33m;EyѨiX7CpQZF<|rn]gP}/sqT~mL +h,Y՘*դ ~ ɇ<\:!yO\qEv+c58Wuk xatuj5K:U)gF!it/(ץB:ߔmdHH/g;3 gs7A"T ! `J'T薚 Fbo R/o_@ i8ڽֽ>nu05N94DޡcEyҺ&Y7$/u)%YuѨp/ܓ"?BO XhI'XFLu Q쁞DDDEu$/xT :ˆQ֠^}C(@i+-0cR#ݕ{;s"yXT#v@Dntn-yL`UUA.s]. Y  *1 "C6 i th]:*gF1nķO'/זvx3Le,'Ѓ㪰G7)c^(KSy)r$Ɠ l >Nж_wsSBC\w늵c@i:k?Z,9WʱXD'sg٬WCZ#]+1$c2Ҵ;IFKfTՓ(a|6ȷ* E"13!]9$1Í2d@EO`>mr;կѝq BbEחy Um耋 7VSU>[/v2^~̈YhuEx|ev 8 yVzG%4 h8H}>& )Bz܊CkJ4YR}_*Z ,9lKٸ|̼~,Y͈JTl1%jrsPy}eh"Ed2c9nhDu~R-'赢v\5@"_xYݒ#LFvѝM-:OovY l(6 P-J8efp%qۂY%Y%qYWkuظJֺ'&3[rOLn3|ŔM~OR\ei}|c+9a|ݧ~bs+Mn`hF˖πEKIȤal _=sSC A3ATcQP hZ[4  2ƧY&p 8ԪpsVT%c<ݔ\6e̙7T@*wqY >ؚ}Lj6.(. ؈h^UGAu|)vk/ ds$ĕͿqcu_rOv*\>77ڷ#0iz?`xR GbJ C\wKlX1I.wgqBvzXќA `nh991]6끲&Ħ?|I[}ey|"/pǔ\XTbܒ=mRc띂]wVVbǠ1%Ȭ& '`3!{MHFhEasBS=֕.q>EB=NQ+}_5SIҰ$ZBe ߍ%;q ʧ>%bT.;@]1˷&`q`WKLs|j G?l#+/Na Q,?-ɿ(zr+)-gjC=EU-o;!/z/d~?M9XaT O #^d#r v450F7}_#mL{H !OqZ_;DS΄h2hfūH0\nW+Okrӑ׮HCMl{ նT v9E-ŀCKn4|x (mFۇcޓս1Q#8zAFO4V U s8~"aSSOؼl#p$њЌ+l$L_,yM~CAG[uoku]9O xy]v gUp:EG*mlIY,F7'hHEx9FM5Q\CqH -Py k(mg@YޝcYNUl%bYV]DXgDa*"jrJUiv6-Xm[!m_Xk{-ݧ}>g^tF`EcV2)LaZfr81*?αw'ܵ\UMH'P݊f^ws1&ngz""YU_- 4^^В{_yGe7^W\}J`:ez"&DXZc37Fø f՗M]?eY=cRP]cHh?2norm 9B.p m b;/])7ۧ4[u0q_H gw\2xh{G$ސ?e!&Ur>U*ϰ}TMkv' qŅu![j z0ZUd|C(5|ώV˴p>O[fYdmVCr}a~cv<9I;܅ǝڤcItx=car[ 4M-\a"x跟3UJ$R˲&ڎ%}e`HW < 4enMO(Cu/v"1,w;[ *}1,\ ??"iK.ʞU84hL ZmYe)S TVz|9X }jr#SƜ;M "&y9-Lw*u;xЉ|yQ18=t{cZK6?ƃ/g:Ʌ/0EG^F@}0ۅ  *54v5VЦcU< \خV אho/Ԭ+K4i9kYp3OY0*+h9t(Ee#Pd1M\HPd]LV4,M썲XfWHhbj69o 9NX^G3齟 V *vhWdzE~'pLc8EQK| nݻZR J ޺4 FM/fSk% 5d"Dp3[FwJ }q(/(h<̀aŁ "ݵP vdYnO$'qWLSV+UKQƩ.`Ll,``Jy>4/D$N;^Tit{8:t+`ROH1lEbwf1P8q8J솿ucW?4]DЈ1AhGSc ,@ԯx|LZYܟj$`}3NZJ{֗ߴRy@DKGzO#ID|ByQ(+|,$ u"rɀB J²H&mj혋̗8w,d:YCV øg]o.7Mm>;UH1*Z`XΊFN%L;{Ɯ1q,~"4)O~g͆&-cا!p=BIƾczN]U Y.h@4s֭lMs V?>ʪRف`[({bHŏD[c@.K͹GQTK)V)=w%hHAWXԊhwCN(\D45`C4#_j|MqR2j)HDwQ-Gٿ}5˫]Ŗe-pH=E5G$i+287b~שG|JӚ~*ոv<&JE}Fm!t_Eu@(Dy3MQf&JSaR/k3ﰇ؋d21(XR]ILĞwu[ˠZ}M|l45Rzfak$tB>Ķ_k <212BCCfz0f'rBA2bԳ)} _G~&3 UEƤӎY,-sդ0ߨ`{K T.^ 6`0~,}azgMQg Yf)% vi%"N:/V@`g=6`_O7r1A:TxEaMyA!Bsh~ /EԆDDo*v23IYo+}tJn=:Lf=Q@ܧD.J}I Y2ޠ@©^RoK\,`z7AyhM?t]wJȤy/:K/VZu n5aRemqOGv0zVяqaOq7i.ؔ\қE61lj[ T6ϝNp rn:1fLg^"cTl) R&lzl9s㱍Kܑm}I.=8\U\@ª }ȭJRF/NR:̵_j<^BֺOHQ=lNě?u2X)uGj˴FʅF!Ճij?J6Ttyaj8LíS-eL[~| } $8 iXAEDŠ]: g82;8# ֻ)sX*/w`RmeNKqf?I+Mq<4U]l6}gù3 9׈]JI2pbk7Y&~:JNR=LS5 zhLړaֆfN4fчu3ak^e5,wvjDe Y ]M & PΡ@yG-AyWgȍ6x ٠ѴQ !m+ R͈FgL(˳=!/O[ BvkQϱ|T'^9"=`/neؿ_`0 F*PCs>yI y`}yE#5# S2 , ݲ(2K2T>PGa@ĴF2f8:,š+QKǚLA f =jT-v1!ME`6u{"ЙK+Pyb`O_'?/[Tv2Ć{AV%0an'*OvO e/340 n",ɖ8Y tKekS͌b h% yI$laO4@µuiݱnǿ5!yqAq!-:rCW!lErAߊZTK0> _q' zRJ;DO]H _C4zP'Ef'Q ܦ"iQ 6-oŔI;%!AQ;M:Jgt 65Ʊ,)NcM`Xҥ(Ϯoն#!)j]Q 6} KboOrBNH9uZ*YtL, vV}RZ'8 [Xʇ%} 'rWô[7& {QAUBV 8M'o? 26G)_Kzd7x?\fmi` F=UVMpI~}3nxrpT~zlfhP˝Q` 9:C 16s[(HC_&p껜(r!oJI*Nt穖JTNGZ%L/#><9AG0-w=8!DS6j(<)Yvˎ.4"d#_^RciY k$ͣk^f#gÄE%&?#1g 7ܻHḆk]y55]b̼|<3-`QJҥᄎ1'8AAy<J? MQ~`{: K#`Ks{cSa@p{2Ynu?E{Z čr*qP CA4OSpukI(y,5lUY;L+ v)KՔ˞"5j1'_aԾ0h~s:zxjd۬S/b}/ZehThZ(xv !yQpKPqІ;Py`~2mUO(6yVE<,xה&G}N8+{C "I1KTy M]][ɺ{2 f9V&SnI.9C MQgT`/Pc"6X쟽Δ9hò1\#NN_q$+UrMj EV'UsW;jQ%T}ӎ,DcF }y j:ӺL|IE>_lCrK0!ԁ}{`2;3IZrkpdeOl8sbqS#hx ZJR `?'M&XU"_F$?SR/n4Z %?jsװ?жN8$'X8,?i[t-@) ug?EodrH"2g`dǏl'+W2HYI!{ǖ-%.яrv6\=w mdJL3z`9 PH&}ɤT íRI.n %SG%1aZClZT&=so Ӗ!+pf\dZxatRY+Q5;1 xކ?2V\^- O|M/aZ&U[bE`:˿xpree "i_H.=\uc0F787Zn^*jss14V{}BJD"Ā͚'D%dv $^`0*1WcOQ _eXD1md7N4*[i9ځ21$iՆdQSU>6awu8 뚔h"ƶiaUGTta41Ag0Y9&z]:Ë!e Ɇ娖 J{?$Gjb{<$so$e6e"p:6ƸrmK+y9*9jYp8W=8MP$:Jj!ъqSNu9 ( =RH25c]~]HK)+ 0U $ME}On5?#yBi`窏 PN:b?а~`Ý&lZs82U{ґLW5A6kb;:p+ƾ+/;$WqdpP󺲚XktT:Naj!$j\N1D/}=_RχH*,%eȥy5=uLR}meUb?foPc%{rZ#;e Oe~gvW;+7|FemzKg24D~0BFϷy i ZRA̧n~,?Bg)eZXs`"ANJMGwTJVqDftB]9( A )8;ba+@S1+xmqplS?P7u `%2@z<)m,)yRvAxr.E$rF ɖHl*X~/Vx clZ.\8`OzNk0Y%XGTfҼm'% Vyc'aE5L(0z/eA5=$aЏg*LwNC,tbL{[Zϑ3<'ӝLeY5.7a0;,&pZL0LK9[읡u$ɇn8]}wTĝ8v%5TtĖ"-54s,PA$5a݊8HH F3j˪l(a/V0ASfGFY鎂R|JC^R1(k(dAff'r&#ʤxiE?g;_C Q!5n4eNI* nSE3hx^I(Q^Tf)*HѦI{R$s#5l@Z .0N8٫0y<~ HU tUiR/| 2?ԒaXzZL~%+5 QѼmÊIXaz&{g̞zV:jչԥTgRz]fyC#d*@) |2!"h֊n:{8sQ/QCT9SFI7+5J kbm!UEдZŐ~SH|g{;4ܿ7Nh!a|eE ޫv(}[+{'щ8)7e b;^tc$a'/Ń1\n&GF" uk 蔕l~oމ\I;X 5nfMčvsX1EVK~/ՌIsȕZ5*Kp}f'BH,wy|T%6N Vt bzg_ aإsLLC=1~(eKcF^Pp?G܍HY:ڶȵJ.َޯ_"PႩ;T km#K/y ̛w z/M譥ћx fjH0nӓf|-jS$7S <$1hV5crfJ89f=V}%G$M`s,in(!IaNx p &&K WX3`)G\Ugo&T2qY ֍ ^,Ħ֘342F(2SU!lf %]Gp҃L/cyq`)ބ"$?PzV1$jɝ"BcY"W/0ޜxPvR4R"&-pA[.yk䩄ZMF<τ">|JR?u{ʢAktBr1W2irS~][FvpQaE07G&ک. 'C .?P(yNWyH(3weW1u c o(M-tgl|#l1 g8b/f]~aSV*a΀`࣓4qHvvs6`NF@&ZA)UOZSWUNw@G3j,@ EB+g'!Ƽa q\OWZ`yV `P *@+*T״ 9yKF/MٻVQTĄKBztޥΕ,;iP7mIF6.&lw0\;XDdloFڂϼE60$e >L,侏fdLpPctsu]# )~rX4Wáib]۵[er 9rz\l.C/PIFSj~ՇGS2@QV'da<6`@?7Ѭav,“T3_̠0g ԕ}C;{;Fҕy~1i1ϏJx[Qz w##-P%w5MCcBN?j1z^HxjX~ PVfհVB zƝy ?m%:KJǁǸB Eh(ξT.:IᩥsXHzڽua"&dWŬ87P/0Cb*bxo Y+dg8Ż/ɭWPiC~ xxW[D!|CD[SM۵{D%k_kRHǎ'|ŗe-~~aR!M2un?v~0M=BOPRw_´ ѰU*r)l3N?_6?DcR$[jNtp-D)"MըRٔ\]Tur,^stSǀ,4mNu5y+:b_)%V yD@>[(r MY4Z}P~-]G޿"$~$ Գ[.]%9!Dͬ5qjH +uw8)m3NՀ@cnVT#YXj _Gn‰ JDMsKTΧ"̒I#oCy@T:hÐr so'j\C)ӗݨv9Xibfz#v?XW{N}@X0S<'dA8:k?źR_=8zH,CF vj4tƞǂ MPq{eϕL~_e:Il $7x҉}iɲu Tj:J_ Fu7Xp2j^;u x-.=eB}L-Y[1&ʶMʫJֵH4:YͳHp -K3F^56MN@[ r|! ; W)§jҶZ_l=@|(NVE6! D,xq:ByY*K),9\F)4 @VEvЖb<'@]Ǹ#6Z]A e[1(VP:ߨS,ͤLMR/_dp`ϥp̳)T^hūd֟wf#""pZq/+*vk?bgRU2_m aYSlqEB)_Sܨ݋{OSZL7AxN5gB SlDP5 -CZ2 a軹ae\׵ vxrnǚZ?Xu'8chˉ{&^A7H]L}$ }YQe =jQE>LPCm`}x ] S̯֡)!~0 7rY݅u\\ʺ7p(uN?N/̊pƒsD>X}R[sLjgȐb%a`҇0yD}"rXruWM#`r)Kk%N~h΁h(SBL{>s zCr$->QY|dUZ3AsJ;,>1Mv~tvv ]z@÷ qw*P0ҰW NN].ݿv9;(ޏh5S΢Xl MoM`hb8d/tCsMsrK-ǐ:"A~`fa59pIg-d܆U6 }VIA1#`-#]{wmۂCH%?\jjIev;3d4Z?/\aKj/7&l̥zTJnV4[L`MC)7 98Ə(/7qa4ԕ'ME2E#ZQE-LUa+K-8D qMhMd!d>|3fGحZNMߔ`2NRťR,=-MxvH_EY@!Gqj%AI!Qb)X (tSSgTXtB+̥XxBjя^urlh&{-:ˬ?9 ]U.5 B\KT:y>ퟕU+EA>߱Iff ]$e-]ߒW$fj'0AN{ACW1SvQd3RVFͺ}N5uށ*GsX:EYoFt"3˲c-4G.@wNq/%|]~#@pbrw=1|[QF+Wv0VsƘk5!g?{Gkyhvmسqbۦ4{<'M%^A 8'?>3j @bgmsXDhV3C.;:XSBL-荿<{H*sy./X@/rf2I.;AC<. U ڛM94tY1ǤĢ>4Naߏ{5#akN7]SmDٿ0tNFRd"D-mxj08JhP>U(gUOY, ޟ5tNKcZ?Wufe~ ]tkW>5v>Z JHĭiˌCg)I r(eLDSsl 4c ]cb;{28wIyeJݱUĆ#'(Nn~HPYucs$éJ5|5ݢʑw ݚ[nA#2 /8&utUx‘@Ƹs_/ғAtս EM,a9UO  q7CDG݌w<  nHU! ݩV=\kld$? 3xc # hyTZWJRpx^ <),} yl|j*ũPp-|NO.1&ܷcM:o3s *<6!P_vaOs6|3V'K̑ ̜"Uk6q>.3-0:JeczZh[~łyRvz5d5^Utw]Kbʪ\$ OiVbJ?J!/WU2Cm- }`Sk (i5P73\"q*aJZ_1:Gp)"zsд9jY,Sb߇ "2ƨ Uۨr^z UM'?*HSl .P3y)]!Rp乢pMB43h }Kq2h6 %Qnw:(ǡ#˫rxu'/)'úl ,xO;g!h%_>1bLV~] ʑp0pXg.Pz~tbFVrb HxkfT0!L#"g[ i Ĝd+ϔ83jna ڪ^r)j}`fۄ!e Lжb{Gyf Y:V PdGƽuj6%Vͨ+|9y۽!~@3΄;)(Y֐/4(|D~dha֜=V`ѥYn{/hA&*+ IQ 4 ?pztpdXK.9?N^ IsxbQT''7=Z Z?l)[@21VצctM|ՠl:DZy~`XYz2ߗtzS W aSuL $w||24W#Ʒ; v_;:G}r>KߵS>>GapM|L|VNbnq38xP((i+n1qecuc?s~vLq$pPu giWX_O!rLN5FV)8sV#7miʂv8 cֆ·]2#h&W}ɊD)~]` D̋SP|b7u}۸O7 |WI@j+D,Bz_ iHR-Hc8p`Ut[vEÿz&ބ ]WK_lAN s3xb4/^dQS|A?U<謉i](gZ;R<>U:\*s>oZ1.mY懠@Vu0li)i}6NvWbF6&Zܾ,O1s E| ,fr*Plo>yÝCw$هlBFiK.q Bz oN+}ث-S?=%]Wb.|SW-;2r bž0N=S ;J}*+z-l/`RQ%v|af)yC|o6 +gy{uR:O/NКx>F矮u]C?WUTyʼn*0&Drv9P99NEtV dۅo' ɰm#wfH" MX,WS joFz=ύȻRIU0۲[urZj=t*6 D*P0"c*hY> ##F*Sp!|8P)ޘuJr>Hiۊ fOYIi ԟ+(@wƉ~vщh{a- ZDbUsi'vut]fzq&3$]KVq3O2Q?_Dq*6Y{1%K]`kαs3?/@m~hlNCX{E;G(x/'rU_?*(A s"7wa,yczL.`s{rz`Ea8(D6@b*R]#:+l|LU֕;޾=۬١y4e 惏)XbMY;jq #j3{ DN$"u^9;X$0kPw!/EGoxfM6ncx5>OJZшy)Чx@bxd%YpT<Ϫ'[pj@[SDz Zk3;Z[' $i)d(NZXܘ,'1en!V܆&``ob&[iN:JC}|=o?Z`kFZQ>Ck>O?XG/zKG>s % Or[*T F iRv1FF-NA"tw*HquzuIvړ>݉`kJᄨ'쮽!^BBJNN}5y:piP3'wκU_17}v<aa3'|Q3VR!g  Î *8'*X!lL.۱x֨D<57z[dڄ50 N̽vB&z-Rq}MaNcu _&|rQ2EEG1٠-/v$_X@Lx^< |'cϕ8us}NTQVAc%}ϲv5&d94R*XT;by2)0H waA23ƎQG_I3#O+ǼMiC}_: .#6h{3VZ\$ݽO^k&%Oin L&b|[U:噹"nNm^ q(:*HCJ:[=f'/~Vݶ jϷ3_7D5"o ͏iVܺe}s+~/~mzbM5 g{o+0xNBz<eM B"CF "v, YЗ0[MU$VyLo‚ 8)"J`{g8o[b|?5=2žx e}}cTJ p(]ʴ,?$br{R^x!*6pV®LO\ `ɦntbC0[0?`DIțRU۪@zȬD.S2@ yt"PL)Δ`̧e_otHWSIńGr7|aLOWCk +p-!oIۃ^97u/Q4G+LL\t' *?ת@M@ܚ+E>pw"aMR&*M z Ӄ]SY8J7Di1HBH,Nmvaqh3><< VBިMTsy}ysh~ + eP ֝pNinxz6a~!LHOd6 nspP~. 9fxv*%@aL"6̭kwAȟp`&X?%ǖkZ4MieD_@TYWs<j.#Di7{ڞ&/D|xt :4r%oa. Й?Πլୣa Ok+J=$:6Ye_H}3 25NBvB'ѽhT"-@:lgVp7N%SЍ`P<'aS8wېJRN5ʞT@F3\p_%%x9 eh;mlKe8-vG$CBZ)n (G{+}HO'v50_Dݔj<&i޺[=e}do>~)=q( xZa܆l MiXĉp0d .Q>E̒ yv&erʧq.R$p҆kW M+OE {E g'iqP)]WhH y>dqzat!U)xK%2X kqɹL"~gyw=Vrp] Arf7~wėA!8[SJH ?}I6-vߢhW?rΉ5O;1PM=='bY#񑯤y L^t{EK?=Ny& jྑl[4Y@W^rmмMjMG|ߞzA¾;pm b< {ZLq%.4S8jfO.)I'9 FK3~CO#~yB<3ۅ8J 2b7dDG}N2=7Ph屛,';Y'B\9"} HK &Z/1ݤ<>j˸eBnňf h vgB[ЛWb%iZ5k10u ]dg21]}0cH.Y .Zt3 0]{ -UcY fKӁXvyE#z`FUDSߔͪG(?&vF#2 o"ϳ'8?dfPsw|KA,\Bʸ8+m]K##^xw>#,VÌJBv̸8 ʯ<^߂92׈^E$AVdM'[F;wl^Hpl Q" J&afӢ[8[t: 8g*=prأ ԃ2AM˟2&CwTǩ8H>zɫ׶LK_<E@Q {McE4DzY32z"h^g JŊ6=㢅կ$ZGv=#DaixMc?* omVy_=5aAZaA|a}0+> t6; #*Ch5gkڠ#%?4yLCNs*{o$F%S^mu_Z09ZP"bi>B4!@ j<\6,>\A{5YFU6a"9ѡM%8y8hK3VG˜%htWΕڂh7(SѥدAts"j!ՍB ω(YNP,*dK@ Õ`.EHFZ#MQm+۱Hcq޺!TF6%TΛ_T),ƼɱZo95`fiJ E^0L|g؜D!)1?ݚGbCvz)9 4h[>Cb~%Bd&M]sP(Q7A'+j/+dγ̈ dso#ܦ(#9qvQg]w (-:󾏸B L t#(#\N7AQ6057C QLJR'5S$UQ"7%2'ٳq/Ug/D7CU(/U^Zs6 8mLPsv}s/ɶM:h1P`;B;)n*3DGm %4>Yrͪ^abS̵`ﮕ LkDŎFϣp2v1 I:1ǿF,I/U}ܕ ofR8UwUA@XP.^W ~\O$,7 PjMi S7] lt)7UX2`̖Ίȏ_Ew/{X')51 xJZQ&P8ߢ['UAiJK(#Ctk}q *le '@_^( W~$J/rxez̓7E]$VEXݖa`I,u4O7E\9ƴO׮Ƹ"Fz4Slﺟz#v=ߪ1v2DPCNRdHC;f w<ꄂ,2H鮇KmwktsaI+SQDEvc6i_g>:vhHP ]R,ؕtfu f%_52yQ#X흰עxA=_f̶sIw6k1hXh7@񌻒JBd(bq߇¬ZکFo=᫛~mF3.&[: 3AΰYɼTM.wS#$P ?8;|VN$fi+ [;HO^AE 6@2֞,I8.|U| VҮ&|0fCKuz;=.o [$_/~Zf੅_WG/n)r +{&7裏grխwqh1Ô)ju뀇XjhPjˍ`Q[f/S[+ҧߤqFHs},>!vDeTK{)rXPI8A/.%=/UįbkB+tN~d61_EA?b'Oqx*EzjٔG U6V<؝kx*ӵ> LI!e1Q1W u]A[| |TldG'm`ȿ jAk'l=Je,kF:X=<)H# tk8h[/DQt/#%ae9r G|vќ:Vas0N'==|`#@?fLaGeTd)]𒌄8DTEO~u AX( d>rMT7lpg)rY> PopW{VJ@0tNychPLHry"J0HH@YBjkyh`J@/|k( BrCwMMq@"BgT`-iu-yӅ î@WTے?;vJ.`N;Lv}'],5ihX9%.3|8y23vAfG??_QU[R/8 +`_ќ#$&\GmAae'z!Ʌ~< ^D?p| SVbk y){ZrD4kUN U+ >Ά- w{L!S *3Kd NsF[vvOJwZJ.M6_6Xt}R-Ynb[V]uy]ekQ-=%hqȢeK ~i ݍijfcbvffkKZ7M@\pFT%| NW"T?91P8l7O򜣬+yˆzR>ijGBgoyp 9܁l,m:(Ak@(9wܺ"\%X`ʠ7 ĂWş] m#S˛O`B=-=ןV&s'#3 *?L'R}E]bAIHw qfxڂaBhBL0v|7_^9f6f~btgZ 1yJ`t P*p  D4|G'Ɇ֎wWln1]mY\Y?kq֧'R}L%6t]. $5:'4&͈Zu/>3*D}̉[6b^;oLe"~:u~8F{H5t۫{r8%aacͷ(`8D@rgx=Kd~>1,J' E!9P*>~OuPC{ѓGF)dtGx 3}Y#y?Wm3.*PͰ$x@Hlጰbњ K-tZeR(!@r`s;5wZeo MFw^@Xs4iҵO\N0Ru?-dMz;?3IgNJC1ъ# ?0j-)5iDOZgu1SbD~;K?18sHվ#=6L: XJWP/6nT=ID[-|~V m&g֤,Dpx"jt?>2@G~kiɸ." œX>|8Kźcv(t% Ʒ`QP7\ d!D1mP煙bfCkEYuQt:Ѿ2`"1le@ohٯv"'Z%S3ՉS#;@ľ?՘d[;䏡jO!i*?䠸M?'+&)I㭏Y;"'Nn՚n.Cئ).&G=F5B`;]|2I ge)[Lu!NʳL" plJ@`fųbM&h?eb8bYgdɟ=~Wf0VdTB*,nygGധ:9`Ne:o4t:,BypHkZ]T)0ȱ/~Dԋc^Kk度LaA4_?}N|b ^2{3 /-yFH÷<£5Gɇ1#mpS>m*"+U@1vIXŽ>|CB- GC;azìk y(jGkpEl'LV t%*?#K|>˜`Q$uMqm s6qRO-t 3-+jN8e@ 7 Ͷ-Ùv4%7_K(4 u(\,C`iqx;!؝ObB6@~PS'N|JQUGw.֜%CY@ҟ)_u. \!v5V" F=&;h \1xo,DJ;,WUgZStxv,HMqb@1_T돯JLdH Xn)*=6$IM3I3h 3n- T M(G*F/e> TT;[3 +AOEߥ2揦iL!^F_{`>Z|OA\N;i{;Y7: Xh,)RP3nzIKُX_1}MkS` M uDaWN*4ԦDC{ `fݽYGex+^#wlC a6 DֶX> /ij,_qQ/4h |uG,HoaI.ORzQ؂P8#rC)pHswQTX|sړ#ˇ0[N#?Rwu>}~2$k@r&&ѝ^/s0:2iTĸB築ތsA>c{,Nrb'3_Cp/ dx)HXڭ}(rGg$zJqd1u:lK]'r+ޤLOqyEC~nV~͔xLvmDuɮEDnGιfkΨWof8pجheaDƎ "!^Re_HyEx3y?^~UHMXxuٜ b:%-=/,uY^6Z,7֮:|*zɸK|!.zQ7CũQ[#C?@96M9u2 G1V=qƴ\^:mi =~9^LH.}H}Fu#iZ2*t;fͅ]Ab;Ql4dIA3lS.w'@\M ?yΏ{LEy/c*)N cO[htC;ZQ)^qEI/% !gm Y략Cn6īՄx>'C~򙷯@_*߃n+ d`bq(  B#h{8.|(ةON9q?ݝJAdht'-?;ǀ'ƅ%ɓ O$zђQen4_6@svXϛJ/Q* *B1VIm,S-k^8|'Kx a-o\c=\(٪H ޡ9^8+1/hg= _"̩T/hFq7PB(щuF (o a~}$l zd} ZXʗBc,PbmSQwno4:@6;{=:G,FxfVGZLbl8{P,Jn ;ko!C@E?Յ<"K+Du !Gy0UTלY+"4E6˦NJRYG_eeK|5zU-^rSV4{ غ+$`V^dsg2pQcaz&lP r'hRn*`Myob_ML3̢ӧWn߷4| qcð""1*LR!&f8GIdbFˌ6$݅XltfܼJ؋ @Gu A \]H=~? an\gZLbPBol\0c)~:Q\PDL\oRD&AXwW1V0i|$]-˃: W/r٩؋I3ID&?RRl @yϑ*OZ\EyCa'VO:xBY2rBg[ >hCxŸసT@q;`BSm_~.:]&ΞFg097|Y;`6FҡcKI#H }lNqYq8xjZ<9.*ɭ?sImFυ4Sx|Zqdvrs¹l hFH=c#E˶O >㲭}V_Zeq]r#-$ 'Kg;4̻(@by3?A6 9ջTN Px~w*Y[3ȯ @c[,vdn'İx965Rp7 ` O꒦{\|C n0fhÉVPcPVhcVfMiU1. yc]IN?sg!>K]t6*%׳!\hܒ6AKx{!g; W %NB~sydM$];鱖*AkiZܝ'8k#1?SƤni B<ICN^^+UE r* X:I{ɢspgHvLvfZeb#{ThqU& 4J!Uf>5>GGۻhIBVLh +cza"h~d5x YH9`9񶤴ZMh#ip7gZnRI'6чY4}:νL˸k/SZͮK`ڐs tde@iB.Y*cW~"ܾ|v$ŰdF5|w=\JJ{QU%"5~MQ7BOo:dr~&9kT7M+F X|N-KIkH*56_q'SK[^w+.8;[cI68-6 XP ܚC[rI6g2gaX@D9$$M^%00%% ~1klG XgzaX z#[>0]5q U$141%( KU<|ȉ FI0ntp6-.PcIcenYY!<ADPjuv5zl&ZwMmE>W ɅUAB_Q])eUM28H|j=H5ZWO_9ZAY=fs֠7L<+ :OiF۸ۑ2J+H-Ȝ-ØVPӶ!SWa*ýbǦ?sX'heil!V q%vICC&ϏG_XW:]$FPR .% DHi$, uoNs ,|ؑ|J}#0{",CӇU)Rlք^eq5ɢ;Lwxwk0fP.M'Q2{# j4[ -l^h$ZuywO_mRՀTL+$akXkr`143b`p^(p>, 2l1'BYߜQцkLΌίbOqֽ3bz]8S ޞi".JZ+t䞭ђm04cM R!>{#i1m"t NI˶[O_~^zkOC<*ϰ\ I*UXEApc|"F*i˄z:tehc{EZQ]Г6n`.1LnH6Nc LTٞ[Wmu@?pΑYrf2_~J&LYqwFVyPQGC;IJʓhX&en"ɧUKK)2oSM#\hݱ̫$\)NoxѮH'Nq6ɢ'[R)4@/'rlU0 ){|AxRS\B/R4obbEYc ժYfd[DdЈ~ulv"x!)E{Q V*1'tI']F"8XLTC0X5B^;m142lc͈=\%Ii۷ό Użv<YCN^%M4TQyb QG8YSM8O4jPS2`RˠW C QN] w*s(%BM"5_Gd+ppIK5h|8-;}=[AjTqNQ$@{:1d_ޢHR9kZ:@?Ƣ[d$ mFѥF-TشA)k6D R|PdƇ5D Se'u`2h/n3+1K7k J1C}n]h* Z4ng:cI-MC3LG4x@<f垤=<ﭸDKjr~^n>ݙʆW)!nWsM/znЗn?!(v[I\`)NyGgextOt\O-u.H8fO?|' ~:fEArd!.IAWH"E-CBMJ?2q-ԣeS`Pn Eλ~L]P#bx"?o]%gns0<4;Y'Z{nvp}ѩ,l g~(UEIU$ Σ%MUDf >^q(I+ECSFϭQj#cZ$_iQ_GRDnb~ERF[rnr 'b~D0vA+˙PKb:$p۲\ !ԂD嵦y[t_]̴?4^"ퟪƣtf~>M׫FQekO)Q:j: C͟ }r*?z1WS=Qf+11m[ k̛?/^#cD9S2@{R%F @QJ%DilQ$9\lH^w zq=Nmhg[l#O%$&<:\~d{\ /ΥyB^wt;ZFb,=,3۝PwBoF-2׶4A9QX$ Q$wqhWYe<}W0⟎7pfmJV>yies*V;nz'|2 SEH+|V({=3.FV7*ˉ#EE7 IOK鷩ܟ#E Qs֬̚zT? _pWN<(M 킳Z9?)8cxٺս@K^qQbыAMo"%h{_v7剝$B:? yFG5vl׎] +\77Q2Q Ȟf*uiEeNJV|Sl,֟aitΎY/yimIelZ43ݛb%e_[k[{K~uf]ҮO@(V3jlXA\OΚ6&OHMMːb 7o%ЇA_I#W{ &BoCG+nHaܻ{q!BHp x9S#z_M[Wmƿ6 gpЫOt ]2~߃a>KV5#Ĝ~۶`N C<+.:,UhPBzf$~:gw9M(AsN1^?Z\Qr~݅#6?`›!ч(Nʭ0G(yrm7CU\2p^ab,XoeOzM d(љӭcQpVh\QBWAA9;%L;Xu?9wjT}8a4~nrUJ&c3$WQj{cK۵z[o0HQkq&Zɒ,gvA|6\]b@ږ؟ )SD6ɇuEV-9a g%罨N[;P<'8CiCNphRb~b.9/ZW5r+h1ſjX[UP?'3S J^r:ps6`M@[RDVl*$}fUXs]LA,Gn n<COA'C͂Fi(Uֺ X(Q>$u1Mp%Ȳ:6WAڔ|ɰ᦬%w?eBN -='oȑG.=ٸ | Չ7WV=cPnPp^ӶB _͟# n +V|AY,9U'ycw33cR(k?;1%0=')&N` D~js X}rSPx٠h6& !,{Nյ /Ki.~ k~04<.gW]<7D"V^ja=ͱHJFa>GNqSՙq2fO%6F3Nx Ls"5nmTߠR։;xX6)EqbU K*RCGbsh&>ۡjJ";Iury".d>ld^oAY@5jpBN2Rug!Y5{Z^ psۛR1 \*GAT+;^eQ<HT?w;>XYrsߔ\Fͪ9*I2/>5G!+xO4 (n4Fj\.neG&uVW bɻh,/̦'[QCLbthXe/S6qL&?ݵ:uimS,G8k!p8j Q9y+C_K_+x؁0{w?utouɛ̰rxjxn6V]2UtI10'-{(Z?7]bACC]⽼y=l䐤g| \f8PnƧL-lQ'asD {[ ^לĹd}Z~%1Q(E?3Z zK c:2@Z6ɹLT_wQGދ'۱ފ6Eș&%Шgb ir9evB4K"tqBj;XhO !a@.wd+OO@rل"<@3Uvx[p"F#E,\RGu/ œޥlbqHbȝv9 x0y#+6HKЗڸ^U7)\#FpYPffx=R$G/=&ϘZ{MQ8`Z6j! -Z {KLq%j5g6  (cmnwc KQXNLq-sb8ib_!>b\hA`L@̽8bZABM }Q͏ߗ||} o䝫{R@m23l3FL s5a[\@otpBq6즀`0H?'EY¶5< Twմ !ȩT8AhF=S/wgr8ƃt%J͌FմœĩhiRSD'A`rmOKI٨:i` WBRjd 0AlP\Lȧ"` 99rX8}"@颍ZL^v#H2 yQ٪\Q灅{]M.) (d9ܫp$BڶvWaGFux6,˨<[u&06N'm=Ū=u<3+w`*:й%}0m۫fxTԎבwL`Si.d;^Nl ̅TVp.x;Yw,C;b\K/uZ9*Yw;?yǭ)tG<关E+Ǔ(,ta_$(8i^  ^oYm*xܼ^zJGGF o69q+Ҹno~^'K,NWqt@5.',ʞ҆)$c|Ui硢ю9jE ќ4CpAj4eˆs-^NM'G ]Y ~>XBK)^z'UikG}ߗyh2': ,c6fzlԪ5h9O&PD)X$M W;Eɷ_CHB hLL.}BL_|ԺWSm(gCkCEŢq?q.v{.0*2~ky6MDž'+U t-ɐ?C-tl6œ NḲٛQ5Y%xG/8{r_,nC E2gR =1F3~ ѽ{ ):p#)Fr|1$ѫ#xһXd1;<ߺ2$Sw7z`:TRM26L8T..-;aK%i<$D"-W$ɋTژ 5I8]TD\\Pj8Qq3CDaŪ2:A3,~S#xKK6gv1R6@7cΏO҈6΍."hSPz{k;| yy%)%AѲY)ׄK Fq/\vo tLJ>N)J v3 ˊ7/xA:]Op, bd_sj;*ʡ|IIM쫐chI>h#&9Nz ?&lI3;rSRz#vlz~JbZ%9;:,rq$1 ;`y~wʲ:f{Ft(1@H.L ސHѦ/ڪTc3Hg\p2P`B%7ullULK7~'b~h\ Mފc`/te2uGPIEi{#4r%I8>!ҙ`u@=cr9kJ %K9WD 6T#w2'g|a^q?)7>)-G9MvA'?q:H8@.GXZ+aیy}d^t%/ ,mi jf|udzrl:6zNqil+WA-;Pضx'>^~?(BYl.LBx⋾fؔ81 S01*lIaPa/(\qT¡^CQZ=*@K1O#h}߿k2%WhJ +0mʏlӯ\%Bj%o[Nl,W Zɖxm>/ iRu5`iuRG&DLs<"C̶Rڿ-x9&~ni0I[`&8m 7C գu"=29_Pyr `#Ui ?}O.9R%z<ֽOs|nl{`F$ ʱ$KCsbFQtk\#,sdhl>OGߏ񗞙z^Sp}8ʜ @7h/cjMbT;e<&5m;+(do` "sE՘#ae-SMD6*DkߢC(q3-9hbj #cnFm1 zRRd50Ntue,$HK^BǍ'Nur"O]N%]k*p&Ò3|&5T$8h1j4dt2 6*PYU0Z5@oa+f6NRxȜO5ݻ> 7o/FZtGh A+!PbkV J3wC[@ޮnmA(*Z7@*6hBGYQ115,R*7eFg $z:'q&!vN˅,W[ ShReV-xrLJ\7Cqy#%'RX+ újS"*_.BvRp97ϑ'!ռ)xϬ-kb@rPz@8Ř>:K[=N!$T㣤q|YS6 Wn5d c2*BIV{X4ZjaE'E a2{zEeI<6LM8z G32 2|*[ EU]>u RL&zbqjW;-Kd@S&B nF|Qnά\ԜTPzY8Lm\\rd0O ={x)AԈe2zctfg6zjѥgR܆4UYE$BN9PVvyG/2U-EET8pJIteMUEW}=̩%9|տP6)Ge9Or<Έx3IfgDO JNJe,]Fq [#67S)3rs]DHZx]PR]d#[eA PSM=ʲ¬9/_P!Z+Dv!9s{G(b̾Za\S?#PHcJ`.J_Yh2yn G0STtkd nP392-Vbp~g-o,h=۪A\Qz nDZeЊ]$OJiM$?mNgY$5X@7;wx;yl dK8`P5ǜ~CQ.,d[2=wsB:/ E ~bϵ8L$sES?-73Jt⇩''*UuE`G>XyM`I[d+}]`Ayl(?T/HQ+uQf#8y'joq0XOw ,@cwҚ(qj鐼wUIOE0ƍr{vnIw"H*R Nwx$LpW'nc7W;@H cQ6 2S3á*T5iԎ )+B䞴BǢ}[o:vއCҐ0RԹ^|Wv1V˾Me0VQDa0K/?x}PI'eFSC4E=s1\cc~b(tK*qSh҂/܍%k 4S8_7{+71Ip:>S3@gŲc`Pn*"4:NҲI$L[ܵBt2 j<}od0-y2:a@2NYϻ si(]WH[i;7tϾb#l0`;ƣf`F?iIjPHgq9 Jq:bQe^i|S/_z.bx^$jNKFLkrC< ȟi$OهQhK+LzLmF_DmM/<2yTCq@HkR;|@{ ͏JD4-m*x(6!DqRMQč2oW :C&F/ }ﯢW`Vc6gލΗf,2?Ӳ-ʢ \K{gxJH ^ P2^ xs! Peoڎ⮛\wM":@<\vU>Ƀ~^^pwR&!"wSSWrdYvΰ`=.RވGLuq[+1#Wq7?M(7GMB5wS,90:SFRQl^&G/.022wDY/61$" o[!Lixmkjsy6Q\хB7Ao۞4ɗU˦SE‡3ST`ȔФfAe$F$oK?9TBg/8N22XYμ9ig.8Q aɑ  h:1> %I{(D@wph4<3my.WFiv1$3_hi-w "뻝Gbtؒ济Ra'HHn +XM$Hd\?1I|5'?״jR;vf }^Ϝ~v9o%x1WI\T`U4VQ<M%YZ!bVOZfV!S`}>D _S;- 6|dzJWP2\!yH pD~ pd#|TYm6NJ<8|.&ֆoǮ,܆lh{WnjB>h p:h+GP^F<9:ΩՂTÀ@{6Z01e)%։*~o/d  k؝h#"US4epȗ'heč9UT0KN~z֌U=4* pBc둹)5?@ |ʌ %n-7"i0Ӆ^5uaqdйWKut;$Ch%a#pK{q9]%e,g-k{}vd,=>l6ףQi[uq+fէ^(üަ{Caw96v^uPf lܩAYJ!m( ^3?u=xіɎqA6nY(j͔s";u?R޸*9ZAPwĠ*X"Pݹs _Ev ٍ0Dz+̬;lcL2U$d~'pS-fOAb85P.Јe9VZ%'PcbB\P[ x]5s4(.!!3x)s]%S1ʴI+N5.;w9.DJȚ=^KQ˶f13|BE4H|-j6Molzş!! d7Q ł3mkέ}A sYO7LFY\y3F܋(N+X5.AI8+,I.eXlmc7k;m0W<3axi"]/i]'ْU % {X O1x@A&EcR (&ZpSaĊe[B7˭dЋixUUHJ]=`b 2"[b?a&0NH{H;eW;{>uUNON#x+Τo%/EN.*˷Ꮨd7 9EBQFjsm{Vɰ}^j%j(=}V ;f0Z|}7W&FԂi)S9%:e8DQezt*$4ـc:4y('`F!QfwIyQDz jÜ凫R\4Ͳ贰^RFB;Ǡ7MOBfPtxdL(tS7eXٴ}m`KLfX0Mμ)û[zx5Q AiD1=4fW:6Ӆ܏;Bڃ|W⶷_ v).qEMgmp6~y}K%2&VzsꨔW}W_,l&/x*mR O [:}~¢` v;|\@yq\pi 0o UOJ[lut=,J bؕeH8 T _jX{Q~8?ywtցo\h2I>-b!9 /\[R4:_EلmMvYz{A[8+%u$Let͈|Y5ׁqb)ΊwEܙ :p޼*/K]myȶJh `N0ac3vAce&U #sEԞawTؖm0"£*e|~(l=PAQL 3 K؋obעP)Why?pp)}laDI`L*n'P8xV^NHՒB潘Iȏ&c#/,[F7yӳ_| 1׺>aFi2hf=ëA?\z ARȊ&n>$㭶,Z+?xkǒJ ݜ#. '~d^8?͸H뾹6[yY[ /p-Ic׳D|?aM% }?մ.%J5͒]p28KaT9c2f6]bz2*>cy n0eˉ'kOΜ-4|/Y ;^ |.,[7bPYi.)0H٥-c4,9%NzÙ1PD~}|(ujY<`9IBҏXz(JfuiX[]SzN-SdScW>wv6Ggi*+vmMfBT, sqRjL^a!(mhGאlcC+asA7JA Cme W,Ra\9wW= SiPȚnL`A4i4>L"C!Y"]p-`(uk!2Ou@ CvwsZ źP{&7`n͙d.Z :c=AdZ wnd<2[Ԍڔ.·iG,ʊ]#XǷ}z~NlďzixL, bz%H4V.Zze&Ol9i' ֓ߕ IB@WQ1;%zGy$)L%BDn/H"zǧ|H>Kemk=|-ԱVm궾>;0,k6p*ڛNG>0_`ȯ>: ?ײ 㛯ctDHP} Be޲%ӥRaK*w CǮ1c.=4dsb命J5!vMJx`bl8x~׷Q1A$< SX*Msi'}B=- sRkvLu}LB>rBy x wZlqgOh R͕mj6'.qxN)l(d`́A_ZS `[OBnٰ~rQ86is'3tk̃mYRzSf? ǒp\miWUU8uP?Ԅ^7%Q!,V2ebv F;Ty4Ez:KW13ҹ;'xq Uh[:x#oR"Mxk_ Fg^FPA ǻchwE¥pKt#*8(tٽ<Y o݉G1_OX4E/>v `MlE, >hLʛUR V8M)IؙFC}{m#%#qXAzɚ< DBٙFpN&A`2ٗ^#BW e(8mG<SAacq7V=)5o>֑7]U"Oes] ;.SšS2lGoϤ\V`<_A>8M |D'd9$G,<܉]l vJ,Gw{73>Q e& cq;0VAy#))undmvvSdB(/n]W]JTKؘF y]iSΓQƠ244m"h,3+{[6<< wWg CA4KܠwDga4)0^&.h@}Ɣmڥ*N^kl=9EEl@1#ۘV6u "Zz y~Ɔsz즳+kI+Qi8?Q`~Nhb ?l}I.H'%>d?n//VM99"5B7Br-P 7CӦ7T-ʱ)X:6tћzQ.oZHn!r!Dlm$Ed }1w% ;:>H\Ann56;Ύṕb_ PXÕhDYл +dFג[t*VUP\'gUxo)}jD*c1gc]}&F'IZ;My~ӿ:7؈ ?y_''K7;_cnX}2E,.d/ه|h@mz"tCIeI;3np0Ҡ:kWaS܃=YB$~q7:Jh*.Ѓ_^u<3=:ak$IQ "sAq^bȃZ@9W0!z{]":9ӛj1NPp'w' `p]u Ϫt4R%0H1/Jk tMPSH0ho|H@0 i3wrcˆm mak6đv-/U @; =(GYRj-}{66wMM57e TNPӪ$ )Q+]) yN.w13ncr@2G-Ce6M|Q7xF=ww-*-Q"M뢝vh1%N#dx 7ˣv+ ]"< J}'9~MU^-;WǠ.eN(y!?W w K:}~#MPV`fd65U ڊHyBa }dɐ;  ڻD b{y๯ O7 /A!иY rθqHS[3I3_p8l1hl.7q r~f&%EL?"B& L9)u @q|X)aHF|vj"3km(hҭ>,=r_Op4΍&oJœ(U.@n1lBD̲n%o~K'o;\bn*z|b?9(-SWh8 sRW_ЁIn ڰo8]8ʖ77k/D=uce>;/]Wl?y{A%h,{GMb(4lqїD2UUjʩ=Vȡެo#Gx 賀- &s #4Jj*$_:<@FJa;oVoQ;0Xdqey[M] 6op MFNxDZQ#Zz~?iS }bBFI / 4&B! ,Sp6o(=^7ۇ(/'N*GƩ.kޟlK /T%>UA?'&~jmxZfF^ YZ