librpminspect-devel-2.0-1.el8> 6 6_ ܉3!y덏%!E/֡f !E/֡*pDeFEvͱH|_N C3vX j>u{4x{/,*Ëx;a:`U9,I%zT1K9 T*CX-賓Yܾo̬64gkg$bF!(H 2f鷵 vqr;(7PGkd"3)^_ĞTjz43osL_uUM#YsJ៿wzW\5W%'D]ʬ 6Lp(״U2b,j^~? [8 c_%.wmĔ ޱOppj!Ov mAVFVHdquPAKN嵢6hq Z ud5ԠJRp׆H-APa)$WxAMhFNg2YH-s8mnCԁ~zJFԥ(L[1}sǸ02K51abefb646f9fa48b931aa2382be0b37fa503e4c654838401522a13bf34a657ac929017c8bb1e3c7a384548b28c4956dc89d16550DUV^u3oK >=,?d  Y L v   I p-  < T ( 8 #9 #:*#GHTIXY\]0^ bdefltuHvwxHyClibrpminspect-devel2.01.el8Header files and development libraries for librpminspectThe header files and development library links required to build software using librpminspect.fbuildhw-a64-22.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/rpminspectlinuxaarch64LSN;s*3X2AK* AA큤A큤fۿfۿfҹfҹfҹfҹfҹfҹfҹfҹfҹfҹfҹfҹfҹfҹfҹfҹfۿffҹ8b284031772b1ba2035d9b05b24f2cb9b23e7bd324bcccb5e3fcc57d34aafa48e3b1462195137af34a6927a03fbc46865f4ca3b91e41532392e08b8bad83983e75477bacd8cf26f60984545b56bd8a53d8ce6f3c8547a394867261fecea1a143e188c4cafd74624d1683e9a985a48488a38605431c8e723c4549d47f3afe0fe50669bc165c927cce9e532040bbfd08fc93da1ddbac46ada521f35c8c03b8f427b249f5f94554fe8d22763faf1c33909d583465da266139fcf53de79c058cda2ed21db9348caa25c6dd2a80bbd421295f390f2ce95567b2321496f1cfc21679d20f5cd6a9b6525883ebe2df9222cdb72c81ab43517c9681fc1eb8655ddf604e5939f41fdcd2f07d94a6a53147ce576b81185639cded09e5531685921cf3ea586865ed1d51b63fb02166defa77a3e854e24be7424fe072c296507f853ec7f12b7017bc72a3ae72e57dbde636b8944da9b22b5020cb8131622bd1b00b5401618f744aba584d58a22dcda8eeb5a8e25f7e2f4c92aed02f0e47f38a0e5a2ee01c5a3802f517a7fb6166b105f7f29a674db55dd12f8485327f503847c5bde9387cd015b0a323804e5cc811f16d4fe51285a7eae32501f84cc67f7d9f60a4f656b66171c14bcfd4dcd2e75cbc269065d4e6c0e2c9dd3fe8e078f92cc06e70c2834b22c66a34393ea2dde3e938f33d21a3489cf6cb1f3969ae29835570f18e12e9e6a818e3a994d82e644b03a792a930f574002658412f62407f5fee083f2555c5f23118librpminspect.so.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrpminspect-2.0-1.el8.src.rpmlibrpminspect-devellibrpminspect-devel(aarch-64)@    librpminspect(aarch-64)librpminspect.so.0()(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)2.0-1.el83.0.4-14.6.0-14.0-15.2-14.14.3fٝ@eeedkY@d@c%@b@bbb\@bb[@a@aW@a@a@a@a@a0a0`@``@`\{@`\{@`\{@`7@`7@`U_@_@_@_@_[fDavid Cantrell - 2.0-1Pete Walter - 1.12.1-2Stephen Gallagher - 1.11-4David Cantrell - 1.11-3Michal Domonkos - 1.11-2David Cantrell - 1.11-1Orion Poplawski - 1.10-4Frantisek Zatloukal - 1.10-3Fedora Release Engineering - 1.10-2David Cantrell - 1.10-1David Cantrell - 1.9-1David Cantrell - 1.8-4David Cantrell - 1.8-3Fedora Release Engineering - 1.8-2David Cantrell - 1.8-1David Cantrell - 1.7-2David Cantrell - 1.7-1David Cantrell - 1.6-3Sahana Prasad - 1.6-3David Cantrell - 1.6-2David Cantrell - 1.6-1Fedora Release Engineering Björn Esser David Cantrell - 1.5-1David Cantrell - 1.4-2David Cantrell - 1.4-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-2.0- Rebuild for ICU 74- Use rpm_macro(autorelease) for %rpmautorelease dependency- Use xmlSetGenericErrorFunc() rather than initGenericErrorDefaultFunc()- Use RPMTAG_NOT_FOUND macro instead of -1 (for RPM 4.19)- Upgrade to rpminspect-1.11- Rebuild for clamav 1.0.0- Rebuilt for ICU 71.1- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild- Upgrade to rpminspect-1.10- Upgrade to rpminspect-1.9- Rebuild (related #2046952)- Fix invalid free() usage (#2046952)- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild- Upgrade to rpminspect-1.8- Fix missing %changelog entries in the package spec file- Upgrade to rpminspect-1.7- Upgrade to rpminspect-1.6- Rebuilt with OpenSSL 3.0.0- Use %gpgverify in %prep- Upgrade to rpminspect-1.6- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild- Rebuild for versioned symbols in json-c- 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- ExcludeArch %{ix86} and %{arm}- 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- 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 2.0-1.el82.0-1.el8librpminspectcompatqueue.hconstants.hhelpers.hi18n.hinit.hinspect.houtput.hparallel.hparser.hqueue.hreadelf.hremedy.hrpminspect.hsecrules.htypes.huthash.hlibrpminspect.solibrpminspect-develCOPYING.LIB/usr/include//usr/include/librpminspect//usr/include/librpminspect/compat//usr/lib64//usr/share/licenses//usr/share/licenses/librpminspect-devel/-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 -fasynchronous-unwind-tables -fstack-clash-protectioncpioxz2aarch64-redhat-linux-gnudirectoryC source, ASCII textC source, ASCII text, with very long linesASCII textRhttps://bugz.fedoraproject.org/rpminspectutf-8be5e56f0834a8dcd49b05aabf00eb11b6ba64f142e32f1b0864613cc4cd2f499?07zXZ !#, ] b2u jӫ`(y0!JOi9+ 6Wa4;=-Þk̘%&E9:pKd~{ <_R̰APZ0֛ZM[~H#v=ܹʻT/O*ۋEdBض47f:/ (<V69T wDlG_ Z'g5p[RUX1WqK[Kѐ56܋MA>fP]+oK~J ܃$X 膂*N,Yfjg>?LHH0ZĥijP;Ųоpx%4Q*⌦|0]猪xu8DA]"o 38Dl8.#7lw=2kfQ ,:oEm\Y'refBZkϜ?"k|ro|NF']hUz|&qx(760ʆxdHmҀ=meUmLSx7ۖ2I݇FФo~/?mz)˻Y㝆(YC} >*i]eZC:q](Hm3nƑ뾋) ,l{o Ds! p6ڼgP7(6ݳ>o:`7Urk>!kG-|!3%Hjs:%_۝_hc(n2| m)$|El&}F?Iҋ3TÈ+`@>ͱ+A<~Tv sȮҷQczwtIbBr{O^E.\N6E7Ps/Ib66^֮L{ /Pp?2m\؃.ףD&4%ƚFA0P}OB_]񩓜rVQ#~isCWy繿*Q b(y5.C6(knIurzYFOA,xr)N݉BѰ0C4Fg˥ =WݘxO@s;3Wg.k;^Ux{Qŋ~j:3E~3Jq~4GZW.: sb-1äzЅ 6uYx̉ #>8@|]hFU۶㕿8Ϻ# Fq\3J .i q[>'d޶]q $ #xc. [!ie86*x8%"M \(dCp'*+Gʓuw>*UџU8D6*$ cy\ y%IYfYX]Jf03űJ, 6rq v+3 zl}O2姤:+9f r [0c] z c|/8շ2F=MCゑ'끫9s / m| 7;S d 1dGE먉d3ΒS !(&_vjsh5ca[?k<nYwiO86( w+HDEk [GНa4b叁,ZU@v0{U.jLCam*{!u͓ݦP^OoR~Ѯ(&linY_Vc-p"?[(eEw@n{9Q YlC°3C`wF=S̱/e}֯n M* I:Y?bǂXyf:S:tP3U qS[!>c <'sft7J (ms@ZՕv.f[RFpa9p}9҅kno Pu?߿7IcLMn066.d:Cu Tb -(P0ց+}>J[1Iu7cmL~P6`no7c@V/Apg&^$_$!ɻ-otq("OSVYR{4DU5sۦFKbLg%݉dVJXnnat FpL*C=vSĖA1$41P/刨_׆.D2ڵjQo-̥X¹~P)[a}o&L?FZ[@/Ͻ$aMo/{Xus݀pY1m QԨ{(,8)~$ Ŋ@+A5|!A's&\/2lҮfɼ!Wt@Ñ#w1WҊVLV*𞖄_hYoc0Y伈B&#dں:Fyԙȑ#GD&O6SoYa2ޤ;'{=|##Z$ᢪe>6vŃ4#PsR;5EPF[pxd^vSTG鲸mL!k L<̡ה(댽5(CyLqb)R}r!ؗd"錹>x^e@A x~/reP`w`)GNi@1Y8]%l4n~6HT$=Y;ZͨBW۷k[Mg&洋"UUڮj=?kDb@nA=Ciژ_V޽ew/~!I+ikŕ?0EرU+i-FZpX[h(ΠS\b5)7ӃUSAֲC ";Kኋ[kV'NMv9&{Ȓf?ydS,g)-2!тA:idwd~*rI PҷL=xiHG6c\Iek aA+NoET-8=pJOy?-ӒjԂ73S+FdFqM9˰LmZ`lpYSgO'`1_6R`Lf`7an08>UMag<Op^?N>QuĻJo˜||"P&GM>ܥ>2S*D,Rbr힟%}6/WюA* }P"JJ(z6'K:Qݖbk5xV &yhqô(ι5˧! k:epyl/u)G>`?bѓSBh~4aƨMhHWGBƻO  s7S*{r [ܚ[ GO~*mQ#QRߍ;5[DK9 ݽw%njqg[T(% ?|A wy$׵UM }ZkMuMݐXKyR{0!\x^.An۶xyΉZ^0<WD 17߅q}eڕ!bE"DZt~ #|>; ⃚E:ayW6CRʓ Q)2IT~ч$e[)HkD'4u<^(.5~ߥ9JU Mllm*x=E$T#xSL@&zMdM /fN9Omz݅5Zi@ X^WR.tRBan\CB{#@R OWl-)Bvf}_ 2p(JCNJUR G@ Wm{NWw7ńxjz24\,.W"rĂG|s[osrZxфM+{F^);X{R2)^}(N0 Gf($]Ϲ4/9i V"$b,GZ4N(U@ %=ͧ[ PD*}5oQŹ{U.lfSVK2Xi^7|mDx=5\G1}9\FHs+09FeBNC'9|QnFsx:HF4mbE+w/S=D|rvNcK&BSS`d`084@PeOTƋ._BO5r`]=h愸Q&}RD,7Ǘ`X,Q`+tJ7/eq[j6f.FaqOOa%th6X|O-".b.Ev">.Xɰ|In}aZDw}@qbpCt&u0י잃&4;Y08HMQf`G5zݨ\p`~8FBD_r<&L~@̿"GR@# P,5K CfHA}~Beٴ9 o |1qeTvV;'BB}yfVnv&O#Wbh,oFڗ+V Uj\Wq$ȭ\$As [Nגpnl?9ӚzCIKU .7M'JN %%=PW??lk>+(@!0rk<@Z4meKlw0+%0-mD'6 C<h cEDt6'SFzjrYG~_H~l>?} Af7X,h@o>ePB07'Yš"p6b=fA]C nÅ@,Ȋ>Nt`Oj=ָAJv?GUR\U bz-;09zfi,T܎~Y=5=X"~ +$+[ -:Q}ybIc,6Vɡfθ6@8FujEAmSf{YkRVVq?Y<4[[1d<{ߌ?=f>*;lއ|LQZL>_W81,_Ao (B {t=\3x]Ba{YSKR2%Ĺ p$v 9nx hJnNsmn#C-r^.[4t!9 WG>| o$݅@urUIdmPnqV{-crw rO|@EI:4Lx֟!N=Nm,ݘppVNu!nBGtƩTHg/6}F]w\N62YC?=L9$ <|20b{O:Bx4k {+ȩn|ze zKPt庳VfTĭlnsl'LRJp+g$kwLw2Ay=l8cXH0msQ-Ԭz5ُ6 )Ƀ?җmQ_p)Iu\#IFsSE(w6}3k+!nmq5םvVGߎ=6]Hq:Px醿! -c: 2QժV2j#U]/y|t nQX\x<\J'MN8hg\)=F/Kdx6ue^ծ:`FM4oBjj9\;5"[D {ܼ֦!P_I*cF@g8mwJ,^pNy'<5=f`K'h\G-YaaZ&\t%.bxƢSQѨz {*Q[@c`V}s#j;_r-=Z|0'RZufiR=_@WϥgGFV&]BYnCZ< 1% HgZpfc)/reol4⁛{i2c!_*4 –5oF"WUG>1g8 aWiIZ8D@P|`7mw@%:q0,O[-M}O߹D|C3 1YNJXu+ I/8 .%"hCWgZCш?[f$bd]W#6dׂ!\kF0qJ7LCNqތXvÏM9p9K`0mJNE w[|U&LT- ky]ɒ G.Яt}Kjت1>H?m˱ݧŝ0M5|8!}݋s!^zCVs 1u.)-2Z ,k۰ˆ`uK*X+dv@3 S1h_(2cK l nC@/lb?drGL{'.@Bqi^DQ 7&|?g2 e""6>7"YL`3]$KIdwV5qIGf/SQnG7Gyxx): HR˘b*f bi|{ۆ˯ֵ@Mc >@7͟?WZI?ܸoZxE5w<K -i'u[bJ) yٲWf4`́]C+T2"SU.Q1ƾ10He^c {)R}|%sv{ֿMҐ( 4Jؤ>84!IiĸKkEXm2l&YW!ٳhh*{Q:=cX]bqt3*d$yLG(H)/LpsFAM.MK焼Ai?o(b )?g\#D2;hA9i&oBeN䓩oKt4n= M=_Wo1FViH$(*eaa=O]GU.[ P:{bgzO xB6v7m|a>SF^%\X[XV}wDHGa~ޣ݋]]lS]5-U i|ȚJ rxt*%YB%i`{D/ϪW)%'rJ5ɡ0-q}??ymY1pl1d9{AŶo`&k k1%wv|G\-;YaFC>%&`cg`5N#*O"*, %_05X@KU 6A>`Y| O!}龿rewίWQr z\Ȳ!8ze$m7%n0X }Mwٛ}kG6ڣ4YexsU!{ռӒosN,īxzTTZ^8\}5!vgKe˿M\T2NvjP?lh[Y|]S ޸M&rdj!(W-pIƇqω9#gW6CcIdFJ3Sm]᧡ӶeNb.-1UG"&6`;-A  Mۏz>qu79"[ 1Xy-ik5[5i  Ֆ@=V)zeοoMJuw֨];Rf*2^170ӗ9qEUnJ xOTZ/ ^v9+,"X3|[Ÿ>^ם>J=T:jvf;ck4.MɿC ݨ?8r HеZ3ڔ^J]h<ؔr":}EwExUHzԔA!(y)[̾* y׎M6ݐ-zfT,\kj~oT?o\m]i'|٥%9/$U/9DkΡ}g0ykbnQ8wZBJ/)J s Db4-+>. B0Z(-sGN?E٪V|FwHMW|YS'ke0Iх_qOQY]~Zw*(b>(dSU+$6UYϨ'l=R &4#MMYL -|%b)!oㄡ-{Ҧ=$&6VHWaFB-v:y Y K&$}&\FLV(7/wmނJ$TN%m,+pE㗔Gf9:DF{r6SĐ mx#e2CFoU5B05XFi~Zs9brAu: y+.,üw(`N*h'cx ݆_Jo?Z.bE8/$>ÀC؅t.!5m>߹!v׊o'&[B˱j> Iw@o6#:/s bHkD C:>+ u!skB=c P pKkmOoY׶6wo *r[R*}-3ɩ?cf*6PD)Gv?TEAk}e䗼@q"gH{(<D^|Ap |kb+% UQvŕ_Tw&,Ka H&" 58ٍhmpo`Q?&BQJS6ޮq&38oj`%ݱ3RloJͳZFiP"q?#pW\.qP9 Ԭ,tZtd3j$zϓQ*|s2cZOk=/K+wo)>q~-QR(l ECeܫYxJSp ^E 3y QK~2.)sI 1<%܁@_.:`ןEd”D)Oiϙcfl!+]|WP<êo J7LH0 /3cҰz:)yؾZӧ$O!IVd$-J$kg%;KU/rGl2Ѭa v1Leos瞁@A= iv­Ϗ_Zә~b8LvѪk*HYp!ͯ%[`яQ;I$74䫐BCW``sBaZ*^}'7aH}`فsԈG&K=Zx~>laQ ˹ѳք`J|k6|G/qxPb-r/줠7ݓj3V4o<!=a& C?Ѐ-c2$/'ԙRC}k-^;#+7ۊoi > hdGdDZ1ud-Hut|!eÞBXL7XXm4L"#Rr}?Ɯ OY H31Y=TǸa&$h@e~$:jĚ~2N׈FFc -ʌ9B3u9CL7JNAq|4;n1gO:zZnp :-ꩆq0 j[hUu %v]&Lۏď)4ˑZX G|9bcj })6&l[tO3!} JNh`DUNqQ$w#U\pJo>X+ڱ4z6ycm`J(D-ٻiyQ3K"ݝn† h:ghQtB!ΜF3ݳKpϰ& ut-j z/&z)!cYDZ<ۆUhX-&Ymf,=Xgkߗc-~8ydw+KU"MvTyh\ ? )d@3\ SLǘ k[gsaM{F>pO2k+Rӧe-yK1z:]M <G Ύ92YfE,|ݫfU vkw;qP̄e 6,r :b.e93+(9"1/+7e̷H. 9_ HcX]ft#jޟ0TE\ ?MQTR4G5u n8$*!+R:!_I|Q' J4[Y:FVvXlW~+_pw $YhH( 9sFQ1n4 'xrȅw) ȊVI)R5e~3u<F{1D_h"|-OԱ&7p; r"hĮ ?YI&a'=^Nz-26Lɱ1t#g>&u*c./ 2O*6Ǧ*=e)7ElOB-묈!AG/сM0-Wy|8턋9i;@J1DL < . |*!Wf>!L۪]s}ewZ|v`-Ə67FumW;l4JT F7ҷqOKR3T:n .' SMR Cz1]8)vq{SuBI<^F'*T3R~Uy1K=zzjŽx:4GH3~3 B^ķifH6(#K> Sq{e;ZP[T[zwe-(xd\IAKJ:S 'ҪjUXaT_dlPrc4y6LV#27m[_S!Zۊ*oU.D~#yYDCE0kDƁ:C/NUBAbDӭ?.|p,ndJ{+>brUΕgVvSqg^k#E9Eqk$ X>uCP+IN/cowR~VR@Odr%"9:Z|`K oOVӰE9UQJ4j:bbL8gz<J:1_؎JY<[kRzR߻1 ~Ea ,p%&eXl,[ Bpq^ge5*!ͻ3C&yP{u6V䊷<~h/ FΜ~S#ݟR\HNp8L՞c$sgUa{Lv*lmX"?ÔU)R=4M|Ȑ+UySԔ՛UE_ (=|O P(}H8l3:LJNM=Ձh U XΚWۉ,>MCq`+.QKhACme?@T;I HkL>t l46ƙ3J}BU:AWuG랚`Ƕ)Smku"e]%e^H9+nIIl.-qqB&XܘH:8;<EXEJTu#3oՌr$=T_MW>)O]qD+3j(X=QӀC; #peOBg ::a˕[Vû*xD7\L8Y~ݳn2p|\bg_*n@YV)ht[bvIJP?G = Y/Jqߒ4*sPv[#tG+H hM%J>"/bºȜ$d_ E11 |\3Eҋ!3@ /ߡa({D`c}z7.Lu=%%ҷٙGT%^YRIxd:AkR <;'VZbkCz't^MkO66P׭Qυf3ԇ>\!Iy_66 0hZrqQtIDF9`~=F珳iOX3"pI1ANd XT)&ɉN 1uſN_mFR^Ib>,v&Yņ5gE8xc5v =,f1\ZlؓPoHGusS.ZXӞvaP 7]$]H%"Z !-PyfbTk:Sh=I{v~x٘9 &1_Y[vnapYjwkǞn3Wϸ4] [7ؔgUڵ^Ɖ;*/Hbd-}tJx!?"trwB Wfeͣ"XG=pB]0t/ ִ7ccYFG4J݆Tn{lKe3|$ew ȳ6+.F1xUcL]7#w/?$R9_wDpx, IP @ =EiMN^ KX3g4n:`}Z&Z.,d%}j(@VQ ȬgBve{/ЋLT_ V篐< i<5BZ#(7B\+)r58=-VOf1=|(-Y8RC9ĩ76ُی W1rlV0()ʭ$GdJɪ(TL_!fzf.^ax{r9R]I@e!FLg5du sȽ8DyLg10c$Ӟ|W{L!2H4hmpW$;_#C8,Pkl8Pぅs9Ky lab"}^4С} S~rRD ֠bGqbRu4l:h˲ FxG9H)O:Vbk Ͱʢ'4hP"j m'bgbs+6'`x`Vt1m]%(oG1gZr 8%ex1"[;USހ=1F j}nmGBJAt:M/P¡W웼\D5I9@R#!lZ4=MnDyh-<(U;* Efƞht%BfHHB4NXN@m/b+g 08s?9L (.PJHq@Ș=i˰!MR2&҅C8kxs i]8lzV՛wPpښn|ޙRxჿf+վ/\7>cF[-Hn@|sDjFG&c1h~b.2 xuP05WkۀuXERF!:I׌,c x—ȯDBrzd<:pΏ76Q%V, |T9h.c׿r7+MNB{2b~vCʂlM[p -oDcv|15QgJ*1Nch4rzt!+ @p>mZ g!xhҵc5GQ|04y>ey1w=uPNeܷ68UQSՀ?rwGts%d!ȭ J6IPZqSAZw5V8#hYMVE|v9I`Ωў[ JBYE\ V;ҥT/D: & D'շYәEBE 2k%6/on-K=[3m;%o3+BbYk7O&ǣ>kFp3 {!ut6sNKq-ٳ'tgDyf-5[ixw8)bj,2s8miDԞL5ܕ?̡u{t癳\k W1 m*P)5! sם?~RsB()_&$PN65^ZDۗ|tN:.:i>z щg]Lxat-h<`ZT[aBF2_4ޡ:!v{V#!]AF娆2NޛI`}q!]0L /TfpW96"{ڸ |m=D$gpf>u9~^-WNqxɗܴȕ&ϤJo% ܂bNs=:2BVvlDp@UI4NJc̦,ŦgXuX@w6v\1xp HR"AOR݃FK O]2s, {IHŹ2;K[OGG# pgpcBT'|L` 𰾍r% l!-+BɴUWI*/SNJJ׷A,fsbDG3>V ) Oʊ wW ڿ;P$}Pfe_ @f\)n]B7;.%QkRWT>g](Y#ݺ T68х ܐ&7&q"ժqep.?ѡ'|zWQݛ$fR}>€"MنD_jmȰp2[ݩFUZ^[oy$KPl_, }ϋ8͹8z:Sg:veDv,v!4џ'!xNRҪ( dNUo$0ui-"Q@+[Z"RZ!lXR6~3pp;ھ7+VE'sKHiW,@z-ݢGxshBaionwO]]=%S|Q(V1z+wZdzƙ+)r=mJ2Z;L{,"^Llڌ ք`N5/wRWo}lGŭLm&NսiWڻU2vm $a "E,جbIC 9Pe > 0*vt0NkxҶ"> R c}|*&ӚV 3bK8 f҆09ΕpݠZ m,gۻgR UǣeW㳉ϲ-jaΗBViM\&`o*46À+x? e fqLOyqHv6;C6L4ajTu IZe3LKkj溑v;9$hagԚ0*#)B h G^}rcy4)|' r># FI?dC$jLUJ (PP ~ m)21yjٳl#gqqL(-ZwRP u}$۬ae ,>wmip}gfL?mI hB8/+"j7;{va,s;+,\VYZ$P3} d%sl-e2OLiVΣOx'YS즘|WH'2^;h_4h6oK\#*֔{Ƨ蠴q?o8CL" _–k͗ ! w ?~Wĩ -nh?uk_R*8a^i'?z5^_B;yε?⹀z9fm%Wģlw͡4`pu}d{8vbE?„K#U~;Ȗ`Hy O2Klp&w5?myⳖ2Q%ѳ N.ΐu)rBSG:/T':y8| . 7&#~d@DnS*L*d „0-&T1ۅ!ܫUS(xXV섂!⠐FĴ30ۓz)A.#^IE+Jq'7!{I[tw;擼ߺS*74,}L5/S$} mte1z;ና0iص*4_i{Pb[ߴVH.ȣ"\9t[E8߮ջiGjC jpl "!S [6bYLăT_M\X"ID{0Z9.ڢYZk91ؤ60B ߭x 낐5yɥg'RtTy^yD{Iowt5C?ԙyHMy /L6dy1U27ujpQv-SlZo)5}uMXAYZRݫZC=H"ь=C %pQLt jQ2!=ox)|5gEkأ8k^wuzK!ӝJ/G-$d},O0m'w8ҿ$ҬsC=:c<1ڭkw8VtQ<9w>觬ݼH|a0-4<4ZM Cbch_Wr+[2(jܓԜd8!@3PwݯNZ<&׈#^y{}~dŧ6 ᮆҨXlH)s*ߥZð:l#S^c_tz[5g"Ejz"Eζt IRin:IB2RUџT1{:g!n. $YE ״sJ5p- u epB ؁3>f8c\ aKRia\ur!QRU*  crB&#9ohg/OjJqr؇W?T.*Jr#_8m.(ם>8Ÿ^#3p^E.SfFʺg{7sY:!~Jo' Ƅq",Wl< ~ s]q"kc hhg͸Xl[LBV& 8gJ<b[wRoz$Gm(8O3h.,G&UncPWR;X{GkQhrc<['+PHQ1fd56 KԨ{odc1>KpRLX!_*1Ayixȹ:}p+b ;u/ˣa񴅶 T"Ep7|,ͧKڹC[@+<_}xh] 9n P26Ғﯩ|Mx~🜅KOfi"uP{ru9arƒC]?ko.ǀ"oK1ԟV xC\x)AYr0n jIb3 =65KC rv >@:&ӻ),5^m _R/]67^=\fɮBnD+_5^hܝUc2}h%m W 2iu ;C=Wک崜 r/ĻƿbAo*)lI vsUx\mQ5̌ىÏhŠL3i4GV`d8zPx,mro@ia+ ssR׸H^Lnƚ]aN`Ai(B\E"E^= 1C֡0;;0-Re-P-a;!Pģ+oW P2M &bLeL7h$Avzc9X Ұ;0C:Ė;ǠAwPE"uM3TP/rY; W; TO98RiA S\A~ 5Fs|gL8H) d<$FF A1N-o`fI*7$=%&Ի.0Qsta?A;.l yXw̿iYYv(/—e> ?c=->w:&7;-;Fʻ$XqA8oa]?0PIEhnՁ\`Gq}$t[πMìh[;hwk=Zn[(<T(;|Y!{62ϕ Ak㱑np+( WL`pCt,Kv/vjM6& n7ld*=_y[*O3S -uRas7 ƒb ,^~k0=v>w>,UDA2UAb{Kwp]@P7 ͪBV( <6⃴=[nqꉃ=T tخBCKq]r%r7pR/>M3X:O/ x7&%%:=a~IY_D`P ۤW;g_N74eG`k"9:3*2()'. @'v$.@!ޅ6g8 h. k5_m4yv̭a[k7<~j\Y3";W(-e!%ztwOE>W^Zv7MjZ˯m}ϝoQ42qs',D5ip)WaHe4_ |Dj -kSeq "G㑁,)--#k6\X=M |ޮ2X(b04PU(̯rqЩPhUhTB֫ 1i4W'5Qץ2ỷP9/I9@, 3x*踏 %6aMJHX[`\lY{&%SX}T{1NByHRJu/tX"D#fmcKȥ 0p^oij憏Ə[| X~i(e#M0G=g牔/yʦhȊGAhU-hh?gٌ>@rJjN9>r{0od3'W-.W\$ة})nd@&'#eL2j\曄ܬ`޽N>%;V!u7>{} ȌY>Fd^.G;pmԥC{?P)F:^Mo ~0jΗ hiFLG4d=/AShBWmWs' %W_@24cgeg9,y9OT2$C'nnEdnS9o?]QWlnPɅb1jĶ0w4;BAW֪Z_bs<~f O[.#]؋O =c4 U=\MXYZڷ~_"-Sag1PAyOwL@x/R1twa~ʹ]Ǭ@%|,M 3RRPNۆm)j`Zf>7FCUK:bIcRb t"j2 %F4dF$m zE q 1Zܣ0$f(ylG|O!.n%Tt7l9䇱q4akO9"VWѨjKBR]^uJ%s? ,)2WQHxOn*ߎC ]ɞ&v9i][ :+mJ!f)RTgf(YD>'N֣N~O<5˽$(+kXvVܸ̊,(S2ku.>㞍kD=lw%<g$]FDb V}d_uWJ]0]TSbӍqsS\>9w%5 pTn+Ol#aDdl[@NJ5;RbjEHhgҾ}%50&L@ȹ*(=h3TԱ#"4ޯ 7O1Ak[[߹̆pQJ!kB#o`k&P鑝:􌶏.!$:IFRGps7&Kn, =MP$GZB1?o1!=>>O5nFk{YVKvq^A)qօC006\317}UG莭#1v:?#O6uc]y])%6uNE cT|>RGf,$ lJUL>oN 8o'Ֆ,hpq}6%8f:F <' F4R/E>llGrAϣK ar&p){"á& DDkEM΂K_YȤK N\( K _' DA"d?b]n-Gbjncԉo%Zu '@Mv{WaN/n˳ֹ(תfj+_Yi rQm4ů|fz Zm _/Djpf-jqVcz#MMB BdܝԭPʽu-/ a]LzbxW ڧ}AmpeJ.mȼ1*.O;|h"CGߟE(T%iZ rUX^Ny"C0.iOc?[YB %rA(IA*D3Ӥ \'V$AFʧdi$r-wit_@&3kym*(#SSȫ jJ &KYp{KN?315` 6Fag M ϫGsggrʖHlHҤ}eN կ@m|ddojHx[Բ!$/b,k'P/uì~8`9A|FAYJtrW0OΪzgFar^/W 3JDZ))NI-8w5WlVզh6~z\ԉ:`81{TcO1mo;EiXn-L0E!M^GJ+*U-CȻ(gF{BS`SXbЙAacUF]Aֵ L,f a-h_!\㼉"MZ7F nU%H.WЧW"!nP,fmYww#y5H˥bvw/YxbA;GWCZ-gW^:rîF~gh sOZZG/O0C(8ZЫGdWe+V& d (T&;g8,S«kWEY݉>)(f9JTl5t4ѻ'{x'Zc6Ufc~316>POp!p C 0󗈫9saY+,8*_ʕbȌr UYDg.ҿTb!FKz^Rg^'4i wOOaTG<[/^%iq^ V5ߒc'SLBOlu9<}S:][e5Qر~@61wNM`nP_0&ʝL_2ٮl ŃJP~#14P >A!:_SRĔE鬃)Y{6A`8-x2Ep1-͠ކ_$}7^ EWMh#>cy5tM).%G;йRpO#7HAyL9XK3YhGf44Km{O'YgmI1)M+Y#J$Mt1TFK ֥} *BGXLAнBbMH'YmXCJeEQt&GmoUMN[y2f *};ۓlqN*dE,3Sd)@H?5N L~cr^3Xw1;59HBӾ.S8<^R\ax5,<=}xRϚ^+Z)=0 z%=, 񳚡h./-)]\.iTCU`wF0XܾZrqٶ)/g&Z42ĝb!T(7M[\0fιϋnWU?PB B0P`mY HPŽ@lꌆȑ2OҺg4q z HangU #ypaK8m_||)~B95C{4,8͛X"I͚$3C:wk `u~g8՘>QM;ycS鴣3- UF:nV!RU9GMgĕ%ݿ7`r9xklbg 9F.$CMW{}!\ Q,Ȑ$s~. c=!DM/m, J;);, _0y3j UFfdamI..57Il(lE,U#,ĪZqoq;)TlsNwmJ߄ ާBJdqIPoXG 8|J)[\ 32`DDxMuˊMgK@,Yu) <R%E9Ǎ?Q8ž}(@"ap] W PQP]'81zoK @6t X`y#H;KQݓ ]Xq)bL sA_v CXRM6?ICɆ#[!qhi4u ~B%3?Խcr bn ̍JR?%Ƴ>{K<I{jx,Že5 LΏŢH8VK lA$}[fo\:3Jǂ{X#O+ooIq09I<1XVay(UT<ے_iN|U :2χxEmf6;gэ69EF aP9)"$k?.q ?ӉFmK EtӤ=\ 8\iؿs؞|k[N͚_ifYkf168LJJk0Wߔ;6Ƒau5wӜ:6i=`9H6%3M,]DA?Söp%kIݢN_S/F9(NC%c|W&@@dGRb=` }hKd݀Hw^OyÚcq"b#)پ$0d!) ^#eZpm Sd@*ڈIu1I ȃƏa0]`PAEwI Sj2Kb_]\[ }e1 P˞_tD %$G"+%LED41ϻ"?HU)y4UPh95.-z@ʮ|!3^sp%<4(f6fueSAN#.x8rnυ,cg#5$5nkv5;`:&׏/ 3sV2VٳO!Z8 rQo;B9JJy>vRT2&`}* .7ޕP:xQk;X>3 eH؄ I(6•"f[mo[?.#-֬6{*1w6Erd(7.FQMX|g7$IRPR!,j=?-#6<*acTZUZ1&!nQg0a<؃3}c8uQq7Wo4-Q1b"BC{^u#,t9W1 /-WNc?,0̉`y<6c8|pSW;CX v$(^BC&r'rꯒ/̂^ꆩVldJ,\b&Yzos ei/te  Xz)P_b )Gۅ]M&=]6(Iu3!8a8snhMJy)]QE@"EՃJd+F}(E}2֣__{4(0bb~r=!C) Z;2>r‘'] %`>{O}&oAu2]fDo\ȑȱR'u8sZ|7pWWȒutJ߇g2#TږfKD/'7T"9gHʟ1)< ~~xc~N\4=P)#^3q$ ?rl;'zȠ*=q}%-R Tʛ>`99YV~#%Yg}:iBS*z8;+ bONVF61NNfĈb,uu`CsT;|C3|T y1nȈE/B\jŸYBOTmaVT=yt.Im՜@cֆ1yX? oWt}XW>w H|("zF|h|0BIş~ 3"Hh9v[̛Mң `J;p)Pwpm0Ocv9!ߛ]ýԸYI9^lWp:j}KigmҊR:V#2sӏ#a -byɑOQ!d;qѾ+5N)'mtY s J"p (.Nk쥓uUYE9W(wu A0_@/l% ” '==M_ 4Ҥ ɡ:aF3 nos!xr@L:Az)-SM oNSޅ&Ff9Bޜ~rY*DΉ0Q0#5e]A!UTb$쪣Ue׏Jk  k[SeMџrΰl}D5D.^z(QGG.k=j&DMd .=" *#G\U0sS򗽤"1i;ۋs#ZU F|$EɊ5U]e2oҔmfB8t}Я$gi.% a+PbU-Jrը#eN(4A`US!~]y_X$(Ώ#AH~<y 7J9'^yck'Ӿ镯;J_3hc(Ejs)e0.Hkt0nܟ8N]9&E~|kwq8_C8^w3bo}+l!4^9do41ڴN@ ̤"5k|(zGu EU?Z׾ߖIZ'6Q}Hl̏_#`l7^*z4(ojIⶴKZd;=1q~$I"+űZZ6@Ԟl/SWz1("HِAx>^3B ΡVVEBL?$ .B6`ΨK `tJJ>5 3,rJܢ7\C-4IG>)姗&_G?B⦁q ˇOAv~|ZFsl9%wTy*Zrd& ) h4Z}qTXK0rދ3B^Yܯm={~>}v,Ӹ29>/_L_z_:{&6[M8Z9Q`|^%h5c~C<47[{P`1@[ +~;gO69EC^%/X~]Su2!=H-^f߬%tv0S+0[ד^9CˇI*9چSށLmr@ցN>|oU^C^" JN>spرXw\_xxn\lY:uߎ$LmP<ȼF2Άw)K_ͨΣum$]+%.!^w H3{JkJAH[j@6j +Lh['̽w#n.57n쨛A_=Is0?aޑX5 %yF%o4@Iu1JeU<e,1o=~l=*}~ m}_ɂ}I5fČdGZ] P^+x4r+K:ɨN&A<:8rzPl^^4[ @9&#Ԛ8;0*$ hN'Rg:rV۶pI=Iztcas`<הRji&MrZ_ᱼa 3UONĸQ&vX$^>: wTFf "Zҵon VhiZXKj㎐Xpd4+yH (<]:oz8gԇy3H|Bd}cn79rOpEr jUx4+r~J3,;UD &-Ɵv{Q'MmCO4eq7%98ĝ$D:lK*ĥ|K(`]PaՕBҊ^=]iEf ײ~[>5{dM\gG2AgƘp0LEnJmnީT2/87MݕaijXx^cQH\ڧוS߿di#KőQźȀXr+KZG5q#biQx6TTk WP&ʣ5#Sf(UXSO$ؖȑo0y4vdۡ,1єeBU`Ck):҇rD{bΈꤒ$a:O AВZY_f(`4DG]{YM}(n懴BN5JٵOeNZ2`3;pWPu9wo{}rݴSuE4hy-=?&;s7Ѕ)Epn 4g$,Jn[NK%zOiI"/Ƣ WR+P:eOi:w %)}KzXY E6)k] ȀjXfOqZ373Ro~ZB2v Q]{$+VmJJ%C#v)N ?Ǎ=Dv LX DG"?1;)pv7DԬatS@ 9}O]:)&LdA2,:R' 3C %(|1k fHWfM̕FLy{g۰EBk Rn@ L/8=iGȱ"ai4p֬Y-4RjsglHCn~z9W@\9// ɯjsS`;fU%< C"_p!}$4h-95dB@ZL^iI+wƴژ0 .qHkfs[EnV?ׯ/-j|̗^IO*hbe*Ώ;,31kHvp OY9J-p#n[ ^3," )L{pBAlkTuMJLΕ +rA."fBL>?9ol"_)H pJt~gERz hͱѥr{-Q~@sgfn*$ks`$?ϹO6~  `L /#xTO!!Kqk0e>獓mhaagb{76GӨyRl Pt!^|׆y&c6s[Us%sg\R%>8x#Uڶ+3ꝁꂒA3}Aٜ~*"a MlzXCܧʨX1J[n'o$p!ĕ<0r $ .A.2p챥VW"cnIDReYUDpN(:F6M`0|'F{A@^j$x,gh%EcwkS+Jյ?>Z%$%¾#űJ o9m_ eU!,/ <%cWo|isuVf{HicŁa I5c83xI8A?j$Tq͚KpC, h<#eWEmOc}Y' gȃДZ4H[k[/H6+9FcSXVPw@$lR5|ۂӫп.er &>kl ;pH!D4܆LfjiH&g ǩX^x50RDCߩ,g$Fqh2IN~z h'W_1X'OBW [#oLJ en6D,rQ ܗsybNR@;}B-qR()~nNb-G;DMD2v)Q ] r)phK4@jtGI6@TXioycy.z2Y?B C6r5]Y9M]d&FBB͸5̃w>s:k-t'pIf8 O]L .VrdQP 6\M,|I@H쨶 LWOj^AUqAc1I܉tA3xiyFH"13 |E9T*ib I?`+,t / "{dJr.2o 32XxڡGmn[%HyQ1Gu-/M:+uye"rAEu q6bw^9Jc@iۡK1tPw@h@b`婮J|*L)Z+mI"Cy[GUXÙx J&KU9fi6*X|LA+#Ya:%X|p}(GR^k/|+ GG?*Umg? ZÒ$OC׍E`ЍaOЅPӠ*u)A IDU @vsp<ȼڛϪJih?$b o^J >Oj$G:Ɓ]i09fUS2I¢[}s ϤxVG;ntItpmœj#Z"x`yY/$M?C갇'İ6vł+5˫fr|RyѪs{:i:g @6fvҽ<{eNn)"_oqoL dcI"*'T$(;[Ti4 &.YP _c7anW q, Kj-&: JR=@ + -@!/;>naxe're[y.,WMQiE0}uD6'N>HI`L\ZF#}S|8DJMP2lɈpK\З) 5LJmtGךX_K̒&H%KMU/V8em J6$mWUԼ,e|Fx em>דbdj8p$>A9 uS&P' Cr5.0s ˇDŬZ%":fxcV--Ր"~wӟ2XWZcT' | **O)@LUhиբ#&dHE0u98!c_)wŽS=:/Nc4_i%1D>45S_|HC1̱&/ z?9 G]\? B62B츫 xHԢ(Αva֎U_pPMk֠%lXzwoRyeBe,DV(D%;ŗ\il)N6 ^zh   Jx+8_^9c̋vb2%%ܬ T޶9|BvvՍV&D6BJlO4Sk^I@s 9^ FQ]oה3BCte_՞o87^jQ=È@-b TǚpѴ cmSlk#:%* YUFE+~^GƜ(pzrj>z!€'X0 ƗT;m3MUrCtlf^~IsfQ'tt g9y!pHb"IڕD}x32L`umU{<ƺFҗ.|"(4ZwQ|ʰۯHO^ưx_[!Bm3B=w9Ŏwv!$?;\wF1* tNy4TJ@L+ zyg:!-V9Cg[}b^{V\HXX'۠XDg^~?=ǫ4MhJ}ǂ`Tm|lK-3i1֣hm?;3΍Y)[n^s~M Wгk]^k?M9&Sҁ#t303QE>[c"4wkSI{zbU2 uf͓m;SPH!tUNDE Lʻ+=Y( {dX[ :j rWٚ2E"6m9nmHeO1/UǴs4ħ(KNtYs bY9k *7[Wo|+_eN})HɌZ,GQXhBIT=~!C9Q.ţ^Gw3+ۨfLHD.&{j1u̫`6bW*kPۑi'vL.[ Ym״g,էG [Z۩ x.e+ %iSޟmX/ŵsPې1ݳ:X e`%bZG=7f1|B}T"۴Cw+!DS=d O}ޔ*:Ďe! 6ڠKߦy~nv p]1%X F{0^:: -OTr"A@ Ę[Al3 J$} ?akGT-{JԚچe'!n}|LN!zE:bN֙7up?(:"!,j*@"u6!IIUsa%ӷڧXG}q?8}࠲5>Wz6#"e$>e\4z bo@2oirVӗG׳UEuӰG2f|!{u\h+m&jvHe_Ǜ,A9"j4ikb2)ZP ַy Pűs3K$RhnqnTe/NDAN! gӢnV28qWJfaNSHWy5˺J5㡮h%?)A!YBbAY#~fpuHPȎyݵy0I7S=k`97kYo1!zQ]X'F'c+(6$wŠZmΜt&ZU}L_ s<7õ,X?=DB}}k[7'P&(PAI짞8s\vhC03æt"=^%PR~LU[Ƥk1+[P$ !66dbq3Cyz_l Zpro1,nFŒ\A6 Cyɲ ޞ1k48MܾnBNqnnpA<5G.*]I/Xrs(ڲ8_)ULQ ̓mQ֮),^bkk fA eHWZ$X"<AP+WPN?k-&Yؾu݈ hJj Re M328Q(VOZh+BI"\\Df}cqԯxu">25XLmK[|1q:0-0/2~{ 1kW^pC7+ OyU ̟ЛyjAYΜL޸e߶t.˭rˠ7ZK` VpR- ^r.ёUsPaK^:ص:άA|rË]T1ZZ7 8X(+\ 1JnzꜢ>n :0&P=1f4KHucQ: Lm]mΨ ?I~ .rgB+qqS1`7bY^%fO)>iXeDyvEڍ*?z.kQhL宓h뵁*w[i-65 T<Hۭ~ڍ&clI"%Qr0{b\u[@(\>&8XEz֨3'!*>/ot9p_T(YѯtuHGh?LwZ9T$sSJWm*aG=TU0,eLkrmjr>.10KNwf_FgSȜHpX4ܙ РMPx&YۗonZKP`]V(Iy[%5Q 1xWߓWE|V*~&Yxoj;j5/ @ qhɔţ*WJ$` ׾Dm^Z}CӃ~%C: .56XHkha,pLQ)4V=;uoFHԌ1m*Jo-h Q Q%r&"eLh.GQ~})՜ZZ&61n$]q?#Ò4Ÿ!nu%M~ TTL6{`QWϊŬN'JmV wda&X# ?9}[#1@I h`R$@tw#}$O y2#@knmzDy%#r͹MԦ(;4m븳X*}3 ,ft_8Z\v!Z%ۉ~ucfhBk2R2r6h<]E2:?(oBejv\N k3- 11*)tW-t\pU~V?kD(H=oY}pH RTwzٙW*+7zI'WЌa3p(tW p)?d(㛶I^L**4巙ĔB iwzĪ(p~SB$6Gaxu}(T'vnA$UL~LdCEk n@&3B@qc/P,n[8+A"$m>mEӼHr8ZC -J?0@afDvA0ꬾ֖b 8s:g߱oyYğeQ\-XdYw_`E_ (6s[ȽzܛC YZ