rpminspect-1.11-1.el7> 6 6`d63!}|J^>j/5,dd{ j/5,dUk,_y1Zj&aAlԢ j\[8?9À bXLHeI+!ކ\c ~Rqe䭨ixU0Q^.dtÇv1}rrvjdGxu^8`?4'FhFnL+c1~?2aR]}lASʢ2n"/#n&B/4JUqn/U'BO |0+u=%SGOɕ' ge(q|?XZ)$iX!'DxҋD4VABQJ컾foMs ձ5`WЈOٙdB "@j FcFz _o:_1םMh%ٗf3b76f0f059fd003e6357ccdba0b13d270df26b5w3!}|J^>j/5,dd{ j/5,dqI۸f \ xD*LQcDLfR(&Ą"g@R:gԿ;@/((W%">m>^g:x{y3 l3S+bV?hAR~xjI 탱4ŅօK{:歽/%5' WRY0ٳFu3L`Dykמ :Ϙ.y,tk8T*"_ lNO%YX,m<=m tG=k:2fe$~GpR(x2)&G.(B[7.@}Xs'P~~x񻶍T>:?rd   848`ds *<ekt            ( Z  0(89: G۠ H I XY\ ]D ^ܺbhdefl t$ uL vtw x y DHCrpminspect1.111.el7Build 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.dwbuildhw-x86-05.iad2.fedoraproject.orgFedora ProjectFedora ProjectGPL-3.0-or-later AND LGPL-3.0-or-later AND LGPL-2.1-or-later AND Apache-2.0 AND MIT AND AND BSD-1-Clause AND BSD-2-Clause AND BSD-3-Clause AND CC-BY-4.0Fedora ProjectDevelopment/Toolshttps://github.com/rpminspect/rpminspectlinuxx86_64npB(0TTMӜ^A큤A큤dwdwdMdMdMdMdwdMdwdMec39ad68c7ca664e27017d3a63d146120f490658ab658137f317ff7f3699fa326c63310097154d7a487b54c47c9c096331a4cf5da022bb704a58612e0d6f0d5aa14f24b5d900ee5d4323455620691eb32d174207e618a08778f7205556f5c6cfc60d5f055477e7920014372bf5ca758ab2a1a9d20e76d69cba1b1e915c54df773d3c7f3c0eca326042445e387366024eb11bcfc5922b8dae848b31936543b32a3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb369861c870234259a01b13a2f3c8ece6bcb952bec6fb316c1016b72a6be2f6cf8abb0751f4abde88f86d8e158f189782d916f561a6fa662956b0ff7f9780a6b515419rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrpminspect-1.11-1.el7.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.3()(64bit)librpminspect(x86-64)librpminspect.so.0()(64bit)librpmio.so.3()(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rtld(GNU_HASH)rpmlib(PayloadIsXz)1.11-1.el73.0.4-14.6.0-14.0-15.2-14.11.3d@bb\@aW@a@a0`@`\{@`7@`7@`U_@_@_@_@_[fDavid Cantrell - 1.11-1David 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.11- 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.11-1.el71.11-1.el7rpminspectrpminspect-1.11AUTHORS.mdCHANGES.mdREADME.mdTODOrpminspect-1.11COPYINGrpminspect.morpminspect.1.gz/usr/bin//usr/share/doc//usr/share/doc/rpminspect-1.11//usr/share/licenses//usr/share/licenses/rpminspect-1.11//usr/share/locale/ru_RU/LC_MESSAGES//usr/share/man/man1/-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=genericcpioxz2x86_64-redhat-linux-gnuELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=ad854188537020814384d1ec63f2ed3cd3439200, strippeddirectoryUTF-8 Unicode textASCII textASCII text, with very long linestroff or preprocessor input, ASCII text (gzip compressed data, from Unix, max compression) RRRRRRRR RR https://bugz.fedoraproject.org/rpminspect?`7zXZ !#,@|] b2u y-iSqkռܳ+_ L. }=P@6lv~rRO&yY&_?S pp93$'dTZynb/rCu'/|Mf`lfox^mPČp?9=߆4>gcVVv{v># ڌD^r>q{O]~%q6qD8qEQ//8ՖdK/2hN u,ĥwa |a_&^Qn㆓ڲz%mځr؁I39S@ڛ TeY2>8 LZ"MBpf9u; K\`=˧J*͸Gogv@!Ztv[[Q)8g=5dD>M%vaŠ@]J 뽚7}D?CNJH !DDhNkkq!":ft1}O ݝBvtܼU:AmӘ5",.qב\Pc ֮>b@1 kRvBSyq`h _)h3pFj 3;!5gq#o.dI s,w!\ʀj'^(G{ L!:OH]% JmCD-., X# ʚ},kih#HEjZx*yܢxc}Qz!-KX*Jl#R5B+▘RO/H4se0uBsEuexFxJEb@dNGSLT9rA3&b_nIGbZ  h@⃊ZZ`_eAO;<$p?r6A- gzVG"xwEHkю ` bO('̋ H&`Ch >XKF]/Ȏ\Ԭ`!ŲZߏ&zpv~IJP[glƙ߼g8"Q߀]D~][J#l-AnQÙf5ڇgqSs &K)btwit+^}OyzcgK%̴wFK罁&*G5߽Js̀-UR]LCgnN,wN8"_7iSI8D ])V9C8&ڪ¨q31uNgxupr˨^+r7rrJӓAm=$vz sjqYI(פ Z2&t?T>ue&%u͆ =rd>XK`6:Bwo7H. 4oMp,msFBI(0Vw͋r]OCߗ,mė2P;!x-f- CA'5o]}s!. .+E-X%h{#s %;NPHǪ#I8KOP]p?1 Җm@J] ga --qԲ:9lqҦ+jRfWo2^˅׼R>MY2\<哉-!r`$S/Rq^e];+8Sy5d©GZ5EvqdwM'a MDs&Ȕg~6 e}co*_x'i+_&ѴM e 0?LE2x Gs-:g & 6GgrwE0)#,!~OB$IĢWgKnVPM~P yԣӯQI4m<؀}mt+riL3❗i5Koֈ&~4Z݉<E0AB4je ӥ7"6^Dkr9{ޅ[j.7gO0Fp/o5)qɢPJ߭(l?ڥBbf'ݨ2?sP:y8F6Pwt"oMH`0b D_2;&h69o=%;m ۖcӫ-*^X ain܋T(KzL>Ch .Ö(D0OH5tvx=r,)&X⇆V}Ա@sgQPfv%(NJE '\-V6`0]ufM7rnk ]+RÁ *qy=0u #VE9?4fͯ?kV\81~v y]K#]òb!kޜ;ǞT6Z)Nu$6Uv<*-ܲ.7ndYW5}r\x#v((=ohD?x 3MkՁn$g\D{>VJDo6,` Ԛ)m*B5G8)Ryg5~*4X|_EjK-vk1@Q7vqD|G:77dW ԈO"r5ɠdƆ[}=\[Z ]||6~1qX$ikS}XW|SlZLpP-Ct h9 `lpU=0 =̑,+?X+SR}H .(e3_둿c EL*b'?p{P^D.Nc9H;8b6p2v8)ͦf0݄|Q1OU_jFS!cbV5-c ^ +Ȉ8 T*MGMVCm:0d9QzQyrj?} hh}آʽI8B+4YX'&.X{e64B|XE AY0MZquiʱbRG/Cb4>cT#Hţ#8KēVF~UyB6SnƵӞ=yK'Y"́PHe]"BN53I0\1b(=+rvsZʙNX"t ;y?(H6yqQ}|&T3r^r-^.h^L/|zpDZGGBO[v|v'yc` 5)`rFPk8eو1V"[>[#(zzթI=kD7 ^RJ;d%H[NُUaYyXAc^e -"T6[fLrGgߨaj[ϺK*!EEΊ7ʷ n$%pz`byimӛhf^l+*&s8S3|Z1`S jwpŞY ^!yIp;p(7,¼aݓTfw}4! 5=#btܤ҂ҍɱrZ:=0ǚY R {2 A 24\i*f這|"-j2nl_5:*Y%l@G6ȟ#Y#$S~#"{ҥIo2 /nr@e9ʒT&\965gSݼE/ݳvmb~'fb9@bT6Gr1 Q4@ވ`?N'e f>㑐0JEaOr%3`6c֖[DTΛC1"^(nӕ;0dQ DLh]e.8[l)窲}ۈ]xɪ|6)/ w%c?\'r*_ŕ3o[`ڠByd"Ѕb@)Fe{Ԧ͡7&RH4;&dWkKĨ>0?)Ƃ_׼<Ӥac!DҖ%5:@9;LVhCFw'(}e%)/>>у! AoIڱN]7.VY#3­9kO:[rHОzp<s!szz8'W !"TWo2z*pʷEm#r5!Ev/ r~{.)$k7 vKJ&s&9,ɑV^de#!Uo4SҌX^ κO:`NiQfp:cAiEK>;DؒXw*)q>}q:fʱe Ig^pP_$jbw3||ve8{"|p|#kB]@0$? o?8ɊXkvB'%?)f:vأ`Q3}K!EL=mm1`yFZsJA(BJkv6 K6SCbٙm=`3K z3UxXZ-SQRtjRҺmUOmdbd`\M+CSX6+X윾tV(/٢ G`4h\<^**̓bŲs ^ @yi j%eUgt?jQckܜ?yqerkn NɦRC$ڜk0<6F2⴮2Rj?Ca? PZKLxIe)W`osU%OiLvX= wԘz?Γ?i/H'(D@fՆMOxՀVPY1VA wGx1΂f `#,7m'2,= \&= RVC} pՎdbY2 '^`h{DɆ9 `-PƤפ޺?T4n yVbYx=Pv:pв^.`x(ҏ5coB~z(h 0➰'x8 p&vx >\'<άYQ٧€AhKka:oB`:plM$Jn/:v)<`Xm tڬgM.6O[<ARÚ'?fA r!EuH 4Eº#ˢ s.,kqX/@6&r,1-5LZ*K "lQ:3b`R:ɾxbGUZD?Z]@/d3 jA?CILfVS$+8وT=~@ 49q R Va]) *K?1r|h-VA|#$iYD*qU.tC~ ][x!13-EǔN5_`=CP$ 2Fx (~vՊ#CM#ed`aw7x9 E@RgUm^ۜVHosEv-L CĐH%hbMiz Ɖ;(/B?Ŧݶ%khyr,4PvwG=^."wP96pK2^V̇yO8Xe?`m |+VPҾ g c:kFm-yݜl0[H4+BǂA..~ctP|zew)z䊓p'% CG| LRJ2Vs}NVoq UQ%Ln/>r": ҡ ]e/W#==# 2J;zThMoGoK1K<żЩJؼJ?V+zY2*ܪ (CuBZAQU/.KQM"!C,\ :4G j<'^|ݓagc2 rYޣ4U9CP~\K8RfX" a٨[`7֙ˉ窇LJXw蘅YZ֠C@5?̱vH)x5&Ե,$6Ni&Me5j lOg@2BӪ OO*,m|+ǐ|m9}{8[Fc1߬|')}7yzLX|C>!AfV[j!+,3eC hk "ʻ{!5)^$dwCDQp ޒ'kt؇ju!Kf!:1*!7 DCB6}Nkde5 Г&|H!3͘-d 87a }=\)xb9ϵwp8iŴ;W- KB8O`jcd]R_uG > |=WEi݌7\Q_}Z>D @_2^7J!)_ W!:_fwep}M /8^}:rdX4~:B:Fc?= zS^d9;6tֆdXsfNplbn-8aM1m#z 4+Q- %^N.m:9{ I$UF9iRϩTn7ۼzM/4 TH͛l촨.)*`&'S8Pʀ-YVLđOKR8ʃO⽍Q^zC6j2qNցEz~ÝC[%6ap#%]@MtW3tΝJhexf:bQV6:4f]ap!s~0P C'`I`3&3y>T:%A܃W^.jlFSLGۣR,8J'ґFk ģOx@Li6u,4Kaڎ|I$T vA5&-M޳*VL~S< xrMxԛ79c&M,U"?ZeI$@y?ȡvLJiitY8N;`ߑ#occND@Nv!xwUF4I$.-upi@AV42@HO=HZdu5f!8=cpr:C2#o`|9\ snwʑ'Au6xIf]%Ň=иpJ;7CV7W_?zZ&8MȟN(wfŋ[cj&v1&2y}/!EӘuK e=ll uvulHy-on׎^;گh|oL?P6y*P8Dd3](SGL`?؁¸Eu|/yj@%MZO_ηq4b,1 8m )\!ˣU=!,!C5@eU[ ĐkҽSC{n4E\> Z?@Dp_K(DZ~ĵQSmpw:2a.e.zN'zV%։dZA |j#4zs·uDv]9b "j. EBǦDa/k|{^5#kާhpYW3g9 Ա@ZG F۰N7$eq ?Ge@3 0kl|}1֮^~9V~ml2\Ýtr L'?YӫG1r,Ry <_C_ qTWBu 6& V#/%r=Da}u`¯) _7 rD^oɤXng 2]3ŕZ)VV|tgL(%@0ƉD5j(̃e_ ԵwXg?hCB87'&eB<đ}&}mg^N`ߺ!|ɉxP#/X L{0|}NS$N{̪/1 PCٕ1q cF&lLƝq SF3Eai `ٰDX|]G3K;0`} DҎƹ *N&(<7z"XfJ]R׸g/0S8Kb|bhqެXd7]jUD:2L.37X|ƿQ~mj)F\YgoJW|$wÅyBAD`9wR`vCκ8gy BodfrDfUVZC%?67tޮ6dw%ҧH[In?TS7Cȶ>";Ĵ%/p 9&dX(ᙶm#n68U;[5al\ y=^=f'ڣ*jknPZA]bw.ƚړ(cG3X=,s' ϒ!m|i[žU^૕ Oݸ\Us nՁT:mN-Q0e0?4uza_t(81€a'{Yi6yIw:مQ*Zf kLD_w㘇N` | 䯤QLfI||kڧ0kjR 1iNDmL*T&S`4tz1C-ۂ9'%R娦xB=ƲZQxeM9Y&|Iѩwi#yJ=196QBV`S= pO:VG;(4CRT*k:L)%=9]kMg +],&|92 qY_` 5KGjm=jsV c[gx7l(.AϼRFj#gP)Sͥck6%~ -b!뙼*Sq0q?o“vl [Va<7).2 1;iF|T? 윴FBu7.wt!u_KPeHS7̶.9~ cG:] ~*Y*0$ a4jP^}}l> Ds"hh,IrX[M;n:xA@ {stEm@W= K_b}D UzVU*e8Wؐӥ7 @fg'\Ss0 ` '{|vLN)Waڠ4T/smv^c-yP8>[L1/Ĵ6YAOgtCkk&@q+M~`Vt5rKyDcT5bfMn U~"=򶳮"2:$sB>z!km/=W+N(RHWP 6#˝9hyaYdג;Dtڗc5W-u{AUimmf#խ7]dKD2r^FIF(@SsgA2p'DYR@u{c>UݝrQ=;-q>ŕ[%2P!/# UF9}q)v>@eA K>N4ve2&9>†Cx7$`{EOI]cvBGz#ٞ y͛U?k'ҽI¸<*klquۯXU|!pf镾O2}a^/1"kʬ.<0ל*rk&"ێҗGQU#b5hWk8 $ËeQ8oYa]`[U'\-7uҾmD\fe6PWTyI&( e UA'#&O+(,0^iDiY /L<;y)6C?6 HM4o73n9&r&xTwIީ[SpA@˹&wMƾcE $[3H@(Ȫoޭ}Q  l.<=g& PN Ue[^(uHa yDGȒѬ/Y,1J7qPh͸3얁 AP^cXWS*2?>TaR9kN2&&b$NAm e?FDAfe+ĜBqK',jV;!IHWstVNJfm&A{Ϩtu@P,m%|T! pZ6e̸% "]Otn8:mvLNK jB=nӉv@:DrvF0&e u3Jl/b3缦QPװDRe6nG!m' ,qv ,VPpDSGPw =YL>id fUaJk%I"'62J:On&/3}?lgAހi^,0 Laf1[ `{[ \GɷD5ozM>J1JF6! RsT7 çjeg-iTTC0T;bhO/? UY,jlv`dmX< =zNA/KJɀ:Yw3?ppv%'FlKIlг Y:4 Y&1 9P c#~x_3y>1"<|>TmƑdYgf AQiYMǞh|}CmVa9hԾ'@ *ġgCj P~J;Q{H&htߐDϿ_wrǧ [jAVTvMB<߻ p,,T_7!Ԛ* Qe7}S<\dn nđz-.*OLʱLRZp1؈.1esZx6(>?fyXMΨ- v*X@x#<#^h`vڿ/Q^2Q4CMW6@a9j[,Q1LIG-~ŪQ50$wpݰkLi!Iq j[K'[蔴;F4lA~JJ*w&I:8lr4^dJěF+N6u>:G6JSÄ. cL|sU4${bx.Hm},qYbø&c9wJ3ccW *L n[ C\ g-U",͍GFrB< %"o}fe\b9w9r[?^HnOteF4Ԃ4'> {J"ǂ]+E-мJI"a"2*gLJC>F{hD+Hi\g9wٹ* gQ *" Ś9*@Ð2 Qٮ}#n'zعq/{YryvxAt!BsJ#nY"7 긝XV&I;ζl֘1sc#ND;CLC_OMi'`'C X?al*=䵉%VhHmwLz/ZɥwڕpPt^JRS>rvz6]mP`2w:|{sk!R V x54Dt\cztD5u^?zݯCX X m#,ޤhD#/}۹d>x F#W*Yf8+ כ6AW%p%?Z*?Q&_ZC[f}ev[&о8X%W=:%t b h5VG xcNb9 ^ugvzBq'l<4G= @ ,g0aޥ6{\MtA{n \[HqD2,@m}@#~I BOZ`raŐ?qN&pE#ɐ*@(?Dulf',[&dA>eHϗ{!u-Ʉ'\Ҙ` mciyjիdUi6/" 2l8[w 𘣧Qzh-50i5K'17NG)'Xtsﺿ} [ .ﵵg&-ɛ=ώީZx'hP&.ӷ|`pܜ3BjvPV6c 5v+լKp@vG[S 2|\!]BL_TuB?I9Rg 5'@r6px."w2rDg93?:]T$4h(jdF1k| `}Rm6SJFFdk]).%=%vD=g砷f /`d`>>-@{ "DVa4! e EB}ϯ[i̡D(K@5Ļ[BhC gnrM?7K+S ՈsO 6n߿n#.(7F4-ԙm}u$%e[(L9T7 ̰KxDu!w,3_ /}%aO9WP$nw$OZ0wG \ 'aQir2DhɵU_FKqE9`de~rVt C'0pG0N.N639[Zq[y09Hx<̖4=uD:/zV'eAjs 3.$&AT2ж۶n?<ǷB_фW9z&2=* ?ϧ7ԁoyiv@!<4 ɅޜRfE̖f>7'\-9(cj5ۊ6lQnhǮ&_0 ;].Ulk.6XydO!1x'm҂6XxP]N-qu̖3a.\_!Z :Z~~hx‘ ndI%9,mJBԑN^O| nM@jip-2Ktw;rDH+}0k> U!?_)@y), 5WYB5ƚ\ns SANGQq)CHr5\OMB6y /XVy];65yO,I\ZkAp)XD\c|0KΥSk.d,萡jBs+x0UmxE\r-e])pD =~Ϯ}nǹ{8$|^3[zԎxlT0ȏA,l~>=k\=mpcj ;*YoOHd"dV+y9ug1|wGd>KFZ)V2kl Y\xڂ`fU~]@:1I9zW(ο^8ˀ 1ɶ!=vhdJ"p|O"Z-yO'߫ cKd$pV|f"_[0@=,>zl_';~U2Xp jkuӝd肻{ZǪZs2._g$#=[>EDmf TϨvw˼VFvqOUb/Я=50ObBC'(l +0R#% b'K>5|pZM#a{\ɖaXURTx8Kk=pʏdZ[ ydvf 52/A(A u Wqfd/b!SmVeZ8D =d]RNm>m;+ʽY=RW*NCg2?0i\g\]C,5x2R:/$&8ᥬUȮ|[R+ /Iv8VLݕsžDW&Y)x>gi2"nYӨB&=SF7O{ >1nku3֮ AhDzϚ`TYq6Wղ^Z]{; m&#̒{U92 Ζ ')>SLmh*$RDc4Ev'g,@Q70)7. C:Ḣ (bZ>l?L2VEc0 dY8_T ;ٰ 520F ŻM*:"~,k Ȍ1la[GUf}N=+2YѵUt*:YEH5jau?(!cWfg9`qL(Jܞ;.; Yw:pYLՁESH~|EWA}?T3D/k;aBZ1gڪiiQ<'5=2 ! `K`G0mĬdN6 %no, @͢V@H5A,88Cw ȸA:/Sy`2qKMǿ,BaQɔe`c 3U#&TT܏̧hęغQ>*J7DV783%f[ 3鞹XYvЫ1)9?Μք#fyN@8X-`yడ4l`h4{ZE+vt(KMȢK)?Hv7Y]E/e} ,Ҩ[a  #EtU4  v ģ"_#?Rg(όPv}8,)h u&d͒z-!{Ǯۑ]Y95QS2yTC[5¦/22ָ_d;=xw@;ckẍ́}r7_O+rtw6/z)P~LThaɵᠽđ>*Hi+{RA[ scA.+Gfi KPVMaT1?TxIFCDhmOQN1;˽ёg\]$*9t0y7U$ 5YPzs+bZۅW/]onK+}䀰=J\90_˜Q&F ]LJJEH0w s&`ڀs7c?h':baIA O mw1tW~xrKӿ-΋IoMq?F%:~}v zq o,?1XxYMOLn7ҙj2՗ ~?ɽ hɱ,YP5S Jo Umղ#m],`nzk>UP;Y"U躑*H>Rp%k BTn>Up2 itN{#˛?uLZ҂=?%D3uyȌNc*)["{ u EpW@(pFV0d_U TZz{,#Vc}#" s6)*![uY=.D?KTFS_//ǰ* KܒܦHl`?!F}"pC6|I^ӏ\6Sk)=+lm~]l z>$OEKe4Jl1m '1In5lxFc$Yaom2&tpG>>ӯ /ͻ1[ &nfl97j@ bHs\  )#ӭ(O.R}G-ެ?GKftCd@޲0:T-j>,|RjDlg-^ kד/rβ862Y c3+F"WDŽh'}&R@ȋ-A̙Ҋ'W$/"tx2>@u@]Yڭ߂ɵ4Db $%.`c'\yRt޿c`5.W_qя{G<:;Gg Arp{L۹ -I;a& ZKab{SR/WQK Ԍ2u[c9XOs8Tge|IQ@Q9 TDvf͑:o'_{"1BFpAiWmVG"Ng7<$`*YWH<&n3R)cU<ܱiς(BX#'Rt$mu'^;TSqV1L]P1G<4~-@C*hvU,T2'O)Z+߫;X4NWt=D}W-;Q6(7_?b*A :peǛ&"EF,aLVw&_0v^_/'5[%Z# ty~sZ(_锌jMy+W7xWV?Yws0 f05%HLzoBQ'ѕSUz[sWcMk{ FWV9Dsn #h3׍D SZlǫ U*ж PV$$7e7B M'c $!V[GHZ$gxTL6 ɛa$Q$6ѢJ <0[A@R-j4ڤi&=j?H=<16X5v * ٧\`[=j],ڏzrٳG&n95 sLΔw~ӟN3 dRy%Q4V|idE9Wz2.lXN'Y7q]D sB2|ҍgF9|H1=o9?lFg+s}=0w[@=,VfN|X^ҫ' sY?EFih,B0Gv m BΫJʜVH.-S_57bջsymXWgi-V_s=˔o O85}>h"w_=tt-9.3/HPQGB|V!=Ϩ6D;|0OP"USƽ }ȏhg_Jx*n+2.E +{+1lx8~*ЄJź_ vvx[t%K]mosl)}$krNƸ}:j1R VK.?V!4DŽ䖔͂lTzbaIL Ŋ«*bIO&rk_!N22hߞ Z3cLqE#I*M?a7J "qdhhZxL{x/58aNw)=Ij8Afj|X.U N&NBW͆Rrk#xE>9py>s &z!Y<@4 DYaQ"\bkFgT[]Qfm>.1 `yX$l?d=| dGδm@jf>);}D'0K.6m7iiJp8rͤ煾VF4‡{xLP0-tye.~8q'%T ΞkyVΖx9_߀c_POv1 #u.>KAViM~hlj! v1Fku& X1= 9{Y[i0N +G9rrylbҝ)bGz!(X̻bJ_GА9(4=$HY`Ҧ=)Ċ6k}F?<\ma1>h4,NxB]^FТ|m5` {tZ, 8jIã2^!#xzJ?>OWIi0|]mU08{=FfKa19c;P!ضyO'!~1&&d 9nž;z2mQoP8"ڊ@t"? ´_`{b5-TͲcEq Ga%)=K7(An'FWw(N/#T$P+_tB;lSv1mx {@s:GF%ǯiV>ʬL0W2lBXV蓮snlQxF .M3 ?Wp)8xe c.Ӫ_9%V4>M?FN9bdL7X)oM|t]Z*і&,OhABfڏi }DVJ<u;nRDV _Vዋޡ u(/y#_6/BI5@>.}(uӵN(U.̮?7 <֢:OqL!C] %h#oMlX|8rtxVv/:Ħ ט/2NzZ|-rI8È!ayS fHa ="=/&gQ vɂ,;F.HTV&e^-A fK#b^ N68q-fs(,z&hbF6}Fi@ٟwpRjBnEd }yzvX`x }ya`]5;a0G.qRnz+tka-j/q)Zά9/VYjd`P СS<0 ok+K|l-Bݯk3^LfXĉ1eDzYh%*R>.10;gA2թbPo8,0+bLk"Lg`qJj@&H)J.{?'KtfFw駣NND}x&bpH? wP`<`%86O $*1-Ajօkqq~Q:ΎEtw̸0@l4D,&qW.0[)Zd+„+8^ݓ0QƄZWMd׽fwrP%!l'ǟgxڻL&GU6MAYB]}zѕ'6b 2* )k6,ZYaN2`xnҁ-]p:jӿv)w h[ZEh]1'J"^9rt,NŃIZBeGH'apWP0'v657 ʋ/N$ג8sD دR$w`k?N[cH`0l7zq?ZajWr<Do n 7|muMFE;oNi&Q+J~,DXsx{rY&Vñk.ȆJcJYJڅ)-Ԥ׬] BB&Tn%" LB}>M_cĝx,F H&9v\; :c) s~ rLm5W.J[ۛU GGY:~{{,A!v0R[u?sc9ϸ '"4/1(ufcG[`TiWHLz-9!&c%e3Q w ؑ2i.lRI')tPg@>GIٻʌzSC#Ox{mjb1^] 02FW5{YԮ )w; b{v@ASGsc_Xڄo^SRDdbV3V}dRw Nv OdX+ݑyz0޷ (??lZ/eH oaΤKӘ(`Ϩq|] gxd_԰ַm)r]`\M4Xkr]KLqg:V,J=OèY}1g+LFH$a7 #-jꌿ&SB7M~uOn?QpTOL]R^C&Dy vpU~є'[JӉr峱8PpܴF6^!LkXXM8x. }\~Db0!Ebv4h[g$7e~u mz5ݯ&,r֜-'e<ʖoPҵ}]' toT3fV}:Q?J:cgizvF`Bz.ucݷ*㚅4GQ Ta}RZcmJW.N 3hz uqF:87;O wTXuDO!g`Q ;GDCA=sRG J`T-X2r(뙉 , ]bC.\B}|7#^)ŎNIMĮ%UQ*EXJuy w1k}~V KADkAR눬EjyUqzG Cv*3M6ּ% oro V^[X;T)0v n+zƒoc؃VpU~cdpJ)l:ܩsش8ku4](Pi01)8r/3eջDG#oDgVrO%ey"~ _}x!E& ,`/74щsJ:Q%&T5ٝ_m9DQ3XCB5 K2 +gkJ6LɌQ@G)e?C:iDt9ɢs 7MfGduxE1mh~QmU(7*]FdDr= ^Hp>4 ɂ^4Us<Kt!ٮr' ڷjQR>'n{Ř(M7ƽ՛rxyQ9JC\w"V@^B{gZ?؄셑L0,xbMPzws!6ppw#X*lHo}>*0GjrZPkFGIAq9u)QaM[|VOePǡL;>mʺCoK鐾8~N~K;M%頒AmN6,1Wz8qs+r{11(! Bneݭ;hȠNx-q$Ŭ_H 1K?18+Sn*Ӌ%i m50$-ᅹ޼kyϊt8 &4i8s%$UA/Ki^  fDzZ,վBk|纀KH` /ڏOoDaA X A3P C?H0eN H9DP·[dެ04{É[wGF[ET\r!mW gdHݓ.|A+O,hݩ&H"G>YZl"Q$B?/+I;t!5sv xx׉.ӣV98x-j@=I" d/ZXm,$u-~/}%$Z)JΖҐ3%9IC#nHKҐS2Yֲ Io.eOWa(?;G6!8<1I]n>21ڋr82k^tco-1ۤ:hm#~O&֭T|>S%֔UTǴ_28~ }BB2$^*UNKd,1fupRvZX!5ܩHU?mOGJ!-E%6wON!XH JBZ>L$!I" *\Qm/SRt/Wۺ7 jK5zy~7!(}^(Mx1_,#Qw;K{sva+D{7<mfk.N#+z 7Z"4Ai Eqbŭ1 z*.CDB|wNrm U ,ƫ$MʽbJ^oʜ98iA k^qN @vo\OC=Q3hOݥGϼ.qOle:wz9e. +3uIxEJnG 읁/{0|wt+SI0J-I{f] N)" ,gZsJ890OqaF^r%Q,ʌ Pl7b;qMR(bK8KH4{% $%o= kklT[OK_{G;bOjC:GJ!򥧣x`H=.7Ƈ:UT? vC3m-NN?.e,=֠y3Q>npՐA.qU Db٠uR>`A#n="LٹE(x)+d$eJ {[^N"C\a5h#Զ(LTHaC2fpBp0U *{6 5veX%vE넃:| ;0Dʭ fۡ& zt9^gi,a+eZA Vb-O( jBRz'-<.G,ANSn_q"w\ޖuGJmL73oIeЎIbWe ݈BQGIf^cpMbnCOʱ`أ>=/TAC6mT}ben_rNdÉb,:ѫx!\*5n `(s7D *~Xm\Of3ul @.`p?AEK<^0 Xl7rj-!`,we%oAs`(cOIK2Gw.[լv # RGxUmíh)Pz9"aH3@[Ua#ذA.^:W7(fX r5lp#GLU$T5|>}S7=WPZS +ȇ=[q.T4->&#ͅoJU$ skڶԔll1pdnqߩքy[pZ x("n^ )`AC‚6ģ՞y"3jxYe='/_B$+炂mn3]-[ .t@)sM-%0؉*ɥ-cFtƅPC)Q\9SIk G}BkE>ugx4N7r:܋Nƹ12UV~RWAvU羵Ѻ1`}@ɍb'@e&⪂ ў~"ˆYg\Lԗ{9yTeIueOY.%Yyvt+@%X76sBVi䏠Lƽ_E [A0CeaK0s+W2mfM'l$*5 `Z/Q(m5W sot] Ԋ *_+21Qe"C^bP e|7{juY{ŨeRr7iBv۫zK{Y~LoԸ:R1QP~e?`oЂjb 3b\'`JBJH/$D"쓟1Ʋ} zkϯ}Vګ@ 눼f`,MjNunfK ?ԲhQΝ)/^_iDXPf{J+iDZ[]GO^#CHG˘?eOK3gjLI}j=D#Ǔ* 5[LH7y)+\9GNq/6I^MA¢듌qUW7fX ͳҼHmLCȷdQwr (1R]bޒ`H\lqLMtcCtJ4~d4n>,PwI|Waԭ&}G^R3<*K9Ymd9DwVAӌ QF腔zKlJHH]EKSJwjP;.iiYvS w1pv{?j(Ft*c0eTF e&yw˓.Cv<.-}B|~9bQ]dqnW΀d":%󭴑jF T8XcwRz]fv Φh Ywҕ(a,],ZA[x ze 1o5S I@?IwyYXLxIa4Ш g8 n=TY2X!OkTLXA묊xl[zH 9b 8C?i[1u3^6f ^kW`6Js.k7K-9z\fMnko4 g#AŖ%' V#|DITI"Ƕ>;4j"U˟WhMF,[a>HX`l} `_ͭ,aH6A@|A 5\Tӆv%b΂~T3 #{ ,wO!6UFS4~@g{Nfp\H65"Ct0TK0h{;e E)slwc"?oeCL|nG80V(x'A=7aIi7|@PXmim#Eg|~<u^(f%{S>r;>Jȅ)! n؅*yȩ5sW!O>Ln6 ~1c/[ud$cڙ*siz1l:HfM; |<&=BmWz8B0Z<}m][릦Ffa@/]?BoӰU#ǯ-HX0ˠFOo T ~>]7Sq6eUhK tgv3[a%l0=ӎs9U/ JjA*yXQ?ò%%C<"dX> L]xjcnJi˭JNA4m@7k6:d/'57>N;RpYL<{+t"3L1ϩAsUQ~:uI:Q4x'Wh #EԚ6Ο8-AKyp"I:NTvY'ABA%))hLjU[o\=xCGe2E2+N^GUu>ˆG_i E%_ .V5RW 2Vv!F؃60Q3hTL; k)ȱtyRf lt h5}(fI ?%VӖ J9dC\:>}$qLR_Rm`:b l)#Js=ywBgq×@=rpo7i1NC/iӐe4]p6Be B^\u\jSf[yxް[B̏I-e,,#Ha- zE HW>kDe} -Pi`0k?[-k~Ao4)g~]Tb;:< :w~ {]N(SҼ]I,_te^]hէ)\qD Ξ^|gQL ~ą!w=_jLNA4cir¾hhh^Jh&V|{.*XZ1*:Ӳrj3Zܣ<{f:T0rxKj yvNp [K3{ioDS8 B+`EL:2'e ?@Ϙ=#%r2=vc|L` MMj 2߁K?b !?kxH48W\ϠC K?/e ZE:<$ս?Gf|OZENC)9*]I=?on-A=Ǹ6[Y;PxK}MP[Q[0G 1͡D>tpT 38[?;>fy6i!ן06P# rծoiFCeI;"l X3 '~r|`Sʊt u,{Ó*357 IdKocy"ĥ1((ܰhn:)Y% U6WX4^1Eܴ' b-'!//6:M Y]_An:̎(Cx8ꐸ7&`]2sCvJ!+ÄкVEnYz"-`Żv4=b-?l[]⩃*@`.%a67 Ș M(tͪr sý>b:r>+/ Z%!B jl~00QF=*/Tl= :gsV'̻3>Y :XmF칩!/"9hhtIu1{vXP~atln 擌u{.Aq-Gd`sߪ$M "* ׯ@cQ/2jRAf}u?߶'W,?YA9Z^Yt9Fq4XN1;T3k ҋ<.(匜r6  1yPxOKz2;ku^TEzؚےiC9.`\)M|L+sT)vZQ_ԓreMۑPjcD*^~$QӨv-JRe;E) wjZ-uT&{%ZY!|"rvYO#|9jx0c!G9a{8 ޡ7N_Ýa.iZ~؏ _Mù=*`>Tq22ytp?j O OTikn/pOllUy\|zVVLb8o*qc 2u}S@&Cbt_#aK3zdgNc$&Ѭ/Ka\ Ud_]/1˯I>m!7+ϭ{-P5dƈ|V~!ZE1dBOⱘT 'd&5\XT@XU0;1_ݚj0Ilh|g5Wf |&g*0Hצ"*xK\049(О9#zTMRbY3aAOV_f_4n@u UJ$rP WF/ö?{G5HZ ]n`žg֙ ]4%٪D~DX+q#IKNEd<f{]byИ.Wn9(/ m!n#bp #z3`BqM3%:K"^@b }oو~]QΙ=#bs/jnB cMma\tYPj(l݄/t8$Eh$5wK[<31+G E kǂ=s"NOL3%w$e _ŗH [u+!v]^# 2* 7RY$0 6u  -N:X)\*D r ɍ8s/řrx1Q;NK8 k}xY1Y]tE\N68E&:fY_ ٜYѺmm>b ^`G$2:U_Ӏxfߚ}TBch 0fMlnB,c2ևe>Dk|qcM?D[@ &ɨ@< P;hI<-[gAyD'Y; .dˊ];/]z=n>z#v|d`fpcG鉑 h 4Ӈ{ D2'+^M"YLb=#WL͢p`r Қ.Iz,BL L"ߏDLd E]ܺ-E2<3.KO{ֵ9QX7J.chSJ.6 ZLFKI=Pw -hۢ0y"މK4G(h!s ]SnmRlħ#2{cs{5J'S3,Y`З@v׭} "\uqRW*73ۚ%kS%(6JlmW0rmXK*Z$KuTN<4BQ$igkTk] 1S v =o_rGUrI;Z(" ,bPd;v(A-,maI݆::\,ٵtS861Ft;6# !ĹLha־^'sϨA=:Sdz QRuVW;lgK}xW;މknj,IR()ѤjR|;c%:")6?5e -U^Tc-us `t֗bs-.u'&w~:zWZg5-떅SS^O~A=\l;?*:U&s08w5fؖR/R j {/MW5f{L%rxe.V:@DDxV1ɸL.B5dFqPyv"щ0;c~_r rC 䡱Yծ^JDLI|3)w]7lh_D)y{|QSC%VgGĚfdi; `~ow_Uq.;!64Š+d[eQ*I8ڭyW8ZM-uSiᗑY4 ܵȈXdH,c#L˩<=ch&˛cd.j_?Db~((;.W*7gj2 &yאſ\x<8w؃A_bDM BzS]bl+|!2H]4n)y}A,Pv&I- B0 VjM %D&72:L!R9{%۰5|<:O県H,P-N)x4!nf"lEA^^4w%= P!a V*>|v7q|Lh`+UN/n]\ i80 \I B /F.t{\F?v~c:/Q-]޾ ҁQ-NoRQr0QĦdT]K!_mA,:cx[2aCj77oiXe!##%ئ֧g]mێwYk2! W2oɣ`l/vC7B_'X΄GS\WiY;;'<.ﷴWO.6"|LOj-S[kuBsG=n`~;ϊ6-4R@d& Wr!bqO"yQvm`3 &ŏ\%}0wOM\Y//o=3e_ l\},-7֖y`Q&3њ!wHJaTR\%aj3ɶ:G(Yŕcz9[7[JS<%Nq$׳iׄN/JȀ@MS7LD$75JA~<*6Yn 4b{ ۮ<]&Y`velrDt3`*%ɭܕt.Jbw[J;\7)@I`nb)`Q,@4)_c0% 6ҡ`V*?ʂm̠ҼQFVvn4-_&JLly4$3&TK962kA"/E!a2Sw&ZjP eEM~ZJn<_[ -jL2Օw"iB!+Didea$Ȅ $|b Q9%љ^=;@O9 ߧb%<A 3EY|H QcݭDi:B,z|GG{ jf=S cBgsJxZ(un^f|1 ۩blk>,yqE&En7*إ[ 觲ye Lx|hs? |9B쩮_!=#ٺ"@%^'Dp`PE-Uȫ>#ы_$ٍ~,fg!kRxˈ3*R0l}'{p#"ӽ|Kl+41QZz\̰Iql@r2RB8cFJo: z)96JWGD2tJG8$ QOQu:){N~nŊ Ѣ44 ymȄ,`<`0o恚5 KF 1DDf~7BT=G!]8;J"D={"w2aP$BFpNֹ)0Ҩ`q#}DZj U1"[t[Z A6XL*IK KYrh*|c)LM #ƊXU^hL9Ҏ;Vk"jtۚ~i!aOZAέ"<$ y-ņ7Ҿ630˭6aFBJͩ0âp/]s̟h3vE.TidЭ.NՃbJ\E|v|| lUĻzr=Jܸ志BHNF]~V Wv8KtG2#C3v6* z_"k"4f9pjF!@JIOG· EaQKnyc2QeUg׳Hd:YՈX &fĘp'9q!; O)6O<M8;}%>t&8{* >@})qzJ*l{ˁXyՙ$0Bבi4r̄=k55qg,]v`OSQ&*)" 7\tOկH'<7}jgxJ p o듨) WЬ"WR9.S@FI=WQJZS(UL~sS!z5ݶ[kh-na~!z=sXx >o"'] m-}Wr7|&n1 >r3k]veZpIG]a`7wkDx cN?_iγa ш.:Q&V4; dЫhYSbh?KSB-EiTD71 J:>vؠbQЮ9{G _*{H~>h Ҫ/k&fCT 㦔8l;V\AOE/0Dw$} ]`Ck(hd9R3,ЖFh5S8"K*%HBs .-s7q ngZ#4$ޤ|^:\񈂰 0=}޲xWՅ UdKBY9^Ls@?bݱ믇:gU zRxګҪK{}; eѶLVW[U`y7$ `D}Iq->ߤeˀ کPM?$s﨡2 "{Cu, _jۅJЖ:wyfu,x-75Ap&ɝOBo XS|N6W`E5\bzK 4mwM#2M.U .j Lڎ* (ނ56V;=N+rh>J#H+☾U<|H膈 6M.G;$ݢ)U7QEK^f@`Zt\4 BKxbxh @ WM *&HK%{KpfHEAatr>n ٽ؈JgM؃/D3FЌ=Ho l`7F@'iª12'HX#*v)bIU٠yNiz9s2q`c`tZz4ay%$6Z\%2ZAD`[yy"fӚ$O\~5 9+o,mk1)WƣWEe?JSI,6?Ֆ<ʹ%#;: ^} iMPm:wٙx2;i*7Aޕ7ʦ稰򕥂D &q PӸlgP ɤA޿;\#̢0NCy gYBo,29)d%3QG&8nR)_]¯N<k FT0x­, GQKX%Ub?Sf*Uܼkke&{'6n5˱ލg^~C@k&] ѓ+#mx9uaX{8d`p62YT#L,;| f鼵.>r*Pbm`=TYhC݊ Y&/z!BeշD;UC) 6DYCʀI+h_}ϔTNTB :R|+"kf Sk>B"ߋ`A#G q*(%n[+X6{fViM+@}!h]/L~<s,PiC >$匔W0j2;喜C7$>.-ު@mXn}6\Cw'GԙŖZ@y)??~}IHS D\x֖Zv2m' NzSh8fmԭ7Q}.5?: M$av ē,M@ł[61 Z,@?ܽkeXHq$o^=p1;T!\$!;$sRP+?<=TxT'M(5yטz.S65}ԧۿbV(He݄]<|A?ٺ{۝]gm] nJ=90SlBhFk)s0|>+eO-/&%y4> RG+.D] C qw)dI`QcUw&IL=__ x$to=#Fʧ޳$v+Q8QUi)x3;;ZX ^VyqPYTn*ڲgICIE")ƹ&cCkTpIu$? !v/0Sq^IvlkC#ӕX3YiyYHcZB~:CZ Jk-Qp3[xf'wlg}H7ShCOb=K;չ@P!s4ȽgɖZ5sN˖V/`ϳ,gq2= dxNeDФk{u#ҝy {"\r4\"L:=Z hsC 衮SFÌ΢o嬐EKb314U BN諃Gw@|_;Q? b(1Z`F̐MI͏f&Ѿ4B EWɗ-PΆ[iZozo=B?f%o *1fa64iT|ZۮAvg6h;B]Q=44>o(QBcE6v8ݮGX2@@k{1EZ&(m-QU$xH7$7@Tai33!sfc@7¦ fСK6Qb\Ek1*T分(9 -OՒGN@uGrs<6u1S4**p(ݝ-g{;J"zZDq#5-=B/Aa*qu_i(!+ӡSWה p + 1qh moRWƅBbK#hLY'#HjmƀprxYs.aY[X%cd]Dds*C"$N.L#ɟů\?e}S[N,Dz5Zto Ҥ*=F1xmGCD8"ϑYNZtrePM aDi6 $~ZKrׄ° ĦTlVƐvk\7Ql}[\? >Ebt]U4]W,x &n."rg0ӌ%,B .Ip2ld(ycOsR|t~9@y_>HehdyR"}D30cw!QMi$z n;!Fo2'y H5𵥞rah+ye9ng߹cl7"*<4^3,29ƴ5hJ( h#54yx'5]}3yG U7 HGvSJ& DUc8|§*H܃S}֒Y&(n~ChJG\[Vem@v£IwSr{;}![c?z0b|۬Wö{o1nl\~o1p \AnIYwG1=oGc c>VvX Y-V='hjwBDxvQP1taaI` seߥ~Uq5N>|0r\c?Fb&f0!|ܢB{ˮYF-NLCĥ JTF'E\m׀YmYf! A^#Jˁ@A XUlvE3=nߘUYz^Xo+<P' @h^1/UI<!{𨾞a56ǩStܵߑGdvaB1*qZr?hvIN2)њ=8iEag0U9+;P7M`<cfQOϽzJl1kE}$k \16{+NXW,:ݝ2C'dRXt=9XʰRٙP'&M'!L!̱q+<1^~a)$#<ޏG/;v:>Oٛ\}!2-`[ K Xe %a.=}E8ғ!`Y-yuÜ|0?4`gb$ጛ@h5JzPA[!op +y驨N1r~r* i;TߥM q׫n h船?QTr~se|Y06 f$ݿ667L0 ?QѢEsJ$",n29;APhRS?SG=)AV 5d8Ա M̸6zAL5[کNoa+?k:C}uPDf@CB\< k2j XМ u"TWPU0,Oi©Zɹ'% ˩7YAf\Heʘm~Qg,||xc0=f(3mU4f'"HMZV M:ɉu1h|( SPX%}OS)6UZ -4X+At"'PX } RKJ&8G|_-AEfxVm.*f\;+2 T7UK_]#}[_C#)h DޣHES9Zϙr;%RK]#eYɾr ;,MSb7JB=Ǟͯ43iFC&ar$X8=9Uf h=.Yw{=,MKR!w*"?br|j2s/(#v9{+Lg.,*9,Ϊ&o>G5V?]ڋpןf*I< 'u#g?w[og|*CQUY Xd; ?|y.1!/ 72ܗϗOFv!?eKr|PnwSl ]Sk:gr@\owT]q=.%^B3>jC}Gm# 1n g,9t?ɨ/Fd/Ϧ.DG1Pm;fΘ]sBg $O:=~:pr G΢ RW-KѠgKS햆I+8bwdDU]vH L6Az`d?@Nګ] 4v9+iڼuuJMHiIHΗ=~/JšK:$.rAc e]+s ȐQ|hs]Bթ݃հk/%?g"Kgګ톏CDa8^KOiEa(ȓ<վ $]0]nAj\n^( qV[%$黇7ZoW<vl C @toX綣 BmM92Dv&[_x}\C;!Dߞa5}L{˾urFoY,گz*BnQ9j?~[0F3Z4tz| 55c,`%E>%Z`(:<,A5z yB\b:Rb٨vL.(ۉU~C`uDQs-p ]ꐸ;)`țs@i\0@6w63Хi2̈́੝)H6>~=;ZPu?xzJSzl.$'Y۟-^>i堗+X}Os6_薹8#yd'_~+}0 ],uQANV?gh' k]xQ5;::>a;Wx5E58] Q0.d2y+ <*mƱ~#:Iɺ͘00Q|☡ U)m}*!*yrfA2yjwxζІ~JDǧ*WG 4ϊܞRF{gyr i.&."3Y"b'ltxm$ H0\a$M-Wf^&_ [g\¯ijtx82&2mXd1}hO%VZ' OM=J:-GƦw2 Eogv?թC톰X ?o3{H'V߭ 5}V:x`Dc eWUD߼,ӪQ{Q_n0:4֔ɪ V״bթtXzY.[=(G0t{Q\azTNj֩4sW+}xz߅!5ʋ1&P ||zU*<^7)$!b#s/@9Wcǧ\]l'9tuBfqS)1[x!L _Gc+ܚ~-;'-XTj6b_ 1*nWRnF{xk AQR죟 V UJ,?dN@CI2X6y >y%n{N{7nT.Xi:g2(`3G|_*eC\ʠ|UwP?#|c1`E%MH& uTNfOHj thР<(`f?$S^sh崽S4q˺LU+<CH,30rZ@&=6|FUȉt-oSJ-sx,S[pO q~Qy1͒#xǽu8ttו.z8C&0^LBc ObN&@sa3G>ܟB8Xr`UgT[m կɢ35mp9@{Jސ M6'#t$aI >â8)LOrArK-nk@'Կ_vY H\4$ַfcg z}l2Z tv\NӡII%@Տo$Ya^)1czɖPT̊uYIV- X5{_t 'bZ} ^G uE"n$aa!:{qŬۡ] A_L]Rb!TB38Y3sI?!^8) plx9Nh{&{iΉ40JrOCqC@ܾ6Yp ecKY?/2w]SQE>L=677&?iF>E`bPA wT!?e݂.ʨ8R]E2ie:ǦS|/ 1vYQL{YˑWB(a&6{G[kHwڵlE F$"bK%Sٴ"iт㓛yNqiQrYģ,KS|>]3duP Wt+]LGۣ>nFd>|6mGCȔ]1]_͑ ow1g(+g-5Igru,3f\qp j?&T P(`|N$s?jh^mmϖ!Mˡlk^\/>x!k29d-3Oщ 7Ǩ~HH箶m$n g.01NAmWDȶEm18P@ƿ X soՔع2549꘼_7E! Ry,/IH뎥;CPLW"*,9M:A:~2 9縰x&͝fb=/&(_9f t%Iv4HW]{7̇.nwZ=]QnKSm= JろUaYU͛I's랂x)Iф2-MĞM3pRj1;MsY6mn1睢HQ/K"ԛۂӠ=IL+JwZAz:e{ΊyH&:#ݜ*] Z =@] c"umU%u{^%(CHV6;R}6\AىN(׮ɸ,^W]E sHXoBiTy_p`vIIPzYm@*|ڇS {ekQ;FJ]p2l~sn3vZuC~W h߲)%?]P3k-%oIF>.Vᬮf&Fg)GCxr4 ~ یu38$948$ CҎ/<\ Qf(ΗYT$Σ[ W7U bLC;MV^‡/J¹OU!Nh0PS_ pm(%ĐJ  :VS_U7n^&K+tUrU Ysď}HNOR,EYzqT~ $`qEIwh7 $\ЈƟuԩ;R6%V(y/֣M!oiXԃkW a B+Z:Pfϫd 3ơC\MB/Ht 3 4ra!-x[yԏoַG{#␀)iϩ2CF=}6f:$77&b[o;OmܸV69RȏsmjYgK) ""1獴(*ȉܳf)m՟ygJ2H~6$5᧞3/B2/BUuv{Ւ%Yo'jh?NyI,X\43CtR07'B摭"5rX ocqG4fm{˧s1cInϹZ)[u/( io(* i.յ? dlw@aZ/f=Z͢;T zWA5 _%cmSۀ@#ǗRL% F|5й.YuIϸ#r-UNҳޥ&o'?p8꼻Q$uF= Wߖg7{OPC] f@BZ99O$'VȲ8<-m5R )$G W)C_YdzUnWWS"LL-bhm|&y^:L?hw6WEN& 3b6q#ſQ|4M2¢X.+Fz(-;q5PTmC +Xy733 kU$rFjkn82>SGGO5ĺ*:g g's[xcTߝgbG6 B|`B!Z);;Ԉ;T_b A zQutΆ,bU$2hXƟNc,2W'e>E%̎E8HA UF~ ɸуstW A;yU>=JDJ8bfeZ&0PJAIJl?s#hfW~Xv"S_*AzHQpIb11aTMa+BZkvh螥[/7iC4lG: ,(>M@#/-I'`*\EH;!FMɢYqu+;vORX S-rG]1:G9bڙ/zr`s92<4 %fPN;lG=kV'[ky( :5;V'du jyc4vN_RFt7@[.Ç2Ծ9ގ#1 ^\ q4G{3P8ڿrHbR_hm`0ΫcAČ&g@8@*E 0ݗQ[c;dZ.;rG{k,D N h4~m1ɸ c:$gz F6zr::r7 њjHѶ칪o*0kLmWBv6̤a8|t!6*g8d׽tOiWۮI2]IC~%O@v_$y!/GHJg.fk-Z Im<iv=MiPnncqbYW2mz6 hb? ֭?|nd;Έ |m =WAr32I M |!;˓Hv9Z$jNRH1@bz[hb!z>4^|79! KWQ`?28*X"J_!&qBϣЅQqElZ.w#t (Fj[)Z&ߎ'JT Fb1-RMXTdD4:Md@Q6ƗH/+ޭrpJ4qdw$ 'd$-WYiD$P ˂r: oKk玲jmGûM+a8 <8EkqXxW{mK!_?G&L c3kS0KB }e>MHT܄dbE=6˼mQM=2!1x^r3a@Ό=H*h\5ҵkr[ q$ q?zQcNpG|sn]."d?r2^v}U9Qi)Eڬhtw 4 3,A0^e+fk,3p詒TK͵oƣOBόKþf,'9aۂT,g;hNp@]^RvrP1kxJYr"d ߀x%)LtohA]}v[u;i*J+}K*W,| Q16z/#Wq}X%$ (C Y 9P"Gsl90UL&MVJ(φ{6Bʞ?0˶i0Ơ :z?G &+mge.Wɷptfw;qRJ\kMwQ I<=eNH] k O}˨PO~afZvqHSB)"Ku?_ 5d̸M%rW lTsJtW7@/k9 3KxU?5l$afnh>!jk ȍu;u "OR+e;mI2bU|Tgic_ ޑ$'E#ڲ`qIO'1bv67wTիkIS~bw3wMH /y\fd6P&UZ&PJ>SqZ;2X :_7ԏ<$_8\5"#)+z&̆lP!-۫D- ƨ4DU1Zn+Uam,01vH_L&܈ 0W#2~ػpmr( I9 FbʙE-LUiK1qAMݑV0K39*W?֨vs~\lDmMP œ8ˮDtǥO>U A3ʆVEeB| !~JGRoy60}~CIR Uk&jf>~=eұ(=kՇLq&xCyg<`>cv_aTK] ?;i_V6t PWdW$8Bw$ƊÔ!w,fd~6xPtW.|ĨbWmc%&P#伮8 3!J Rft-0*lhxC0;J䆆R=9j_= , FX% qňoFD"Zb:?k2*u;E0dLGb QśTS^\mcEBh2wflM5E\x!՝wi&y_8 FZ$ ˳&D9K]8DSбBԤnx*ѓdZnF!wi}7b]ybG0cgṡ$O$W}m;>d@suT%9H-+YU߉ݑ##HDuZ'g&g*s"rm,cwzWwGMV-gI 1EnB'/Ή9:h)C6тǵNw15\碸_Zu]$)ؗM:5\w:D)1v/\-uruLSa7n[IKú%6tTrkصOƘ^[ `t8t*hB3p"A(^ˇ0g$-4ɜ2,x+0_p@ڋW~`ԬAL Y 2j%` cdM[ Dy,PO} /Ý UM`$1XW jX-*7Ӿ|kVgR}['CMOMsBV`s[Sڝ|YVI',x{t KQ#dOs2c؂fʜW;A6Wrx߁poh*O-ޑyQ <.5_k@\{+ŕK$ࡌ hF/8b!={E)`>$XF\np-*$AJ-N//g3,ERRKEܧL2Iҹ(714@1 ULRNԴmH힯! oX M61IvtDJ j Hbx(TY3=n2H)LW,c5Ď~GjX:\jM@UVi;EpsӹiP+rL} ~$Ό'/E` r'pwrE'Fy]oƅB3Խ~u(*'X`y"z[BdAWaYwAO T v}c9  _p,\ ӭJ[}E`噜m}v&j9j]@.B`;x?, ̝r7RGn"9jP:Mn0?ڳ|m##@SXJ֣̓; S;"PY9RUV̯%?ac=/;DU+ Bi Dn~!ЙF6B^oOW* 5Od[9YxWbj`l41 hYɊY=o<3Ѡᚈ~R@]qlivOX']/I)ß:IB {.p{^<-xqDPkT%nU~h_GjM] ףG؊RN^JOmMHh·!}j$/ZϭjUۘ##b$K&t&"9n#Pxq$?yUn=$/X  ϟS*[ 6ڿna pѮ/MzFp˥`tWj!c53#>Րs**Ȍ*ɀx2-i~^Qmec=ώp!Pw7o88K90΀q1(΍g2jM}oB,3%T>U642e6*70ivњpc`k_|DJd\0@Wg6kŅa5*׊""( RMZ1,Ӎn?KomKpA(٫mGgu:8RLݸ^f7ZxrL- Q^ps]tڴ\y"BիpuVS^A iJ[A?}Y]c6Y,W; VQ 8 O;ƍ|]r4 ˎ(/dO'wRkGcaSl$ɭMG$휮ar lxF_\ 4-ͷX "RKXak1W]A@IUX_Q86xЂrie\#JsK$uU"K+h&vSHT7rm4!xrwwAs(!3PʖÙyN>FRgVBRtmdN%0 CtǷRwWosɌ Dィ|t ԓ](ԡ8mQ)T||+D^ck3Vk sgj("½MiTչ\ό X&AYOskwO5 < y0ӵbMSje?i) '^2{<*8m V˞?ӃS! &V~AguUyx/M^-E.wulZswK>~@gǼ%Sj ZItڇH^2Wé@A'¸C萖HV?D =[[ek>ġ=YIumaK p(ALFκ͂ɜ@|CwM 1KE`{yhǼ8RJ0 e/oor|5`a|bwWs C|ip3~BR ܰMp(ZmΦH4HHgqrT`'!bo2e5KٰgIRՙĵ b^4z!PLrxg0+)N{Ɇ83f2R 1a*LXEd,JhzX!3p󥖼HpfuG#[UXO4V2*)?GPG q !<W*(ԲAʋpo 5Հ[lj8%~dzǂ՛5BB]E^X{ Hu?ʓu"Gk&%cd_|l&uUi62[ehٕG8>?m( cJtF`@YV|iqǏ1mY%f&5h4;Bc~~O,ܣwcVB)P[ߵu͑Td0FF2/]hU܆A4UZ`ޝ'R6rF&@e;N;NQN(=n{??:{$>lъ) \@@ҨjB۶{%[:1(VϨw/ݹKOf%]Ve-8B;.UQ0N"DYR>MsJMW 8U3`^ϐ4-C,|)dWof1#< _Tz0YDsun&\˼il *"? nDB$Hݞ{`ι™[E(˔+V./K@d W/ؕ&K 6r{pO<uZ^^YdpaBbWI$?iqK&½LUMD%=|BANw$J2vʅν0پg)Rn&>0z/z+X@).;=܊;ˊt6JѼfO:}?5؛~GCW ^"5L"PFtl[$"=5=E eU-Jd/;|еYFc'~~lĮP%JzR=b$ݹ*x $ dp$>= # *.ko$.;\:}T`; 8f;<vvfSՃ#|xy~q^{H%ɧ>J{L~~"1=d MkF lC4&i4/Dw<%2ɹ7Y {1`7bݕ̔&wIxZN1|;%ԡoNx V]+  vc҅RFQè'Ce *?h{ Zb`nplu ^" U1p 4xR5ᙛl<vDbO'J@4qM(w۳:ia!o3sRd+@ c˙D#%x\$ԕ]D21S+Ksu,]UI,.Nи$gكFBY(2k΀:Bύ5)ؿkK$?RVBI/ z3 u"mBX|˯&_g-*}/?Lj!-s|2ů$#R014^=5$!.TyGϕ6keӊ[)//i\`+\%_dW.3Ŵ}=P 3RF'oG'Xw,X 2BEٚҰU@AeF. )>R6QG-ؖVY,O;U'2[euEPfpv*{̤ዘ$Dzf˽1ctY4m5ч\>9H7, 01{,TX_$"օ~;ߌy=66kۊmv 0(P5$[)z>^*:DQNhamh5p*s8l8$W]㇯SN_mO&4pIa{Ճ@ލuXfx?ȸe MwvԔ2 aP2nJ2qȜc*׺|RnFݨ|<576]uʈTU)60s}sU(0 _mptRzp.˕¯"b&fm"_Z裡l_U!Zv*KQb_*s)!%幎U'Q ) :?y0B9{PEҠ+3I>PxPf\ \s-joY(z ڹd8-H՚ͰOz:) PҐ|6xڧ2$gL&u/H`H}9TUfA!Z_XQpAw|u߯2&ugYu+svYX5Z`r]Y>|?zFz4J3 w l]x|kmjP N{e}sݶ0fyHИ15ᴐn_s:'u\(yYM5bڦ͖wϓz-|VɎ2-xCSRg* *꺠ipSWr{xE/ ]#P:Rd1%0~8Na+W,)"HMAS(t/oZF_!r,tC1KeLQf&d) ¶ɖ\AN%@]ba zCVSm]nPyfw3/*S-#rŜǩ?>|^\юfM}(T")%Mk($>fwH`KLY;hˋVșу8(0Z ip96B?9x0.g9ܚc(ܹcy;ZGB<.쒌ŏw6i)1~;ҷs R{s.4rU2 ݯe`tim\hsrH56Nh9l_,.$[վݙ1L8 m՘s%I5IizghVt2Z%̨RO1%~>.V{\}J]jo_}wީM4Hs7xxkن_Z7Ä:2tnJz@h&?E.j]?ŝx9OҡՎ6zq$愥crǫtт~63YtzADbx"+e#UJ٦ײ6e ̀W| `tqs"laU'U΅wŰ,JkPYgR+Z.sZ+ B?R`UW̠1'N~ƥg }(-+Q\2O sl&(9 NR<l>M׶&:DmznRu>n+02b뵛$W} _fBkxFMWf6{ƀϑګpճ7?:E>P'-(dWe߹;egC;РDjhRgnϖ'}wN&oS\YI̶q^{v:ͣ@$R)]7۵Ӂ6H(@btgy{-+M(B0CO(2y!! AQ3"9m; UBtaTN|P֡3mzx{sUZ0F"꫶vݏЏ&tdO6]W.{r L2B3353`c>?8þTE!0qhūVf}%8&u o.ss.!kQOe5xf^=3zG[7LVp-âK&Q: 2%ÔMNqX>Xvۀ\z@1s8a+PiȀ\>Y!$\2];[-R5#he_] SzFH䆷d&}fZB&7`xf~`$B[O0oTw$ 57DE!ڰ).*΂ hg\zYT?hcJ.߂X} p;Cq2 &8b}F|eeΏ( )n m“'?PajtnF`ʔ_2ɔS +g~sU8+Ǻ-KDA[zF|Q1ɴ0-dXiHe% /tZ37g‹Z A{pڛ!eؐKPFkML1McVGlPb0!/Vg#HJ,Pݩz>p&5ם^!%LY]0q^ܘgqG:!8HZ(pB_Ŗ⧰_Z~f,Ř1-ApߡHLlG@*a(V4Lžbxb#<41o|n~zHU>;<2H]酾֛XU<A[P&T°iY0Vj9ܐݖ~YgЫMHm ܓtڹ'Ztoǖ0Y!hYh:=_C[<,KS4妄-{!qodԳ;NZ^Nr0٫R'ZL"KOTZ; JDГ+FmUi#PZyMc@>}ȸYiQF4N{5GYT=/̘V4ڋ;9ĹZQxnQDQeQ`%3vߏaףOba-+ KG>"ʎ*gQ1TFQ$<F){OzNTV7ɯ15|gkƺ s& 5UVˆ뎈d4$G|_LvK60}M%o,dfvJW7:[.b,ٞ V*RI:=s]Y ے mp!J ['"]>K@#1aG l  $YN۽O';f[a^<.pf>vҾy'\HMa;f˔E{vH=e0k怤yBx'3Z^u85:Ap /ƵַPQű-9.|cwwqS/4V j*Shn4r:Aɽ{z/&2 )xft#ݣP:<ǀgY8IG[kD2\`E mi\lD5$Dvoj\"j[zd.)_pd([[K XDO!mbr :2+QqBsϦZN s#+b@"bkqX'Q!^ '3;*k{"q \_]sG3ą)e">ih8J*%q_ݫ{ !'٬u1JTŹo߂ff\~c@fc=E/L3HusP:$q{ZP\'5~Ï?r4c9;,HzAj`I{-A3Pڏbv1N[onj.nl@˂K5~EE?)HXK962(^1K-U(":rC9 *!3eOQ eMJǨ-`B5CXc&Ҭl$-@7gTFO仕fbšW?ucq5F1r%;l,ڃi-^~`A*Y^N:] 0o(ٱj ޡ5Iyq;kt (}_ScѤ5BQ߰53nf(kU>²>y2~&3Z[:O2MnO-([O9 wd. ?.6 )jm)"p &s̡~? xoo@PZ E5D1#3N8ꦣY@u!ߚAn|mnL&k%ׯ/zJI}$3]J;o +_8[Sʹ=hE69exagxC/h }C_ٙ%oIN;PHayڹFEM,,h8D!{{MΓTWAh8tS:*$alM|'Mh۲Mfq$buC(1 /h)aX bT8h`iKۤ'F}ϻ tNe-6? O=APLBMfP֬'{Lu$s{eAh-mInZ;|a&~%pwYI''DŽ1V6iYveE[׉XhDaa Wzb|UcxmR'~ErRYȡܘv>^Íd?5DihnI0"$ aΰUS7븸K+6Qp>q%Qڸ_AǚT} 8I.W/{g'b.:iuo&:gZp|))\$+>dI Zh%mPMY#{[S$7o^ %k- HCYluڲ 2}`W&roK. UW()  xa8zV±OJK7V,^Ty3yY8?Jk&3(˳)[@LnPsK=wCV$ Ie^!MHx, {s{pfܥ T30kdQj4d|f&\Zw˘Jh#oSSrJ*6LM33.+6`rï37#.٪?ys0oIJ8RO@pqFR\[Rm*B-XQޘv*P45setx/fߖE~%"2~meL^0k?|J9Tg?fQMd'4NqN±헐>|{ÕeVs$d \<-ic;MgnJJ*O@/ʹP 9 ZSI"vnhѠgw0"]q}~@.ΥS @>vK(|ZfL4FA|׶^Ӊ-5saraOm>L $@:gWfgUJkZt|jA: /Ռu Xy0ϩҚC} _'Ix6``,wQS2aBFC~xR=b"$ضK\| }/ZO#"ӏPy1zXݽrFXEP-6QE%(<םeVRgJ6([pS;2u&&=c}1C\jxx hR20wrUPrE1;O,,(e?(ውwA]tT=Hls=y;F`z?L|oդu!*4̢8 %Lغq|xb v]DNasNG܁oaryYfɝTA ?4686<NF#O֙w+AKI2;,2?bf > YM'X4]NڭV>Yl["ݱ_]~GRnoB3"wx;>iYh"+% kZN1Y{XլK(Pq}X?MaoqHWaR*! fc*D2g,%c+ȁbD+v@TmAy)\dO@x ҳ#l݅[E}&YրcmT_bq8ϗmNbuER$vc>$4& ~m5;m7~i qX#WQ|ϛ1> +XsيfKY9Мп+dfVH~ZMMQ#th\J/BSeD6݄G * p#c eE@'_.F/ 7Ioʂgg~s P|+? _2dZ&ݣb!3nFf7j[G>7蒜|^&,?BrZmYetNO|)LV.lQQןN'U].'GC{x2LD'}srR#U΍2q. " [bu$r]Ui:uꐫRyW:_8~mU ITU~ƒwOxٞt} &%,w* i۞Z^[zr<(G?+ 2=qՂƒ)I.}ωE?njCfsVVR8^)>SHEPBs/o z!r.7Bh;[!|S~}ػd1E V˖Kl4=VTְ #  ײh*>Ds*.ZTF"dޟ21 BIr~O kf"ӟ2!~' &WO+;[bw>'>d=Ԁ!!Rh xO z&}5ʺK:dEy. k.]2Ntn} ~8x)ICsw՝?` & BZhz[Sڀ+T ę7`NΗlu\)>:! P~?ꝫ erxS#;%@@mF ]!#ԇF~oʈɰ?~^xGޕ?lpÜ SjD,ob:_ X}05wGOmz={QB%[.N>-/nx|9eb5c֊k+In2v6!1SM9N9Wj=^kxJ+*]:'ЃRVZX _Xnf%f( q)~hJ&Tu$xl;"F=}{P!q.P$Z(RV< g $udzƌՇ5]Hǹ:(U=WЕ/e:B9HLc4XF &Q5\"~ i\cX*qrUM3\te}yCg] ̈́*FQ!.4VS|)7`[ёP<܄/gQ,Wnh$+ NwnQFr C>Ou#4[ߤܐlw\8gde$/OP\_\rӥ+YyFW::ROY>Y{|Q3h>IjW]N2p ]EU&q)`yH~w2kSl3[t'lr0?Ywy(L:/ƎSsܕ:U/lȩ5RᜬLwJڟdXXk4G%| j]g1uއ2?6T %0u4ON.zStl4JWekmZOc1 ?nKކxZsWl{j|JTj%Zsa(E.})g&cLN0 xF4,@Hh~$jUtۆa U'wOku 4E* 8XV[ybbDZ"Ec AJF | fskh2E:VA$;)KR[Cr.=WZHi.;jb%_C {=`ЂD> w%tXգ:TԹdmOpD岨c50oJZ9e'_&'qONOLwpA'~rkOiøz}ER\nƶa]LV吞зKy`n[2%ċ9*=Ϣ@TKB7HJz`) ^v=T -Ć>P5 I:b,dn_FnP ϱ*6B_rbfM#yȉXO7ClO{BY%&xs񑚗Eb׾{g}3k7/Ei~f%V K:vuX_\rn,M %h &{bA=O)wev89#ڀѧ)Hi^B,&\i'39rcc߳Uq|ьp@eb N;|3 mN]-b5QE 2>gZ.q0҈PѥEA )_L*\wش~;k X ӧPq=-t\,Rp$ jO ?U6Ôkdjxr,0!A}0xni۬mJT3 9Z#`Zy@lsq ddC;,chrת'@CAC#6Esɝ0?;H,H y=Lce+&$=#{FCeӜO#~'1}mvZ]z]j-5mtQAR#e%HIQ.n4"@ﰆ([n{keJOYՋ aN5A=I+Cw m2C;+iiݻsk+e@4Msk-{/6ֳen,W-P: .x4 Ċ#9 ԛ׺>p{ƼhJ3 .l*sWh?ފC]Wu<=3jPbnw ~>F8X!(fq]A\Dd(; bi )ֲ 9 ̲\া`-;ST\?+ 6bPgˆC.H@YI0l.'ngLX ǽ XP Jz_˽F,L1U=AtiԢ ,*ͨ4QdXЈ}_kpx `w9hݭq4uB92̄EҭsZ$$T|Gmc-D:~{xiT#UzN0*;韽eA_uʽv2uw(R .59GIaLFG/l#@G?W޷Y(A7쁄hQ ,fЕ.8a4b$~ E]7}x"wn)#hZ2[ )ROش݆:к͖b;w-gOA91&/f PfFbIK|Uq(?`B?pϳӔ+{PU\|v.PF;ug\ 1АCy63ir,s3t9tX-|4/CX! ( otf0UE ,~0s`Mj;d᪋Cɐ'+ tc-sHdvA1= ( 0%0gl;]Ȭ Tdr7멼Ͱ4W|P/Q#nx'.@U_tO 1T,Ԡ5K;g7JP[گ#ӳ{kO$nF(g~pV5 Uě/uilK6Nsy ;۟NS;V3%.u3S>γ.6%^ؠRC;9.Y !VK_yCpJb8<;PcT-+).=+aD;1NOfM^8y*.xLqlFlv vh9/mpg@ۗk+ 8<\v; }r_mR#zj>Pi%|LꩫbGp5FpN2m~1kj\? '}X^ʻ>2H2s ?c9(\&x©tS\LL8yZgܦ UTaHbpÍl9JqAe NV_̫:{/ hpZ@X֜tZ*U Ur1y0v?,gaNрA>o6n7O'UѫmdF^* !-3e_!OIKZ7s\.$A5뙇FC/x' !&`<}oSsw:u 9 jFf!D|Xk=u;5};2S t@ٺX2q)tU~]w;ߚހ~ T{ iU,Ds(~*аK9k*gWk+ jd3Ced$PߦW@^tͰ\BHzPțkRjwoW6BNdf7mWB)TjȀh3{UO{>3٢=ӆМ{ԇLJKm;%kJR\6RbYP(s+P qֆ3L|ovr`AKobb ٠q:gXU =CF9]6)ϧq6OƯ&喠CC7_V\>̌eˆI j:#~B3.oxC X;l.9s>砺?p_z5W %Z9Аn,cQy%mlx=HܞB{?Ǜ-'!'b=%Ck g>mJj$u .ɣ%٪_nNnb$ :ihŚ"B]“-_1 >&rq0o $34jk9w؟C"uNcF8\qAzy%?AB,P3k/_Ote]I^:Y)|[=ډCT:Ă2T)7`Ks-: J)_;'-b9n@ n5(!yG(Hp>v`i}Y `o@\cWBR3>x_N~۠uqlrW6ֱY{˄F ^WXRРJzG3W\pEb~U3Cr9F5w8յke Nx5JJL򮞠PK <6 봼@GLdčEjx!Ƕ]aXKÒpw[A$ lUq5"f*BHW;24 n 1 APT?R~XM)l+f%m[$_hb-JW%2o2f5󖂛"RGT 3d\o j!5ސÙlb' (@ђ=_D8)+R`Vy݈+j H{ak(4',鶦k曑,yˠfa@璳#v$ZR10(> F66 3|7: o45Ra?n(nj-M)FPoOd \l =u>ʋQ x5JID:!RU9`"y.##4 O'WDH֯dތ|RdlErz%}6s%|fD}Pϩ4:OqYʍmgVzB Ⰵ$vlD 8)ZGhx}F$X{~`jJ_]Ah'WG Pl GIrth[Vy[cblEͩ6,cKK'ׇ @k=G%Au"4 Vÿf`vDsS8_Z4f##z2틼?\\Ka=oQ5r [4LFKaL-$tWG eQY}̌$׉''"r]l ZiNOGbóh_"gT ^+c%}2.Cյ {2c?iw |vCn@%]}pb1~A!R%]4^:Q"coA*j(12gO̷ZۋU`E&0B@ij;60+qbp djSֳy3Z0> ':1+6IˑW(I VJ|$ʴi~:RX%«y?҆8I8;fHAίv׷UޤpPemvT83c`4Y:DY`+Est7M GXQT.o-(@l>aÉ7vע("bSEOo>"wh җ6[LPf~ $#+Idh<^})m:4R {u!c)`ǝtd BϻCSv]; hFl;9w1ڸfr|P8^8tlS6hfOlF1Z\JC%EQtK߁Ým@l&x!M+g7_mA1<8a Sw!R%ceMg`">ESp(%[9u:4ȡAyTI bL: g qȑF텇S4QZ0AfN# -_L&Ai`޼?$m E`Yy P>؞=#(y9ɴhSA2֎bv l8u/Giށ}~V\g-Vݞ  N;h=YEURn]py ~DHРtx/4kLXhM dV%>2Hŗi[lTP8׈ KOy>F,w_RIzGp`aa[ơK9U"hBj0? (i&y7mNr=0y9ev&F:ڶk' 6+)'CCeH}^6VaBa08V0jV L~|!F>[v̸0+!:1iđ2S8Rݖ1! >~A94 T9b&2b3;z huet3֚N~yyB1}ި%>Qeκ-ʏ.(b7 <oĎ`ZQvo`|!-<][Suf:**J؄iaΆ iX: kdX3͟er w'f6F nK߂W;az+)N$ M7]l(o;F7df/cSs~yY49_Db(5<>&xhEZܠ2'nbi76T[ 7bNA9˗Xn|M%Bpʞ|eөlӛɻiuKn(- CC(kΏKvw' 7W fn zǶ@ LGhK%oZ6ՑIKƣ+S֭;HݟeA%'e I$"Բ7i t9XLh"Z1]Iڝ2A `UDQ5_Gl7KI?r%7 +3=vfߠ3؛"ԪJyh}dvÀYRhc j B?zka쪝g;lu(Z>z7M]!Kبx2GpAD9__ڴA?k>A7?tAc6i`>ȌPiU%hkz imƅ5ЧS`ndWjB5j[ZrٝIkabGtR(Krbp}>TLDwVMAdXwws>*4xV% u\IzA]x "F"ٸ*~ ]{ 5Eau5֎6ӞbI2_F+Qj3;c"Ht%%f?ÌpBZ"J:tn=)> -6F*Ml=+3oӶ?[?E [%j,XBTy;(UMp# ÑHa.pv:3<{?'d-2{"U@(tgbTN+D%tagM9J@Fn'6K1MIcmbat|@[Ԕ2y4yMTlt5iJZQ|!̒erR`lt[JrsH~H 93 Y-2^6sɅE&`Pkg׀lrikq4nl+``J)ۋk{؋iIq쾸N qԈY[l:V ml[zVXC0͠!3z(c< ڭ%['ێ3A"u]17þ#1+VzIKoD!R9Z;rwwŤ'G)Y{ޚn_!BHm"{Bl< WCXQ\k2ݕ [̏MWci+ 4BEHw '26FLl؂i7Iv)U`b q Rʋ5~ 8D+ SCnVKGNB)*YIT) ?em@8Ӊ ^qj EHR "?:2oX3Տ])hbB'js6/wޣ)9GSU8k׳h`6dtv G%}ޏnvģcbЖ2/u%$ 9#v[6@^-]4MdoOj'`ÜQn$vPDTja5"'{޼/>dS"fo_ESI;'%^Ì@H $Bmݰ]=5 l եXeG%|zlHIQd#7y3 x؝wAXV}7zQDE.9; rB"`QOiG[.2 4d7yϪ^h^ΠV+;r#Q7oʡ|h[V{ CHe?f:Ω5³. ҿ-;r@I4oMVbѓZI S;alff_7x<kfD <ң"O!49B\<&} `D46wUP(zBst+JXW|ӱ13)%g~*_Xa3 QĦ#W);0jZA2>>2sJ`|5C@$ޟ%鯢;뤿ǣUWb4kf^A 3JR'lL$%nﯣniL}̻2%l PppE@'5^<+> 7Y%FI:H2A#HH.(B)WbltZl?$+њ-P]} W4Vc!%bq7gc׋?S _g|ziI"aAK#$C {E!W^ %lF HGjF\oS^wu䠗ͨﭡ,.Ԭ)q{pG˫%ɒGMdgPaoxTnmdӥ@~,魯p_t*#8V/fdo˭ܙS7dUjPR*2J^ HNgwy=ܑNe0zZK|}emVn%guԗXb]ذ۪H̖:S3AQ'w9yufk|l8*@⚱N/ ~֌ƙ):!WPϜ.[k~E<\=֘[QF_8*(yS"R2+m(p#lWGyΕ`Ĉ,Qac}v!AiYlqpY3Lom !]H^3rGeXJGFƧC=C"R m ='n-2Nd3Sv?9u:ڑ˞iQ#vr̝l9:qy0ᰴX`(y֢AGe!cʋ T6)mҼd<6~Urkktv>DSb?* \U<˺pm-ӢvoȚ2Jh7aǿH~cOڿkxkּj(b:Zmd1H}|*Jr̜}'Nm}u5kiF@G=`|ttMkF8p}>KNz3 r07ұ:R+ҩ삲S L\@mg`I ן4ߌ *,l`o{@m xlޗy_dCt{M ?X¨3Go*&Q.suK !yD5)Rbf;rI=~T쏕sqTOc}ֻfRw [!HzƟ{+ KR#ZAISWOLCYbJyz {/k&t& C-/=OwA|C]Vd6H- ξQ[4(D7-r,QC\K aI 1 kvփkvA}c.$, JB2U+4?{a:vά_S!mڌ Gѝӭ@ί=*sЙ=pw4^YhC1א~c %wa W{>  S͡ ':l(<@,TfwjqmI8 .OQ ~M]q|ezQ};yEPJ ԡ1-'+ݦ)>_$R3x{TYdI?ulA4 Rk+3=o׳0veA-g:?ߞ=uynb+FJf)XlUC%E)N 1>cPsuPog!^V0^/^ƵQ׮*̗{PYt~ƹoB {6adʴpiCc\z̭6{tĦow%@LWzqa meNCRI.Zj"yr{}_+_`Yw*5TT?:P@Xq%,TX3uC<4ŚȭNv gRLНM+g-";]~Yia:X PWஐEfKFPfڳ)~MW8bU9^-7}r&f)P}B[Iď?L=nm.zs}D./Bm5.N!@߯sv.dSKmOim]@i9谵w>b %oԵ1>-D-t},(`,IW­F{헤Q5 'W"VLZhR zM51ha_3qxDp?_?ry8F55@Om?mJna?]U[5y Ap_#yU^5zx'0z,RKz ᴩ?n=[#*ǒ!%¡NqS0i/[i#m11vWڪN"qy՜ d5wx?>AzMFk}g$'c' U4<+k n=@щ N7ڰk-"Wk!r/֥> =R)sebՐac!.4Ls1ܓ{k=UmQ 7=PF%4axkTr"~ze hP< %ֺwQRdO#40%+ev4'مM OWybNL03RB*V@o{rBui}7 ?nIˉ %HGqraPOTgҟ7.heN\*d3c+T Q|($8kE[ VE=Q0- Hi%FnLRyU]>R1~*`tɗ U5=E>}K}MI8ZRԗ)cb؄KD<*X)%)'=6@BgQXRj=%]+x4KK1dN|8~0eփy{k`L]vV l96@3_hem*vz0w +2p@h('qZ: K&Y65:햑QMǻwwBC5Xh'` 9\:?S:b/(!8?PPJzY_}S u*inz-)Rji}qE'9SI .:;Y y g6TXtAW?VH1,U HYG~ib8cw!3o#tpsïʴj̧"[:-7QdHJ)`{"rDeT&.+?7@ZQս?.5Qy d*EK.z0ۋ{5T0J΄>+gӾݗZc{F=˫ ,*JY| H% 1NGCUvG9 m%+ӊ^d``5710yֺ 3gC1B/i>}N6GYP56tOЯ2GaH:)xq:m^qZ!΁k8 Gۆ)ޮ\G0!O\Ƙ^WFi~xяt|M֣7ȑm X">oceY-;ϼcKMUGGy[װ` k["eH.:I@d!)E& KN`{>t@V m$jrsswβ tPAil: ж4U}Osҵ{XkGR#*=.dnYKΒN_ ưl Uf VFWWS)KI_ %gj/lT\D7{5HWd- R4eSirGX_T1jkn2,p+WP?z_NVOa ,+1";՝Fw^~Mv>`?~m`9OUFN]5GStτȧE_/t!:О6D lfSBm?'YQZeA}gԵ9LwI:$Wh7EGj>ʹCFD6VcD`%~4-P* jRb+'oz1;2 2ڻ=!3kEP%簽,:]LJHpA2 ͒bkH\O%GBb[X\̄aN0L* aC1Y?4zoCimxcH _$uD5.D@ 銈Era6~_t-R\ۄPM~ sጧ<􌢔d-olǯS1ώF]`fr2SH;ʥ{߫%į.'! ^aXwq* ܑ]R`|^K`bXH[a%tnLeܽt&nzùT/}Ew)56Zp*hظ ::3;RaNwo;rN i6ֺoo ~pܩT iI.]dmc|6n%lφ`M>񞸖Lh%|yij J0 5]RJGш$ߍw.wfI6cQ3՘98zEIwS_:wmBS;%e="Bܠ 8CK0uߐ`[f,/&6;C5j*25}W'ؿ%| }gx-1s4Z-nS>4TֵkitIH@ ̉6JCM%_ȧo MZLc gxp(n#@/jU ^^:g^UX7vSTnP_)޼"V(nt Y_~*~AӋDaX_e,?J.߱ K9 /a3zF D _ ٌ>(ǸzSa[^ XT&'BzlKo[2Xx1r6hT4iv`kRFc5!ޡl HAb Cx"n*9ƾ0Ig2'\^vF\ED۔8[{5"#0u\Z=P +GwmV$*$Ǝ3@GOCӆl;iijų^׳b rf9s<ؐK!⇐)RژI8\{SK8knZ8*#nuubM/GwiSUgޣ4%bۋMHfذƚ(OBWULii;ګ9ɕ \TUAڜR xmK Ob&/T+c]&ד :piHY3i%hly,NʼnaS-_WIzk6P[ !=oa\;P(Q87^ SFP m hV&@ 7 gܸ1xٗ4?H2`{I5)̚T%{P$zȸ^ءs\h؆O*)0* mWlĄ)cP ?1u>! \{'Zfq :vGQkT1ahYiIZ9fST׊eU Wrz@rY'iCƻ-Vd` ڨu;/v sQ cRX%L'&C_ ;q;*`U#IGE 8rQqYn·iϜǴGio Z"~3%+u<Ÿ Xrc(Z Ņ]_m^E4LaWH?LAz1>MFWA}Bʄ T>*Gy8/\'"=;Fc-{J\9Xs+.R3Gk Do)D(͗=dS姚[1a`ϞC YS'! -=YI]]ðD&0Ï"VwTm'(# {~4Tdwk|Y4PO:^tsW*jE~Ep2BUp!wX W3ZJ֋MA>TG9ll[;akE vشŴR'!a7EdxUL.n@'Ը CW6i븝׶E= ,}1U,h nW[K*G4Jq/PrM_uT^fPjKfҎ'[N+8uFm!abS92?>>Չj-6Q~Z.q |ĦԐ25 YZ