libfreshclam2-0.103.8-150000.3.44.1 >  A c1Cp9|Kfδq/'Q;W9 IQS93*|w9 -ĹPRr1dY[%kv9?-ͳ 1OtƄh (Pd.A'R ͬ{s6'Sâ!O.iRۜSA6}L'pz6/zPͣ?ZP ;e[)vA$\©j;bbSqbl"Ն |fƨPf658e0781d997ca2349852be0b6be26b2cc6cd4776d86585c8fb3007ab7cedbf3a67e8a5a97ac474e6f31bf99f2f689371b54cebc1Cp9|B1pБeY@ǙΙ.Zs*l([6#m)DY41+)~Xp-â䒀fyHh()ѿ*4z1;gu^h]씾hTjE^23KĮ9:Vʾ Y7cCtE-_q#zMe m+ k?e |h/ф䀒́$ƿ?J%qAljtcT'2ēY>/|EYsi̹/ >p@?d & = .DJT\ ` d l    (8999: l9>P@_FnGHIXY\]^ bcd:e?fBlDuXv`wx yzhx|Clibfreshclam20.103.8150000.3.44.1ClamAV updater libraryClamAV is an antivirus engine designed for detecting trojans, viruses, malware and other malicious threats.c0xinomavropSUSE Linux Enterprise 15SUSE LLC GPL-2.0-onlyhttps://www.suse.com/System/Librarieshttp://www.clamav.netlinuxppc64lepc0c0c469a419ec491a5cfbf70bc38dfb1db844e254839b991508fa035729ab139397libfreshclam.so.2.0.1rootrootrootrootclamav-0.103.8-150000.3.44.1.src.rpmlibfreshclam.so.2()(64bit)libfreshclam.so.2(FRESHCLAM_PRIVATE)(64bit)libfreshclam.so.2(FRESHCLAM_PUBLIC)(64bit)libfreshclam2libfreshclam2(ppc-64)@@@@@@@@@@@@@@@@@@    /sbin/ldconfig/sbin/ldconfiglibc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libclamav.so.9()(64bit)libclamav.so.9(CLAMAV_PRIVATE)(64bit)libclamav.so.9(CLAMAV_PUBLIC)(64bit)libcrypto.so.1.1()(64bit)libcrypto.so.1.1(OPENSSL_1_1_0)(64bit)libcurl.so.4()(64bit)libm.so.6()(64bit)libm.so.6(GLIBC_2.17)(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.17)(64bit)libresolv.so.2()(64bit)libresolv.so.2(GLIBC_2.17)(64bit)libssl.so.1.1()(64bit)libssl.so.1.1(OPENSSL_1_1_0)(64bit)libz.so.1()(64bit)libz.so.1(ZLIB_1.2.3.3)(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.1ccM@bu aZ@a@`\`@`pA_#___[@_A@^^@^:@^]f@]*]@]]o@]Ik\e\E@[[`O@[Xf@[M@[DZ@Z@Z$Z@Zk@ZOYY@Ym@Y, @Ww@WW@Wu Wk@Wc@V'@V}/V`.V^@U@UG_@T[@Tr@T7T6Tl@T_W@max@suse.commax@suse.commax@suse.commax@suse.commax@suse.commeissner@suse.comsuse+build@de-korte.orgmax@suse.comdimstar@opensuse.orgmax@suse.comsuse+build@de-korte.orgsuse+build@de-korte.orgsuse+build@de-korte.orgmpluskal@suse.comsuse+build@de-korte.orgsuse+build@de-korte.orgdimstar@opensuse.orgsuse+build@de-korte.orgsuse+build@de-korte.orgmax@suse.comandreas.stieger@gmx.demax@suse.comegdfree@opensuse.orgmax@suse.commax@suse.commax@suse.commpluskal@suse.comsecurity@suse.comegdfree@opensuse.orgmax@suse.commax@suse.commax@suse.comvarkoly@suse.comvcizek@suse.commeissner@suse.comjengelh@inai.defvogt@suse.comro@suse.deastieger@suse.comfweiss@suse.commax@suse.comjengelh@inai.defweiss@suse.comfweiss@suse.commartin.liska@suse.comecsos@opensuse.orgmeissner@suse.commax@suse.comp.drouand@gmail.commpluskal@suse.commax@suse.commax@suse.commax@suse.commax@suse.commeissner@suse.commax@suse.comledest@gmail.com- Update to 0.103.8 * CVE-2023-20032: Fixed a possible remote code execution vulnerability in the HFS+ file parser. Issue affects versions 1.0.0 and earlier, 0.105.1 and earlier, and 0.103.7 and earlier. (bsc#1208363) * CVE-2023-20052: Fixed a possible remote information leak vulnerability in the DMG file parser. Issue affects versions 1.0.0 and earlier, 0.105.1 and earlier, and 0.103.7 and earlier. (bsc#1208365) * Update vendored libmspack library to version 0.11alpha.- bsc#1202986: Update to 0.103.7: * Upgrade the vendored UnRAR library to version 6.1.7. * Fix logical signature "Intermediates" feature. * Relax constraints on slightly malformed zip archives that contain overlapping file entries.- Update to 0.103.6 * CVE-2022-20770: Fixed a possible infinite loop vulnerability in the CHM file parser. Issue affects versions 0.104.0 through 0.104.2 and LTS version 0.103.5 and prior versions. (boo#1199242) * CVE-2022-20796: Fixed a possible NULL-pointer dereference crash in the scan verdict cache check. Issue affects versions 0.103.4, 0.103.5, 0.104.1, and 0.104.2. (boo#1199246) * CVE-2022-20771: Fixed a possible infinite loop vulnerability in the TIFF file parser. Issue affects versions 0.104.0 through 0.104.2 and LTS version 0.103.5 and prior versions. The issue only occurs if the "--alert-broken-media" ClamScan option is enabled. For ClamD, the affected option is "AlertBrokenMedia yes", and for libclamav it is the "CL_SCAN_HEURISTIC_BROKEN_MEDIA" scan option. (boo#1199244) * CVE-2022-20785: Fixed a possible memory leak in the HTML file parser / Javascript normalizer. Issue affects versions 0.104.0 through 0.104.2 and LTS version 0.103.5 and prior versions. (boo#1199245) * CVE-2022-20792: Fixed a possible multi-byte heap buffer overflow write vulnerability in the signature database load module. The fix was to update the vendored regex library to the latest version. Issue affects versions 0.104.0 through 0.104.2 and LTS version 0.103.5 and prior versions. (boo#1199274) * ClamOnAcc: Fixed a number of assorted stability issues and added niceties for debugging ClamOnAcc. * Fixed an issue causing byte-compare subsignatures to cause an alert when they match even if other conditions of the given logical signatures were not met. * Fix memleak when using multiple byte-compare subsignatures. This fix was backported from 0.104.0. * Assorted bug fixes and improvements. - Remove upstreamed clamav-ck_assert_msg.patch- Update to 0.103.5 * bsc#1194731, CVE-2022-20698: Fix for invalid pointer read that may cause a crash. This issue affects 0.104.1, 0.103.4 and prior when ClamAV is compiled with libjson-c and the CL_SCAN_GENERAL_COLLECT_METADATA scan option (the clamscan --gen-json option) is enabled. * Fixed ability to disable the file size limit with libclamav C API, like this: cl_engine_set_num(engine, CL_ENGINE_MAX_FILESIZE, 0); This issue didn't affect ClamD or ClamScan which also can disable the limit by setting it to zero using MaxFileSize 0 in clamd.conf for ClamD, or clamscan --max-filesize=0 for ClamScan. Note: Internally, the max file size is still set to 2 GiB. Disabling the limit for a scan will fall back on the internal 2 GiB limitation. * Increased the maximum line length for ClamAV config files from 512 bytes to 1,024 bytes to allow for longer config option strings. * SigTool: Fix insufficient buffer size for --list-sigs that caused a failure when listing a database containing one or more very long signatures. This fix was backported from 0.104.- bsc#1192346: Update to 0.103.4 * FreshClam: - Add a 24-hour cool-down for FreshClam clients that have received an HTTP 403 (Forbidden) response from the CDN. This is to reduce the volume of 403-response data served to blocked FreshClam clients that are configured with a tight update-loop. - Fixed a bug where FreshClam treats an empty CDIFF as an incremental update failure instead of as an intentional request to download the whole CVD. * ClamDScan: Fix a scan error when broken symlinks are encountered on macOS with "FollowDirectorySymlinks" and "FollowFileSymlinks" options disabled. * Overhauled the scan recursion / nested archive extraction logic and added new limits on embedded file-type recognition performed during the "raw" scan of each file. This limits embedded file-type misidentification and prevents detecting embedded file content that is found/extracted and scanned at other layers in the scanning process. * Fix an issue with the FMap module that failed to read from some nested files. * Fixed an issue where failing to load some rules from a Yara file containing multiple rules may cause a crash. * Fixed assorted compiler warnings. * Fixed assorted Coverity static code analysis issues. * Scan limits: - Added virus-name suffixes to the alerts that trigger when a scan limit has been exceeded. Rather than simply Heuristics.Limits.Exceeded, you may now see limit-specific virus-names, to include: + Heuristics.Limits.Exceeded.MaxFileSize + Heuristics.Limits.Exceeded.MaxScanSize + Heuristics.Limits.Exceeded.MaxFiles + Heuristics.Limits.Exceeded.MaxRecursion + Heuristics.Limits.Exceeded.MaxScanTime - Renamed the Heuristics.Email.ExceedsMax.* alerts to align with the other limit alerts names. These alerts include: + Heuristics.Limits.Exceeded.EmailLineFoldcnt + Heuristics.Limits.Exceeded.EmailHeaderBytes + Heuristics.Limits.Exceeded.EmailHeaders + Heuristics.Limits.Exceeded.EmailMIMEPartsPerMessage + Heuristics.Limits.Exceeded.EmailMIMEArguments - Fixed an issue where the Email-related scan limits would alert even when the "AlertExceedsMax" (--alert-exceeds-max) scan option is not enabled. - Fixes an issue in the Zip parser where exceeding the "MaxFiles" limit or the "MaxFileSize" limit would abort the scan but would fail to alert. The Zip scan limit issues were independently identified and reported by Aaron Leliaert and Max Allan. * Fixed a leak in the Email parser when using the --gen-json scan option. * Fixed an issue where a failure to record metadata in the Email parser when using the --gen-json scan option could cause the Email parser to abort the scan early and fail to extract and scan additional content. * Fixed a file name memory leak in the Zip parser. * Fixed an issue where certain signature patterns may cause a crash or cause unintended matches on some systems when converting characters to uppercase if a UTF-8 unicode single-byte grapheme becomes a multi-byte grapheme. Patch courtesy of Andrea De Pasquale. - Fix unit test + clamav-ck_assert_msg.patch- clamav-document-maxsize.patch: in the "clamscan" and "clamdscan" manpages, document that files over a certain size by default will silently not be scanned and how this can be adjusted (bsc#1187509)- bsc#1188284: Update to 0.103.3 * Fixed a scan performance issue when ENGINE_OPTIONS_FORCE_TO_DISK is enabled. This issue did not impacted most users but for those affected it caused every scanned file to be copied to the temp directory before the scan. * Fix ClamDScan crashes when using the --fdpass --multiscan command-line options in combination with the ClamD ExcludePath config file options. * Fixed an issue where the mirrors.dat file is owned by root when starting as root (or with sudo) and using daemon-mode. File ownership will be set to the DatabaseOwner just before FreshClam switches to run as that user. * Renamed the mirrors.dat file to freshclam.dat. * Disabled the HTTPUserAgent config option if the DatabaseMirror uses clamav.net. This will prevent users from being inadvertently blocked and will ensure that we can keep better metrics on which ClamAV versions are being used. * Moved the detection for Heuristics.PNG.CVE-2010-1205 behind the ClamScan --alert-broken-media option (ClamD AlertBrokenMedia yes) option. This type of PNG issue appears to be common enough to be an annoyance, and the CVE is old enough that no one should be vulnerable at this point. * Fix ClamSubmit failures after changes to Cloudflare "__cfduid" cookies. See: https://blog.cloudflare.com/deprecating-cfduid-cookie/- Update clamav.keyring - Update to 0.103.2 * CVE-2021-1252, bsc#1184532: Fix for Excel XLM parser infinite loop. Affects 0.103.0 and 0.103.1 only. * CVE-2021-1404, bsc#1184533: Fix for PDF parser buffer over-read; possible crash. Affects 0.103.0 and 0.103.1 only. * CVE-2021-1405, bsc#1184534: Fix for mail parser NULL-dereference crash. Affects 0.103.1 and prior. * Fix possible memory leak in PNG parser. * Fix ClamOnAcc scan on file-creation race condition so files are scanned after their contents are written. * FreshClam: Deprecate the SafeBrowsing config option. The SafeBrowsing option will no longer do anything. * For more details, see our blog post from last year about the future of the ClamAV Safe Browsing database. * FreshClam: Improved HTTP 304, 403, & 429 handling. * FreshClam: Added back the mirrors.dat file to the database directory. * FreshClam will now exit with a failure in daemon mode if an HTTP 403 (Forbidden) was received, because retrying later won't help any. The FreshClam user will have to take actions to get unblocked. * Fix the FreshClam mirror-sync issue where a downloaded database is "older than the version advertised." * bsc#1181256: Fix errors when scanning files > 4G * obsoletes clamav-disable-timestamps.patch - Update to 0.103.1 * Added a new scan option to alert on broken media (graphics) file formats. This feature mitigates the risk of malformed media files intended to exploit vulnerabilities in other software. At present media validation exists for JPEG, TIFF, PNG, and GIF files. To enable this feature, set AlertBrokenMedia yes in clamd.conf, or use the --alert-broken-media option when using clamscan. These options are disabled by default in this patch release, but may be enabled in a subsequent release. Application developers may enable this scan option by enabling CL_SCAN_HEURISTIC_BROKEN_MEDIA for the heuristic scan option bit field. * Added CL_TYPE_TIFF, CL_TYPE_JPEG types to match GIF, PNG typing behavior. BMP and JPEG 2000 files will continue to detect as CL_TYPE_GRAPHICS because ClamAV does not yet have BMP or JPEG 2000 format checking capabilities. * Fixed PNG parser logic bugs that caused an excess of parsing errors and fixed a stack exhaustion issue affecting some systems when scanning PNG files. PNG file type detection was disabled via signature database update for ClamAV version 0.103.0 to mitigate the effects from these bugs. * Fixed an issue where PNG and GIF files no longer work with Target:5 graphics signatures if detected as CL_TYPE_PNG/GIF rather than as CL_TYPE_GRAPHICS. Target types now support up to 10 possible file types to make way for additional graphics types in future releases. * Fixed clamonacc's --fdpass option. - Interprocess file descriptor passing for clamonacc was broken since version 0.102.0 due to a bug introduced by the switch to curl for communicating with clamd. On Linux, passing file descriptors from one process to another is handled by the kernel, so we reverted clamonacc to use standard system calls for socket communication when fd passing is enabled. * Fixed a clamonacc stack corruption issue on some systems when using an older version of libcurl. * Allow clamscan and clamdscan scans to proceed even if the realpath lookup failed. This alleviates an issue on Windows scanning files hosted on file- systems that do not support the GetMappedFileNameW() API such as on ImDisk RAM-disks. * Fixed freshclam --on-update-execute=EXIT_1 temporary directory cleanup issue. * clamd's log output and VirusEvent now provide the scan target's file path instead of a file descriptor. The clamd socket API for submitting a scan by FD-passing doesn't include a file path, this feature works by looking up the file path by file descriptor. This feature works on Mac and Linux but is not yet implemented for other UNIX operating systems. FD-passing is not available for Windows. * Fixed an issue where freshclam database validation didn't work correctly when run in daemon mode on Linux/Unix.- Do not hard-depend on systemd: use systemd_ordering instead of systemd_requires.- Sync Factory to SLE-15 to implement jsc#ECO-3010 and bsc#1118459. - bsc#1119353, clamav-fips.patch: Fix freshclam crash in FIPS mode. - Keep OBS from installing an existing clamav instance to scan the sources, because this makes "make check" use the old library instead of the just built one. This is only a workaround until we found a way to keep libtool from adding libdir to rpath and LD_LIBRARY_PATH of the binaries in the testsuite.- Update to 0.103.0 * clamd can now reload the signature database without blocking scanning. This multi-threaded database reload improvement was made possible thanks to a community effort. - Non-blocking database reloads are now the default behavior. Some systems that are more constrained on RAM may need to disable non-blocking reloads as it will temporarily consume two times as much memory. We added a new clamd config option ConcurrentDatabaseReload, which may be set to no. * Dropped clamav-str-h.patch (no longer needed) * Fix clamav-milter.service (requires clamd.service to run)- Update to 0.102.4 * CVE-2020-3350: Fix a vulnerability wherein a malicious user could replace a scan target's directory with a symlink to another path to trick clamscan, clamdscan, or clamonacc into removing or moving a different file (eg. a critical system file). The issue would affect users that use the --move or --remove options for clamscan, clamdscan, and clamonacc. * CVE-2020-3327: Fix a vulnerability in the ARJ archive parsing module in ClamAV 0.102.3 that could cause a Denial-of-Service (DoS) condition. Improper bounds checking results in an out-of-bounds read which could cause a crash. The previous fix for this CVE in 0.102.3 was incomplete. This fix correctly resolves the issue. * CVE-2020-3481: Fix a vulnerability in the EGG archive module in ClamAV 0.102.0 - 0.102.3 could cause a Denial-of-Service (DoS) condition. Improper error handling may result in a crash due to a NULL pointer dereference. This vulnerability is mitigated for those using the official ClamAV signature databases because the file type signatures in daily.cvd will not enable the EGG archive parser in versions affected by the vulnerability.- Update to 0.102.3 * CVE-2020-3327: Fix a vulnerability in the ARJ archive parsing module in ClamAV 0.102.2 that could cause a Denial-of-Service (DoS) condition. Improper bounds checking of an unsigned variable results in an out-of-bounds read which causes a crash. * CVE-2020-3341: Fix a vulnerability in the PDF parsing module in ClamAV 0.101 - 0.102.2 that could cause a Denial-of-Service (DoS) condition. Improper size checking of a buffer used to initialize AES decryption routines results in an out-of-bounds read which may cause a crash. * Fix "Attempt to allocate 0 bytes" error when parsing some PDF documents. * Fix a couple of minor memory leaks. * Updated libclamunrar to UnRAR 5.9.2.- Drop python build dependency as it is not needed- update to 0.102.2 * CVE-2020-3123: A denial-of-service (DoS) condition may occur when using the optional credit card data-loss-prevention (DLP) feature. Improper bounds checking of an unsigned variable resulted in an out-of-bounds read, which causes a crash. * Significantly improved the scan speed of PDF files on Windows. * Re-applied a fix to alleviate file access issues when scanning RAR files in downstream projects that use libclamav where the scanning engine is operating in a low-privilege process. This bug was originally fixed in 0.101.2 and the fix was mistakenly omitted from 0.102.0. * Fixed an issue where freshclam failed to update if the database version downloaded is one version older than advertised. This situation may occur after a new database version is published. The issue affected users downloading the whole CVD database file. * Changed the default freshclam ReceiveTimeout setting to 0 (infinite). The ReceiveTimeout had caused needless database update failures for users with slower internet connections. * Correctly display the number of kilobytes (KiB) in progress bar and reduced the size of the progress bar to accommodate 80-character width terminals. * Fixed an issue where running freshclam manually causes a daemonized freshclam process to fail when it updates because the manual instance deletes the temporary download directory. The freshclam temporary files will now download to a unique directory created at the time of an update instead of using a hardcoded directory created/destroyed at the program start/exit. * Fix for freshclam's OnOutdatedExecute config option. * Fixes a memory leak in the error condition handling for the email parser. * Improved bound checking and error handling in ARJ archive parser. * Improved error handling in PDF parser. * Fix for memory leak in byte-compare signature handler.- The freshclam.service should not be started before the network is online (it checks for updates immediately upon service start)- BuildRequire pkgconfig(libsystemd) instead of systemd-devel: Allow OBS to shortcut through the -mini flavors.- update to 0.102.1 * CVE-2019-15961, bsc#1157763: A Denial-of-Service (DoS) vulnerability may occur when scanning a specially crafted email file as a result of excessively long scan times. The issue is resolved by implementing several maximums in parsing MIME messages and by optimizing use of memory allocation. * Build system fixes to build clamav-milter, to correctly link with libxml2 when detected, and to correctly detect fanotify for on-access scanning feature support. * Signature load time is significantly reduced by changing to a more efficient algorithm for loading signature patterns and allocating the AC trie. Patch courtesy of Alberto Wu. * Introduced a new configure option to statically link libjson-c with libclamav. Static linking with libjson is highly recommended to prevent crashes in applications that use libclamav alongside another JSON parsing library. * Null-dereference fix in email parser when using the - -gen-json metadata option. * Fixes for Authenticode parsing and certificate signature (.crb database) bugs. - dropped clamav-fix_building_milter.patch (upstreamed)- update to 0.102.0 * The On-Access Scanning feature has been migrated out of clamd and into a brand new utility named clamonacc. This utility is similar to clamdscan and clamav-milter in that it acts as a client to clamd. This separation from clamd means that clamd no longer needs to run with root privileges while scanning potentially malicious files. Instead, clamd may drop privileges to run under an account that does not have super-user. In addition to improving the security posture of running clamd with On-Access enabled, this update fixed a few outstanding defects: - On-Access scanning for created and moved files (Extra-Scanning) is fixed. - VirusEvent for On-Access scans is fixed. - With clamonacc, it is now possible to copy, move, or remove a file if the scan triggered an alert, just like with clamdscan. * The freshclam database update utility has undergone a significant update. This includes: - Added support for HTTPS. - Support for database mirrors hosted on ports other than 80. - Removal of the mirror management feature (mirrors.dat). - An all new libfreshclam library API. - created new subpackage libfreshclam2 - dropped clamav-max_patch.patch (upstreamed) - added clamav-fix_building_milter.patch to fix build of milter- bsc#1151839: Increase the startup timeout of clamd to 5 minutes to cater for the grown virus database as a workaround until clamd has learned to talk to systemd to extend the timeout as long as needed.- update to 0.101.4: * CVE-2019-12900: An out of bounds write in the NSIS bzip2 (boo#1149458) * CVE-2019-12625: Introduce a configurable time limit to mitigate zip bomb vulnerability completely. Default is 2 minutes, configurable useing the clamscan --max-scantime and for clamd using the MaxScanTime config option (boo#1144504)- Update to version 0.101.3: * bsc#1144504: ZIP bomb causes extreme CPU spikes- Update to version 0.101.2 (bsc#1130721) * CVE-2019-1787: An out-of-bounds heap read condition may occur when scanning PDF documents. The defect is a failure to correctly keep track of the number of bytes remaining in a buffer when indexing file data. * CVE-2019-1789: An out-of-bounds heap read condition may occur when scanning PE files (i.e. Windows EXE and DLL files) that have been packed using Aspack as a result of inadequate bound-checking. * CVE-2019-1788: An out-of-bounds heap write condition may occur when scanning OLE2 files such as Microsoft Office 97-2003 documents. The invalid write happens when an invalid pointer is mistakenly used to initialize a 32bit integer to zero. This is likely to crash the application. * CVE-2019-1786: An out-of-bounds heap read condition may occur when scanning malformed PDF documents as a result of improper bounds-checking. * CVE-2019-1785: A path-traversal write condition may occur as a result of improper input validation when scanning RAR archives. * CVE-2019-1798: A use-after-free condition may occur as a result of improper error handling when scanning nested RAR archives. - added clamav-max_patch.patch to fix build - dropped clamav-freshclam-exit.patch- Update to version 0.101.1: * Add missing headers to fix build of packages against libclamav. - Add missing include for str.h to libclamav/others_common.c (clamav-str-h.patch)- Update to version 0.100.2: * bsc#1110723, CVE-2018-15378: Vulnerability in ClamAV's MEW unpacking feature that could allow an unauthenticated, remote attacker to cause a denial of service (DoS) condition on an affected device. * bsc#1103040, CVE-2018-14680, CVE-2018-14681, CVE-2018-14682: more fixes for embedded libmspack. * Make freshclam more robust against lagging signature mirrors. * On-Access "Extra Scanning", an opt-in minor feature of OnAccess scanning on Linux systems, has been disabled due to a known issue with resource cleanup OnAccessExtraScanning will be re-enabled in a future release when the issue is resolved. In the mean-time, users who enabled the feature in clamd.conf will see a warning informing them that the feature is not active. For details, see: https://bugzilla.clamav.net/show_bug.cgi?id=12048 - Restore exit code compatibility of freshclam with versions before 0.100.0 when the virus database is already up to date (bsc#1104457, clamav-freshclam-exit.patch).- bsc#1101654: Disable YARA support for licensing reasons (clamav-disable-yara.patch). - Do not ignore errors from useradd et al. - Unclutter the spec file.- Update dendencies (pcre2, libjson-c and systemd) - Modernise spec file with spec-cleaner- fix library-without-ldconfig warnings on libclammspack- Update to version 0.100.1 * CVE-2018-0360: HWP integer overflow, infinite loop vulnerability (bsc#1101410) * CVE-2018-0361: PDF object length check, unreasonably long time to parse relatively small file (bsc#1101412) * Buffer over-read in unRAR code due to missing max value checks in table initialization * Libmspack heap buffer over-read in CHM parser * PDF parser bugs * Add HTTPS support for clamsubmit * Fix for DNS resolution for users on IPv4-only machines where IPv6 is not available or is link-local only- Update to version 0.100.0 (bsc#1089502): * Add interfaces to the Prelude SIEM open source package for collecting ClamAV virus events. * Support libmspack internal code or as a shared object library. The internal library is the default and includes modifications to enable parsing of CAB files that do not entirely adhere to the CAB file format. * Link with OpenSSL 1.1.0. * Deprecate of the AllowSupplementaryGroups parameter statement in clamd, clamav-milter, and freshclam. Use of supplementary is now in effect by default. * Deprecate internal LLVM code support. * Compute and check PE import table hash (a.k.a. "imphash") signatures. * Support file property collection and analysis for MHTML files. * Raw scanning of PostScript files. * Fix clamsubmit to use the new virus and false positive submission web interface. * Optionally, flag files with the virus "Heuristic.Limits.Exceeded" when size limitations are exceeded. * Improved decoders for PDF files. * Reduced number of compile time warnings. * Improved support for C++11. * Improved detection of system installed libraries. * Fixes to ClamAV's Container system and the introduction of Intermediates for more descriptive signatures. * Improvements to clamd's On-Access scanning capabilities for Linux. * Obsoletes clamav-fix_newer_zlib.patch - Update key ring and add signature file. - Turn off LLVM for now, because the bundled copy is deprecated, the versions we have are too new and the performance gain over the byte code interpreter are negligable, according to upstream. - Move pkgconfig stuff from main to devel package. - Re-introduce removed options as deprecated, so that clamd and freshclam don't exit on startup with an old config file (clamav-obsolete-config.patch). - Put libclammspack0 into its own subpackage to follow the letter of the shlib packaging policy, even though it really makes no sense here.- Update to security release 0.99.4 (bsc#1083915): * CVE-2012-6706 * CVE-2017-6419 * CVE-2017-11423 * CVE-2018-1000085 (bsc#1082858) * CVE-2018-0202 - Obsolete patches: * clamav-CVE-2012-6706.patch * clamav-gcc47.patch- bsc#1045490, CVE-2012-6706: VMSF_DELTA filter in libclamunrar allows arbitrary memory write (clamav-CVE-2012-6706.patch). - Buildrequire curl-devel to enable clamsubmit.- bsc=983938 `After=syslog.target` left-overs in several unit files- Update to security release 0.99.3 (bsc#1077732) * CVE-2017-12376 (ClamAV Buffer Overflow in handle_pdfname Vulnerability) * CVE-2017-12377 (ClamAV Mew Packet Heap Overflow Vulnerability) * CVE-2017-12379 (ClamAV Buffer Overflow in messageAddArgument Vulnerability) - these vulnerabilities could have allowed an unauthenticated, remote attacker to cause a denial of service (DoS) condition or potentially execute arbitrary code on an affected device. * CVE-2017-12374 (ClamAV use-after-free Vulnerabilities) * CVE-2017-12375 (ClamAV Buffer Overflow Vulnerability) * CVE-2017-12378 (ClamAV Buffer Over Read Vulnerability) * CVE-2017-12380 (ClamAV Null Dereference Vulnerability) - these vulnerabilities could have allowed an unauthenticated, remote attacker to cause a denial of service (DoS) condition on an affected device. * CVE-2017-6420 (bsc#1052448) - this vulnerability allowed remote attackers to cause a denial of service (use-after-free) via a crafted PE file with WWPack compression. * CVE-2017-6419 (bsc#1052449) - ClamAV allowed remote attackers to cause a denial of service (heap-based buffer overflow and application crash) or possibly have unspecified other impact via a crafted CHM file. * CVE-2017-11423 (bsc#1049423) - The cabd_read_string function in mspack/cabd.c in libmspack 0.5alpha allowed remote attackers to cause a denial of service (stack-based buffer over-read and application crash) via a crafted CAB file. * CVE-2017-6418 (bsc#1052466) - ClamAV 0.99.2 allowed remote attackers to cause a denial of service (out-of-bounds read) via a crafted e-mail message. - drop clamav-0.99.2-openssl-1.1.patch (upstream)- clamav-0.99.2-openssl-1.1.patch: fixed build against openssl 1.1- Implement shared library guideline.- Add clamav-fix_newer_zlib.patch from ubuntu packages to fix build with zlib 1.2.11 (boo#1041201)- pass --disable-zlib-vcheck to fix build in factory- provide and obsolete clamav-nodb to trigger it's removal in Leap bsc#1040662- Add enable-timestamps option to disable time dependent macros if passed to configure. (bsc#1001154, clamav-disable-timestamps.patch)- boo#991812: Remove obsolete dependency on latex2html-pngicons.- Trim useless words from description and fix spellos. Test for user/group existence before adding and always show errors when they occur.- Added BuildRequires systemd-rpm-macros - Added %ghost entry for /run/clamav - Use /run instead of /var/run because it is a symlink nowadays (clamav-tmpfiles.conf)- Update to version 0.99.2 (bsc#978459) * 7z: fix for FolderStartPackStreamIndex array index heck * print all CDBNAME entries for a zip file when using the -z flag. * try to minimize the err cleanup path * clamunrar: notice if unpacking comment failed * signature manual update. * use temp var for realloc to prevent pointer loss. * fix debug VI hex truncation * freshclam: avoid random data in mirrors.dat. * libclamav: print raw certificate metadata * freshclam manager check return code of strdup. * additional suppress IP notification when using proxy * fix download and verification of *.cld through PrivateMirrors * suppress IP notification when using proxy * remove redundant mempool assignment * divide out dumpcerts output for better readability * fix dconf and option handling for nocert and dumpcert * patch by Jim Morris to increase clamd's soft file descriptor to its potential maximum on 64-bit systems * Move libfreshclam config to m4/reorganization. * adding libfreshclam * Add 'cdb' datafile to sigtools list of datafile types. * NULL pointer check. * malloc() NULL pointer check. * clamscan 'block-macros' option. * initialize cpio name buffer * initialize mspack decompression buffers * prevent memory allocations on used pointers (folder objects) * prevent memory allocations on used pointers (boolvectors) * initialize ARJ metadata structures * change cli_malloc with cli_calloc * check packSizes prior to dereference * fixed inconsistent folder state on failure * pre-check on (*unpackSizes) dereference * fix on pre-checks on dereferenced array * pre-checks on dereferenced array size values (not =0) * adding sanity checks to 7z header parsing * fixed mew source read issue * documentation update on targets * filetype consistency * move llvm option flag handling to new m4 file * hwp5.x: fix for streams without names - bsc#958451: Remove updateclamconf, because it breaks configurations that have multiple occurances of the same keyword. Henceforth the configuration files have to be merged manually, if a ClamAV update adds or removs options.- Change default C++ std to -std=gnu++98.- Update to version 0.99.1 * hwp5.x: fix for streams without names * libclamav: yara: avoid unaliged access to 64bit variable * patch by Mark Allan to add show-progress option to freshclam. * added 'CustomXML' as trigger for likely OOXML * ClamAV 0.99.1 beta1 release. * add scanning options for scanning xml-based documents (MSXML, OOXML, HWPML) and HWP3 * add dconfs for XDP, MBR, GPT, APM, OOXML, MSXML, and HWP formats * hwp: scan decompressed data on limits exceeded * Fix for signature name length<3 in .ign & .ign2 CVD files. * Change RTF file magic from '{\rtf' to '{\rt' * zeroing out buffer at allocation to avoid writing uninitialized bytes to a file * adding check for compressed input stream * clean up and boost accuracy to detecting OOXML documents * Fix crash when using pcre statistics due to inconsistent memory management function calls * adding check to verify a valid number of rounds for rijndael aes encryption/decryption * fixing edge case revealed by unit testing * let html be scanned raw when --scan-html=no is in effect. * fix crash due to memory overlay with crafted 7z files. * fixing off by one OOB write in htmlnorm * fixing autoit OOB bufferread * sigtool: adding support for decoding cdb sigs * fix embedded http links. * fix regression crash on sid 1005597703 due to uninitialzed (i.e., garbage initialized) structure. * corrects mso stream prefix value for big endian processors. * ooxml_hwp: add support for filetyping and preclassification * hwpole2: new filetype and handler for hwp embedded ole2 files * fixing possible oob dereference when parsing mbox files * adding explicit wwunpack oob checks * fixing edge case where a null terminator was unintentionally written into an adjacent buffer. * hwpml: use msxml_parser callback scanner for binary data * msxml_parser: add callback-based scanning mechanism * HWPML: added hwpml_keys for hwpml parsing * add HMPML filetype, tab fixes in filetype.c * Hwp3.x: inflate compressed segment and offset tracking * Hwp3.x file header parsing and preclass * pcre: fixed minimum pcre version check * fix detection of libcheck without pkg-config file * add HWP5 filetype tracking to preclassification * add HWP 3.x internal filetypes * add hwp5 contents to preclass set * proper identification of HWP file format * strengthen file typing for OOXML. * normalization of whitelist signatures * github issue #9 - wrong length & offset.- now can handle regexp using signatures using pcre bsc#960237- Version 0.99 fixes bsc#957728.- Update to version 0.99 * Processing of YARA rules(some limitations- see signatures.pdf). * Support in ClamAV logical signatures for many of the features added for YARA, such as Perl Compatible Regular Expressions, alternate strings, and YARA string attributes. See signatures.pdf for full details. * New and improved on-access scanning for Linux. See the recent blog post and clamdoc.pdf for details on the new on-access capabilities. * A new ClamAV API callback function that is invoked when a virus is found. This is intended primarily for applications running in all-match mode. Any applications using all-match mode must use the new callback function to record and report detected viruses. * Configurable default password list to attempt zip file decryption. * TIFF file support. * Upgrade Windows pthread library to 2.9.1. * A new signature target type for designating signatures to run against files with unknown file types. * Improved fidelity of the "data loss prevention" heuristic algorithm. Code supplied by Bill Parker. * Support for LZMA decompression within Adobe Flash files. * Support for MSO attachments within Microsoft Office 2003 XML files. * A new sigtool option(--ascii-normalize) allowing signature authors to more easily generate normalized versions of ascii files. * Windows installation directories changed from \Program Files\Sourcefire\ ClamAV to \Program Files\ClamAV or \Program Files\ClamAV-x64. - Refactor a little the specfile; remove some obsolete conditional macros, as clamav doesn't build for SLE11 anyway - Remove clamav-sles9.patch; sles9 is not supported for a while- Make clamd and clamav-milter services depend on freshclam as they need it- Version 0.98.7 fixes several security issues (bsc#929192) and other bug fixes/improvements: * Fix crash in upx decoder with crafted file. Discovered and patch supplied by Sebastian Andrzej Siewior. CVE-2015-2170. * Fix infinite loop condition on crafted y0da cryptor file. Identified and patch suggested by Sebastian Andrzej Siewior. CVE-2015-2221. * Fix crash on crafted petite packed file. Reported and patch supplied by Sebastian Andrzej Siewior. CVE-2015-2222. * Fix an infinite loop condition on a crafted "xz" archive file. This was reported by Dimitri Kirchner and Goulven Guiheux. CVE-2015-2668. * Apply upstream patch for possible heap overflow in Henry Spencer's regex library. CVE-2015-2305. * Fix false negatives on files within iso9660 containers. This issue was reported by Minzhuan Gong. * Fix a couple crashes on crafted upack packed file. Identified and patches supplied by Sebastian Andrzej Siewior. * Fix a crash during algorithmic detection on crafted PE file. Identified and patch supplied by Sebastian Andrzej Siewior. * Fix compilation error after ./configure --disable-pthreads. Reported and fix suggested by John E. Krokes. * Fix segfault scanning certain HTML files. Reported with sample by Kai Risku. * Improve detections within xar/pkg files. * Improvements to PDF processing: decryption, escape sequence handling, and file property collection. * Scanning/analysis of additional Microsoft Office 2003 XML format.- Version 0.98.6 fixes several security issues: * bsc#916217, CVE-2015-1461: Remote attackers can have unspecified impact via Yoda's crypter or mew packer files. * bsc#916214, CVE-2015-1462: Unspecified impact via acrafted upx packer file. * bsc#916215, CVE-2015-1463: Remote attackers can cause a denial of service via a crafted petite packer file. * bsc#915512, CVE-2014-9328: heap out of bounds condition with crafted upack packer files. - Obsoletes clamav-soname.patch- Don't need sendmail for building clamav-milter anymore, sendmail-devel is enough (bnc#915414).- bnc#914505: Config file merging and temp file creation got moved to %pre by mistake. Put them back to %post. - Restore the updateclamconf script (bnc#908731). - Fix a step backwards in the soname version from 0.98.4 to 0.98.5 (https://bugzilla.clamav.net/show_bug.cgi?id=11193, clamav-soname.patch).- build with PIE- Version 0.98.5: * Support for the XDP file format and extracting, decoding, and scanning PDF files within XDP files. * Addition of shared library support for LLVM versions 3.1 - 3.5 for the purpose of just-in-time(JIT) compilation of ClamAV bytecode signatures. * Enhancements to the clambc command line utility to assist ClamAV bytecode signature authors by providing introspection into compiled bytecode programs. * Resolution of many of the warning messages from ClamAV compilation. * Improved detection of malicious PE files. * Security fix for ClamAV crash when using 'clamscan -a'. * Security fix for ClamAV crash when scanning maliciously crafted yoda's crypter files (bnc#906077, CVE-2013-6497). * ClamAV 0.98.5 now works with OpenSSL in FIPS compliant mode (bnc#904207). * Fix server socket setup code in clamd (bnc#903489). - Change updateclamconf to prefer the state of the old config file even for commented-out options (bnc#903719).- fix bashism in pre script/sbin/ldconfig/sbin/ldconfigxinomavro 16766199930.103.8-150000.3.44.10.103.8-150000.3.44.1libfreshclam.so.2libfreshclam.so.2.0.1/usr/lib64/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:27836/SUSE_SLE-15_Update/9cc1c40a7126795d8b7def788cc52d82-clamav.SUSE_SLE-15_Updatecpioxz5ppc64le-suse-linuxELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=213532f0843931e6b696a8a7b6456436ebfcc1b9, strippedPPPRRR R RRRRRRRR RRRR R R,8n; 8Vutf-80a29fb6257c49a100076f3861211b198d5d20123c81485406a640015225fcb1e?7zXZ !t/K\] cr$x#G[j-;6L?s|#'zG08}1x6FpV8>K79NFcw(/|5ǁW$9l!@d7~jBDQzmU(lNډR^> IAhvW/5`QY,0?nb_ | uپ> dfwTf#˂L|}vh6غfC}sr*ਊkIq`1@NLN!|}2J}%>r@mc*UYdWD77AԪ- قybT0/e`6#o5 Nmg sP.XdN"B2ɟ2zv<<6E7N9c3 3>C[51v~Ѧ/}ɠ!*]q.BTƯ\]A\"HBA3cGvLZ\5R֌mdwU$f,paeڥI}D_= +&4FA52 %&VF#XSQPdٲh>lQᩧUC.3#(XSvW.7#6is|l;tg7@Hڝa-`B+:@XDa U}Čc/if不 OYݵ xq 6]2nxYW 9qcs[8J`S4X9RW)08,>9P͊ `0@B0Bٿ]# ЇK>k&fIgQs^w6~/e! ` F>?]) yD5^ Tظ!U愘1!5)xUV 9?#=Ǒ9oʾ ')IReـJ}_689c 9^yvZGki~@>OdL#롼IrH$mNy?ef7JfGyYRY@V]YʓpT:ZJ=F a&e(oӏ.YBk=Jk+,6ŒZuƺ:t,X?ֿ8kV\!ۏ@mgf=Qɻ(*it]S4%&Qa+ @5[hW ۙҴu*\6*HE;%E@Y@t&Od˩RmTe>zgqS*p|d싴~d|&|0H/?J֚o@ & qG* -leB_W3LcgO.P{&:Э|"P>2p餧 .@:e ֆ ib˼ܕw ~&#HV0yV(ٸٳeVCā6b0<k*A* f#!p1 N3Cfv>p^jY'2 gB9ҕ8WKԽ; FV^{WO¬3PIKݪnPQҀ'-`;Ce4AǬV9fv Ffؽ]9+Ѿٗ"44wz{~*m6{E5D0dh`!M{^RAep?wYѦ=<ؗQl6U0i7s/7>p]يOeYڦqv @V!1=eE-TDLm#Ł*2B~iBb̓߿_'{CfQlb"ՕFO6./ɇ2}"-*%ڻF0$HgD= .> 5Q?P%U| -AW L]ɢ<oaʼn` juz"]@z :[r̯RSiq%I'nn&7͟AIN VGi6tYyd#U|mBji8? )v1IVjq'ˋ`75tJBgiׁsY5Y0,n߄AV=Dufg?Ș_%ʀ'+;bRp`eln‹l{#VcV,~t'k)ķEu 7 L7.p/0kU΍P^;h\!k}5R\=K|sz% D:ﳼX=N{M?NB{YoPLߟliga5qT'q_3 nVa bCGiCؽ5d+u1Nz A8|~j0f~#0 VE}p@!Kܩ2$k 6qS9zN"m5;g6*ɕV+ZX!2Y\ ‡ǾV*d('y`f-΢"ƗSjE)}hHQ `UOXNߣ€.>A0jlQN.@slPc=ӓjl1 dŏή SոKt'G ݋ϔ91ߪs%m lHk̆Ffr|AT?OiKhz _Ej us2 _F^VM(nԕT\g|ݸ|"~¾5r GD7oD#&Γ.iͮ(SFVfp2 }j< I( _o&h?o?x]Z!&v %jҴ9zާ9ߖ߯$ Lc#JI䙖9 z-CgN津GڵE>u/8hQ+ϡ/<%AeH& 3h-G`},2a)rν6*]y8C?0)sc=9<}$`99;1w;e,HA(!MV/Qzd6_`E'LR)ZFк7kt L'> vJDhڱsU9pJk3F5q?S{L}x+c$:l+1(=0"fZkD4QX?X5[3),g^B/[^Az%x`?曡: k\z(b{/xLIsd0=RkO-&`Fɡ8iy?k-2kr7F2;Ȟrv gS6լ#5h6LXZ,CYkdCupL/3':7!;%06+qeszä>bAⷊ| !ƤC޿xxYtR` ;Q2?Q.4$SFqUp&|S4K #5y&79l.ddb0sG\7›Ht%pdѺOܩFWj=s@/ Hpg),5-]¡r] ͭ ]/6t^:4ʭ]p5| sΞA*%:{C~Y,ap?\4AMCN_H . H}9aM.Oە%cqi?|YrWēewJ}o3u,+ku(b#vm 5KQf5-ӸГ;WLNF%̴x>Xz7yחHu_6v1qOڮ4 >y2J7k[=qcNU* ᳛1? -7ͬQ4tK#0aM3˙>y3}=1ޏ(t4cY]0<9n6zs\~#U;5 70g&#DLE RF ,c' 6M۰oҴH%UF㉜A'pbÓ`5 x|2_n)v nw r]'AQ8``9UsQ;=ndٵYPk#NVE&Q?B#lAA072eE98(Y㶐_}w%Hϲ6G{MkEqU Qtq;2#LW}=Ik~h7})g`vd2RsXԔF;`sITUYPL @$t@ްdi^iOYA"PzAl`l c@׆.87ٞ[zc=Ǎfd즂Rica rRM$?pǹ׸MJ%_sI0(#{;\x *W-6 ;6KWS= ^]DU)Sw9%,[;?&t2G`ppuz_ %7{ߢc6q-a:uc^&LtIԜR{{G&jT}{j m+?} $krkP zs+ O_hLV8/voY= L Dlzce`&XrKfg&&99qFtJBv])Ka۾m.^osPl,m2T$u자a ء1wdqQ>-PHt寜odaz% Moe HB16.o9g)>0R;>~xYSlF!wE]ĨT 1= B rdx L 7y|gMX;]D<{ xY'%,!MLR,T+`J1 $z[!u8y2v&1{#%%-#w S/(+k sk^Ʈ6ʠXVR8ڏsw)?gwx‘)g^P1v[jfN3#7]N58C)VȯWbL}m{`e'?mqԗoGpI,AY~NK?W5ç]\ٺ bPƩH+6߃VKҹiWn9_vg-'Gy:ͤlzrͽEʋ7GX:p68@ JA7ny6?2 $YK@y}+uVvn[hEptop%}03ʔnikjh[_CDoD@K7NЬv`s7|Pb)dcF.xfgkѥ+@kK9H^[tKRŌ49llV~pכ5G38Ԓ븰 ,6;_Ua[OqV-#)b>V씑=OmԀzO{:)rԼ m37QԿwv}y%ZjrhimVH }y4W+] ӓEjmH<\כ%`?Z\:LUWr q/PF`k.Ƴ/MbM9>H0x9iVJ˵k*rM$\ߪNxpF"5œ TCҝ^q v90Fo/:T#rIJ_3s =/lܠyuBf^M\`~gZT څ恔j"ݙ{˕m]g'ʝba_[UM.*7 BȘkr1^ǷrE>km3ţ%߶6zL ^OiFẝYYe4Due2[Ϸt+")-^G,ugOV$ӁH;wHt}z>Qcpgi <{m'TE\]bElUI/nͺ@F|yIaۡ[~u7R_$Ke`A0L\xNb'y$;-9n*k]ndE}-V ي8ArqN$ր4dzQ{cyu:4xy^UZUn)oЪSu%YJDCBU`a/=M0u< |hZ(Hٕ,/?j~ Q!gVԆyM1_.L? tVKgU~Om+mj wl!2"f/vV qW$qO1 2E;73f'k*@[D4@m*ax3pײpYǽ!/F Ҷ I[u mipE>yg+UaBY VT tci=M8%;_Oڢ\֒p?=̏x"-O׺Њ[e,+_DR+jl+9<ZjQMƙ31]8oS̍>{'jz4-_vyO7 vn{leP ʵEu=Te¸nHћReqԘ iAD:whcv xCGK.@ۧmAׁE8T>` ԏ1IaՂ~3q־D I06Fp07w])-U"\c^1'J)\̕~Ug`$XB% OzFKQGiZ;$+CuFuNpGHa|$nҡdmUe~$h_{SUP'=ChV{AaYwbmOo O`]:o00og8z,i < a3XM7jH8(m᭡'.gH"4x4D@8 ҕT+'k[zX_f/ ޵7dx/ e ;Pl/m?Lg׾0ί! rcJ(hBjՃgg[Q%V+7ִ4 +X|MJmV2ΏNS7CiDBzz@A x=1݂iN:ip<ɷƷ`LOWo;;F(@!y[g4&30; L<׵~ޫ2 uj>"Ȑ;D;nԤ̭{p 72n,9CVvkC *!OrG޴$N[%1%#>G!*))h 2d?˪{bxmqͲ+MBZX/,jQύуrN`:B&]RBX"jNKZ*u<@ Dݖ-ML׮yǓ+$Z"6~A c")N/Ъ/Ip=@ ?FB,;ed^&#MTUl=Y+`=L_˚BbuP7V@>J&M-_k{){pWUo1a..b)ibyxw]EU/P=Ykļɡ}K-̈Cy}[7–D|.S[tn7Kg+RԐ'`<ٺt>u;3- 8 !=fbDPB>X !"47(:{2G(h!A EětѕW ~ wX@]K q;;AF48 KEaX]̩edU3 #Sˑ zc\F3^Z(徘aMl۹ m=NlA϶h7'7ে!*"K[Ckۺ^dZk+뵀串3r3iI:jvP }CcX{˅ ehQs/ N6$-1e= =:ЅlyWIujڝ^W/jsi]klxx(,|bPxd$<$ ay\PRCQU}J6K){1_,ĝm/% F87OLP _=`"t||;lP_~ZiE)cd@ot낏;%FMg+3;ŁHeCٻ\55Kwfo'ӭ?z!( 'buKŻb`+`p<ߖ8<ʉUg]-'.b`Axpg>D5NgJl͉TQϛlj67 #jp(TÍŗ[זIX3=V؃>YJ.ߐDOLjd͔ krysJؿrc(_>9LN Eݲ9=Fp[Wv -6l&v0jr%z.F u=PLjɫT"@H20c4-S``?fcXE >xrUNz$Vn2A4 01gAvTKFGÎ&v䆀*q;>gNF-NTcN6!nOF cԼآ0 0qypIʖ0TV*VjKO󕦐HӪZFԿ i^di$TP8aōvH{gn Ba"n^4j652W[%D wa.]e<""ICVIKsm3zB;:G!{cw<3?X_LbI Ʃ9&ۤʟdZUÔ6]k@|=$?/i[4F%VnQFJR h&K\!@ktYI>9Djo)uirr`>PcB4C P /Pc96aBp:AK]ȋeqXGayօY0n L7k|;\K}N6[>yl .Ut+"HNI na̎Icu'jaMB&߫[ߕkU]5$vfFJګFbA' @SQ\SI5 h'!*e3{u悃 %^sD $ʃU>B1Ȕ\UXv.v4D鼣@t&Bm+w8LHF!Q&NGШCӱh .h'|fTU g#.}SƿkLX~N M]ZXrb`(ǘYSuCK6m-R!{Ly)5`Ibm³ONvyтmm _9pª6y=|V69WQ-RA(}xq\V9xAyC@_upzШՙXS. E2eL)*'4bYE2N׮i9HuwrG,8w"Bfl d\p'ZvCl,4t]p<(75΅M!X1FK: M-Slafr)_*EV ``]BVi`n Tf(By3=ig#g2hT2,' `b Jwךa8W6|5e@ l&J;)ܯ4RFsG W,U#nld&t(BE届D31 Zc{D&rۖu`Uگ'?˄?l'N\:/sJ)hŜ*pLǾ󱡥$ ĮŠ j%f07{lQtǜmUm^w5Ꮶ11 :;%6?xhbUt _p-ԣ:TH$%H׾Cֆ'^f;̵[O kQ-1pBڌ Oa^L6YZQU=_n/@\oU=9.t|t: Q'ДBbHw /=14=E: ? _rS,ڜ }ܷX^\IYn9rqNV15C}/g:MQ1.#lTtb^uݹ04+&%H#;@7UL+C+Dn g/'t?*ij]k!LECc\Ytl#%)9%#DQ^`<pjd:9ڟfΔ1Vv13Xco{)vpv4s9>7Ydmgseoq2ѷdclr/`$=5nT0& ek4(1D) JxfIqho W.gKb'tuÛ}E c,OGX!O-^\Iӌ)Q@2&c}!ѵR@c;PB&g5.q>Kw~dڴi\~X>uuL#4VܽG#ؠ@OEg\|]L=mssU] i0pG MEd)f}zFk./̞-%4F-_"X &}DK=w>\ ;LpdE6{fi ?OK[3MD\T"9</g4 2hRXqlwu)4z5b#2H}urʃrۭVsu]V Ri)ÀOTnOŦSCvwW^Q҂PQ!] 4'fPlj;` =-՛wifB f!&A>tʽx _\:ji0h^ ךӀIז 65}i;KF,-dIv lw8r,p)$p؏Q4;Q̂?DؓICfcIܲϕ$o@`w5 +TիKנm[є,<ȫSeCǎ骒^R|@:+u  ƚCqc5X(.6 ǸRB8- F? .faF̆ʌ'+=4G&HgVB9@ [)Yuhla[ Y90;zl]2#A"ɲB$v}};? G}x:!?OYo]x,R`eҐcOj˺0D:!B:9z}F\q,|'f*l[6Bgy;Ira2=QʔC\Tiڿ&a1!> fgQ $QRcʇ55nMzEl=cnKwl[ ę33SSpc+"yC.ё{B-|Jo8D^@Xbn&b/셞`ǒNVY:S6^T-i@c[Lfl3$U[jBRƋ>"6vKJLM My-w y?hĊT{ND23YՙJbou vp >?Du0#\Ydu}UwsŲ _c<1Ä JNOY`,mbȑ|Bnd]Bh,M3 _bUcCFY oHۛL,3n & ۓ].2M ^+=B4 e3my;te=2, S)E ?] f1#\H@Ei7#FKK ջet+,l~7[uηs 藮k`#ڐvuu\.?kZt;relS}ONᙠ4px~'m'8aZa<[#p{R˷f7[k`wJ[ P%c!{7"p\Nۅ:Pg:z0Ig\Kz KcT}I#O#cQOQ#9H/6L"[`ؽEE #kzb,6E1ɧ譜Fu<^_NJ yۊ)>Y۾#/塚&FI.8AnGd)toD+"suތlba˽9fPA(Oin(`xtxWbn_S >}PqCaVv5&`b18-W'N'^E**=iãdF ˛Es;SHS.PZe/ ҰolӔAYWou%\1/mϦK{Gx^Tj.[RjplI@_+ 5/z]>!LW^"Xq)aET 8T t뀥> z8>;_ .1nP?BFFY^@5E˩s])ּ}2#NQ|@XK<Ì{~0Xdɗ4aowy4}#Mu^W4~űk+ҰQW<)%i0F҃R8ۇ%rhyٌ5V_xmO0Nވkns҄f|)t/ng3 *Oad``7=jXޖU$JƮi 4u3dp ]|uZ7\9k iCQ8dvRҌ3z#fiYxJ?۶ KjJdiF i$|&D ̖΃ )r`qCrLP}P3ȖGa8_iYsX[h?8tO+Sd{Ӡ@0{^ "qkP<'Ӌ$i`zIJ2kE=ͫyK('HөH EޟTYGCn2#nO]$Gfd'mir2]C[!耬k1npDq-b& mȚϧ @ |ga?[t?NSpMXAcN@2EKGnKG"l}.–Gr!@+".W:z`vhM|);ؘПOskђA䇟ɯ;L٩;-l>Sj@c񓝟TE"xրOpKlGH_P-uy#pT]{0VMP QQ֍Yh37g<¸و:B]z`;fkiKǃxNpa8c/$w6%S\!BvО+1L9YwLEjڟf-(J>Q֍]-A̗-"Q{5*rSC8}\JFv"竼O<`:aQoJx.h#[Eʩ-ޝ kχ`cai:PlSvP5Pyf2f+/mW;$hi"N~et!jնPC ]|z^ҵ@)8 ڰR6c!6\!=,b6 xnz{/ YmfiD>QHfi˖g{*4EmD b!vDӆ47 r_za6YZov{A!*mo-:t)S83{p^s8e +*;~˄]clϵ%$SLT?iMW~Ay EYt-,.ꪎߚr};y):\BPOR,rت0Y l*!'c#ڢi4c~n3 T5."-Ҫ $XԞޖ$̡[@ b-(@TMJln38C66f"h֨?H;}Wzt,1@Npxɰs:BƬ9pdMi}] ~/Qa+%R%J)H7GP^wtPF1dU/[O'e9 vܩQ7Pj)L>xc%0|5K+/>Za)R+iP=d?XA}{]mnS/(#go-﹪ ,N%,F&TLwlAf묗dKWN]a] XCs!$8Y5GK\~_[pHSJjҜe8:A: DRx0S,/73|l,tEPS$Z2l{I3%!ǟ(K?^b`rUR-QDL#Bj1"-C#Hm+ZWMn[-XuqJ@F_*K/rEglGO> d15 ~BՁu''wnjʢ4jPbOF`b](!g趷@x@hzX F!yhYRXg3 pxh&PFD 3rv'[y,ܸ|.\`B >sɦe \0Do+جc7ӄ ɚ;f./`cpU :0h 5++@ W@ANvkf@hG2TKЦHkZRpň"=z4Qd^|p'/܁jףgsfm4Le^i#+"2f< 0d\ h:ۥ$m xh$+PJ_Ƶ0,߰u& E*8T wuUԵ3 @cﯔ2B-/B+Ok_˓iD'\z5$jc\dxڠ@<1 Դ3 Yt8^O&_ޮD dNm Zddi' 㒲\)ȐcwIXRj߅SQ6NBk#[rBσր>[1G)jhyKwڦ֖T9L.gyEW*%r|gU;Ԇ[i@k5ϐdY~,mcnӶX](Q| _N{4ӞD7R$.63'_Lsx-Ky]D$:ّ^%V+ g%Οdº۩=B7tg/ʅM+hQ\x+AƭbT"tVW5z1;x>kwrtp:NzZQTb@۽v3m[w8X^5Z)m¡rS~o˙y1?sYTwAEu˂k$Ť읤y [XxgA2ˏ'ؽrC S<֯l9L´X/%w0)ѹ%,,Rk掲uk\`Cj9v0Og%_)WWw{mTB@[v! ta/yo7>B)A" 5s~&~&-;bi@te ޠ P.b2XǬ׏?~nvaڢy-rΝ)(d[Ӧ%@)r}vc&Lчz㹦tDܥ-ҩpOi刕" lQ;IeQxTԍv>#H:W v)iSD=ϼn )m#Oy 2L֘&a5c)͜PZe'!)As'tiz URO;-}z" ~`6fa8bw-0"9$D!ML u&P8o:MHزoPBAѡQu AnFRaoJ\qP(BDqMUr @$KDȊd$+*]bD!/ahYٳnsK ۂ_ŒuK *.8Y"]rKc]|CI~htck_Ө.Sp1%%0I2KH6_o>ahJrƷxB&25,|4i$Pvj2Guv!ܔ C?#LSac#c 1Q@jѦ)V(4o\ߔ`;z# <d lVpR2IaP8^ONISLQJ@sM^bq~WP ޷)ʢȤ̶1jXx{)tL/3N.iCTɭN9 *yt eA(Y㤄$5Pl\׹.k-|T.`gޒfMnakt4r#f~9"(` r|< jE+i|2/y@k7-#\:M} 9&+-s/\f^ov"-@%d֔V.~̋ Q[dv>PU̇ }e¯B9E'i[ 0@:Bo{~<5>%KABٌ9O$a@dam; o5U0ݭ՞:RsXueއEbI!A/6Qx\dIxIw_؈ʪܼҝL":ZearedΒ3-I k.#I{>WͶDD |1|J@] ӳ h+J'! ڷl%#f׆[@`lE ]ԴEL\)óӆDFIY2H'.޴8޸8s8YDܤu^@u5Ց$tS&&nLW@]8n/i+ @R'|@V(<dS-ȣb E!f6%C }H"L냬X4HΤE# q 6vx-֦FËBJi<=%u&WשB /YTNĚFiqފm_fѧ M"#9Q+I lbY:б FRxUNq.u'WރFSCwz!d:ٜVB]>l&@I~4 rIc 뽊oe_Id9J!5J}N6bqU[TO+?I3 O}|Ѡѳk.sھdB}/ESgĊݝj+;O-p,q7+Lg"Tն-h捳uw776E{a)O22OŲυt?[MxحdHyزl>rEUt~!}t>SqU6"R-G:P-Dʴ㎫ 9Z#nUkjGewOb} ב4>]kd y=Q|T cΤXGW r'g$8AG;$Hʢd՚ڙ! ~#jFlvu l,;sD JqSpӱ;;WUcV%U;N ] 71,ҶgujX<4LQXWoCH֙|ڒ8|1F,y rAQ`HkNFR\UF/,ncKaS_uILT1i$f9I'[G7FJfϒAfg/Ib2c' R=b>K琘e>블/ }X2iܺ˟g8sCkY(Sy2t+ƳS -26: H%OŌ/T*MCOqHd?F[0s]a (eVؤ؛7N~}E*z;<0U asN &|MDoS[8!.}{Z'.dcп6^ߕLcd]]_ik rXK >?.]=TA->pg'%p wjvZ::j ?9r-@|F_*K#{CEr_6= JqOG`$?/˔W-FXi5fOHMߢaSSc|gʓv@Ew$2mr9ŕک/d8Q sWtM/\FxP.xvQ#ܥ7x~? Ogm3!^wZ{cViy|l(w:@V_7pmIu͸NS1}0Z8 PK6do뚲Nj/¦KZGIbFf,ߤIaGbtR.~/S! SQR%2ͨCT;(. *^vr ک\Bz:fܝtaOsZ]&`KS/#`m*^RFdMs`',SǑ6nbJ=֟]؝]7)y@[߉S|C/53]&pOq3Rud{19N"mm\J V_:GHN#ˎMc> &,+C_N&&N2Vnvz p g_ps8QUu7 xϼQ0vfS?eoK@ ir\\cjyg;]45B뢞3.)$= wG|>E'?!sQ)91aBVd/:4U^0s"BJ:[GNGCP WkGeUiT "|iBؙ=ТJ0_\AMmg\O(ṷXsV hH(nIF}}lo~ZgF0%+mwB@Y ^p{E~̈́G}پ,Lc1@ƍeه0B)uQn$Z?B)* Nҧ_aOU"Gx?H2Ab`$Q CW  K24Bs&/arѮXN"NP c,VdzJ8<nT(x*`Q̭Jqh,ocnRC[NsB'$e,r"ʠ܏J_=>Ū=&6]wʖn9ViT7[ҾUPFΰƱ'4mgrB¢J30Bm^nd yfQ0k/!p%5$б#/݈fE'0;25HJJh2N"jΧչ΃~<٘w.TWlYaⓑ;\IKRV'WX_Yz[7.$whn!&qejqlDӌLtEI#VXj&áJdjsXm ǀh* .B%ѣqɨ0mÕq@ݜаp-@TJ2g 9)d kjf.Kj%]~qc;.NX=P|]#8Ǔ]#uA o/hRe^ue6l ;iA@DbPwkSvf q'ⅆjwh`A c(m("[SH]T"X IɬVcwxw3#aghV`P'UݲC㇧i`Ω$5^[zBN}^7ad-NԹ2T9[ezI(Z%3PktgPM3z'i^컧GgOץFrihS %h .'|%ci~k7/e,8Α]O?NJgi쩺qQ:Ij_p:f,zJW(S 4M`I M |gODfD<{lPֱ Տ'm&r<`^XulFA"͵򷩔8}V6z H̉^b\Ctڿl\Sm%Ui4V\e GԨ:-* t1Tv#ϊܤqP xz(gH,D'"f*F1Zlr[J"Xb,cf-_PT7wqhOpʫ՚A2`!vYƖG/+VnOa@}X2z^9Joӗk^*8sFK#0z~8iFsX8Ԋb<3grЦ.6-V;zϊ^ ZT'ߣ:pgqnoM(JZSFEKD s"%Q F;BsAm|s L~ۋamhS'85K3N~+4tiȼҖ7NQGtTedC i6}g );7L4HH$Y£qDc۪uۍVkO"ZXKs*̄+w(1%J੟J/X*+zYOگQPQg63-;qs2p}Iz}Ңn3SӭXUn#ESyzVbl<2F zEʈ\zѹ2B=O܏  Ʊ09EqWr>x$YL?hk[\N[E4yB<%9[d oAc'XI b ClGu)2S(lTr[I}*f#tB&̔x(d!%"o1F{ts[(9ԗY6A~{_Re&xMcp8Mm2F+DF)( .o>mO:n>N7SHh WlG/Ǎ@o.-x+/^=HNOIo<6MXk,S>hq Dmu]8: V?ip@\;)-8}-Q|8%{%[A|Thh+q/:+DІ uxjlj+6ȩT#8* >6ӯr7@TժY.=zCi0C|[*B+4r@#pH4ht`kQْ4rSi0n8;~8KLMr1+oeQ Y9@'lkn!ͱQSQ?ٺB# *AUGGuȥ>)}Pl8K"F\C4Ϳȇ0#'3P,`3=>257cfO(6Y>LKuG[[d+Ha6JW jSlZVtFqfxҔe[[pI,~+ j1RQNbwWO7WLxǯa_!/1n8UH)ApL+FSs9tzeM^aчG4?Ģe:}-'%4AčyQ gI_->8D(g[BcYXP7iCTdp%T9GhcVaՏ:Po&A}=9@Uu܂{ᘟH֊zH{Ѯ1kt)ǽqr.>Lfc\WPD5RSrx| ef F0+v`6ܞV y:BSxFt' ca+4!=BOUvDp &Q=Bl."8N/sTVh')aqv$0λN9 7Ȁ'= sob]KI!Od1}a(&] 6 ų0b=fF'w:H+vZ3>Ua^UY/z]:HvL,N2GW^+82:;$r ws% Z e0pxr0ڄiv!:\1Ϩ%\Ea̸F,y+o7`E q #d` 3meWЛfeWpWt{K } -s<;y @d㣤2ƥjbl6`X{)Gnw)'-6|)c_/RhG Gse9Ni^h~.SO߷\_ Vמs\d/N Z sȄ] E>4`x.(t|f,n}m9Ymcv#^sӱ>;0S: Om]$NF~l+$Vh+KJ\baG&B'[ F8( <͐0Y`cMU9o ƷKzn9/SmE,.UۓVçc2Mn\f2qFQBFS[ExV !g\j\e*'}ij cA(Đ_S֯`Pams֦19q`J8,64xhGti,Qxx/b&#yk.}*D ++R_۷)"ZŘz@yFÄ> ~=z;mHͳz! >dd}_ɭ;sq\ R'KTm+GEvmə|n.$ eZk|An| 3YurWSiKO}pz*jR,N܂:~×74lE/L ~]4])jՀ4LYC9 LIXa) x (0;Vr8f+/ÜCdvFK,^a مR(7ψWd>-'dLʱ0cw./ܾVVKµ2\a|9祿Q+8 ] xG5q{"{4TX}a=Nγ)`) w\QYp!\RU#6LZ|TXv/J+1$fA~;o'L\@%ċ8J\&fX3b6㍁H%8/5A>j>!o \^. "z `|do{F'+n$0֟QK5~Ց 8:ͯ< :] ,Rj͜3J+θtA[8$;ig/|_mprt6k,ZDlf{篧 ,cCn54ZoJ:a ˲j[E`#;rh8F>JMD mi4 l/!kf=HrPW&!DD0:>/10wx`ty)Ҥ,|bebႠyG{| 墜t^_(.23`n/XH%y]-_0,EQ2DjZ.$O.75f'\7"xjIC -7܈Z֍ic^䰿f?q+J@P04қcV. !JGމhvBgCsT?PGfIixME{0' ),t KR9BG8PKeuxV`. 3z6,hy'wB&ubtR`E"zKUL~F0@ !p̕_vR5HI37*uz(hY;aM>w>$_:~7aش8xa<1%B¬/=Oya6HKE#_<x/tȐl^))e4߳Xkz%\{03UZZPzZK'.?:=h9Êrш ,?pl^W<-(LLq6c;^q:8=ts)afuts73UaI 6[CxKyG$ `f_(]ڜ{*B5îQ c趹=ܯKQ|rA[D8v%g1\J8* t ^9RTq}mkF[ʿco ]@щ]k6x/FN=)R"2ԒiUPxUZl P3?q.N bc3+KW#YD i**wќ 6EPDT>/u|FZ4x)MYӇWP:[DƠ?Ii`GksP9>pC/m' j'b(pf KP˭gք/< 5&nQl6Zw,t[>dq x9\-R ^{$_OG*;paCk.Z뢢N444s _2MDK1ev7O02b&Ƭe*/7t @^R9zZA"h#SI6[]ewK*L&8ƿ؅.A/Ͽ0V bE(NOB}0b0N3֥ M.n#S8G uBXTdmեk>-# "uݺ0I4yE:SuO_)zRUL6ͳFj Q$|4S% q6**Oe&Wm˂텒iʖ|䊿g$ [@7^a]$K8m1 `϶CFeTߦ=g.X$L{@pvZ>|6[vҠ31QXJC ktlX!Wy_-Gmx=x_.I"r/#6ShS4$,_+Xن=Ji%^X?)V"I+'gNv`cB@Mj Xϥ:QѴ|t빗3r_. ɟRSP:R(Q?z%wq\k4Sv<,Ww6?n~ޔ y.ΗunR 0e(q4I(n39u{ʸV:_s&,XJ9:?Җ[Ć0v.G5 xT%=^K`ZgQ6>nnnAS/&cQyV[5SS2@c9vl?(ʹJ9 yG G@?ėhj@n*!pS>n^0bG|EI)%y.ڝU|1Y[M~jƿEѶMe_mh'>N]qɔE7 ~my۳gy;T: xpsbqbe+bm>D8e6en-/pqz(b\ޙBCaB5^? Bzv5qg(2F7t280]M 0a|߯<KrׄÑ}WK~ͼ?πRXJ0c#bгlHno*]! N7&7)&yW]*LyG(m^i$F[zCpzquB[@):̑q_+Bɡش9=+ W.O!o/̣oq>[P_l9;i@rG~^$o] ~xֲĻN_1vsO2c0؉i02*nemw;F\ ggj@kpeQظxRM 8ՕPavX1Q:O`6S$ӮUٶ0/Pׅ?ȖҺӌ9[TF?Fݮdܮațv_؃GcZ_]CNBZW+)Ƨ7lm'Ep)ן7^8;wz rɡ2بRMcd0p}{S @"LRC3p:< .3<htVUE"ToVtg BH>h ]J`/B x# x:ȱ6R0Z[J|2eC"j epp RpE%gFD=\R8coPW53wHbUpwJ 9aLSEBX,[3˳Fph慡.wG&y.r2d{5'{׀kXOeJ޴?]A|4j.+Kgɂ.;Jpϒ$ )Si"ΌZ%t֏zjՁ'=Q6ӛ=% )#U)3 Gh켹hҰx>Pp4dv6]K7 K9^݌K~kN|4bkʃߞUFG~:{j1彜 yjѮkc{>Sfwe6#6$Á '2h"`yu/Z'ĸ #>"a $xI,f_6N\dq&wyl͈BJ>jv/sIG,~Y(~W_4hqSD(qa k9N 3gA+8ms&dXQ++u .J/SCW7J]!)xSJ|ok-kfEBvȤ̤1Fm؊>#8~oWKͰz`./_w)xt@鳡tUy KqVd2/J24$ G2Ƕh eiJ2eLm]Hw&j$d5~Zx?Mq_wyI3XUGPLoɎA3mȾpH$T^"rΜ$Il"s(&PlGK;$2:>Ef+SgCI5Ap\ǦMUк p1ye 5w|[˩֯Q2 +V`Uer U׿zDP)zp,s8S[yE3n$G llPNju lT; sd4n? Hablr:٠n,J cTB3$5B6'כKl1.PsDGC/]>Dx4  > Dסll[|t(#;>&3ln 5f'z=t#`!70f%727[ES$CvE#4EBg@O9ŶRg'ZnzyyL7mfD,@yD*-S(-9Fx+9Q#0+o{$kO/ھYX/tRcd2-#))ZVHRIY#JW$q5ɬ(ӻ.d?f8o|+W(M>qi5QnPb(Hm|,F1?6.\T'3/)?oH։3MiKT+>]RXj|i|?mN{5 5c(ktҋIPYsNy}ӞSm}x)xIߙoUx)Y=e ?^ "XOmC Ju"Jrn91:(=jNwðh\u_v=*|W8 tU Zrޝ NzÄ!@xcsek #yeꐔ̱ӮE#TiL%@ MIZH^Uf, qVS2EtSE>FtDCELR!֤Fu\7~=8&(p>5pOhI;CYK^Xv@ڕd?. Lhj3 |NRjEa*8eg=c+5jm K%RR}C0@QEb{ !B~ 8J'l/v~0Ca“=C3}zyT1$0UOfl3RlG?NS 9эJ2o :sq(NPB/q F(dنmB7ߣlCKv6Z!Vf(;/Z$ϯ%I58!: -sH5?]{paץz:ti;5?71*z88tovyFukD C%&[4*gO4;Ө|kMy֭[{-&p=)Jmu̐ p?zn@HGs$B%ceXN4ͷ0WFn$`AョG΁d&R{=b@H]80l=覞fLGyͲ ۂ1JuՕ+dJ|h08.O|pM3 1Q&{t'9jg AR$5 pB)7O,`UwT%Ҁ]s,%џXM36q_38yuylh16rSA 7PSv>ͩ(/z_.VkFm炄MPFUKs~pQt;|h"̹Ţ~EAno5O:/ qy@ 7~/ 8ǫMHm6st"Pkg\ߗ'.<:r/l) ~͛Ȍ)Vr@AGձs/ݓ '= Lz. _ۼ ;aAAS4?i]Ӳ%uPiXvW!e"7CZTs4:G/S7z&;bg=i l*2,'თC6CHW ҥ3Ew\ Y+ [0{;{ke:y"w }40Q'q-g/a~˶EK2b "]T 5O(fJ9ԯژj\x$of${aT |xU \*[B̒z.v&|O [dE7VH#9c%bWd|[d'\T2CCL_kk(C.Х bщ5\{5`i#-اo [s~Ge\ VM ?0#ADuYER͢fL7vWV GfWsG;BOp6 =DyUdv1mm/Azr_:ӈ$!]-MUNZW \`Z]r8 +ۛ xJHZ:\Qtiar]vGvwE7YlSOJhX|0|0b!88q4e^Q)zt'Zlݝxgy|nNpMkʼnkh yF h#g'R_=Rj l, rRD :1 ob\\mk^JR)EPʝmL47[CNF 6RM0T]Bz͙kl2S'74Hh b,=&BI.͆ኡ.%$CW`bd(%TtOӕof)N(2?Nj֎Hd$s 2se5ת`R/<Ǵ9?E kRE2@?j=;aaĽQfn 98{۷Q.ɐ+r+ Ax v}*c#;*DXAU*9.>,PH w<3FN!:~yti昑B"yK$-/-)0 5rWڷ%˺)LT(mq">x#L\>RF^p)s_}fj%`H,$yY?RE i?)Sfѣ^r>]Tvjc$v|$VZ$G~V;i}T0ΟΣYR9@#Z!&.L/D-j6\!XfG# J_̹,aGa/E%E^Jt SϛSW4q$ԤeJ+vU.^w F'q~j_eI4E~ѐNy WMͫ4jfG5#4d2u:.(U j>GAbLiՇu)TV *$k3Zh8ǰGn-\6}EF4ȹRvHGdrE/)KC9fP$aczW6࢞ =GˉRztr=zO _[F͞on{imXatR?Mԯ毡$qIn%Qrzo`߂u!+V|ۤ>A w%W*U0@SaBUcF*n*$у*=,[^x%fVnv+^N -1_"Rj%ܰw ޿ {UU&t px+2<7 (![T[kPJiIWra XMl6ygP,<б('LJڔ0=Y9Q YekӑG*fcNxf/יuUإ"g׼>@2U?Z;\A@(唦]0w 6Uaכw}s͘~mI ^"Q CDV3$`_{Ӕ =@jjUaH}iBwW/jkC!r\&;,qͩz(bhpBO-<̕뫩(3D^f=]>/s_Ƙ7נ0m%MyL|VKN9ڣe ty1N AFVvմZ`*t=eOBKT.?mal.VO9;ڙX﷝Ǹ* Qd2yoznQ (!?%i}?lclPϰrdLWr['XįEd@$\|Q+)TX:Ae۶Go`jϡ`, ~>f>_p>+}# wH##l5Υ?Y@o NL~A IcNu3R7!^RnDP9XRHCvj Z'Xg]ezBC bX0CJL|>vSHWF'=s~_ k;|>. H6j!8w47g`rN HT `qe-šS-evΆlQEÆ9 vNWb$C\gף'˔AVVǘKe .}TWr9 &wS~j@t[ Y`ϳ/ј@ w$ I.:JWR E >EJancRż(|0vYS?@+|+p G>O2afMt̞ pPx/a+֦;. B}$FP CesJ-m3K`Hgb<4/RQ<٠cF@38{פFp3K}f#X+`gGǺةУ<]|<TP{/ s-)/Un%~"T !V  b^(ÑPTS* fL)߳9T|;x t]x2;#gж}x 'gu|3/ y;ݓϤ@spTS\Z˗n3wB>XN,<̩mߥҴ8I=Քc {R- : M}k32с6fYP k%a::<}}|3kF %a) MK=?<36珶LN: bݷ1?JȽ!9fX1OO\WxL6fVNLWiz ۗ GLR7)?K&2Ҝb-YJ)E_Q/qmqVNdMq3ubF9x]}_;Оm.I1g^Kd/:=5Y|y5 K׾5Aؒ-\ʹB NԤċ NܟMYW(M #7m:.酿'%ӕʝ^̯ ߜ|S|=J'ٳ)`ûd6u= TĚ gor.UKi !wFn>DgjQ,>Kpw(iO'-#ND-ZHz9md\L8nEBLjkagS{U0xAyn1-EtJn:09yȴ ~q&'zEvFKN$eN5 --l/fuf5*n3WE4{ک*RJ'<3lC.TSɞt@L戣8K|7]+Fw%_k>=-&G߬V*߂؏jϣ.)O/B4Cckj8}竤tݹ̻.T\, Thw[c2+QѶZuI_k*aYWZHcr+$빩sjrv}-JS]aHp)|-mx]'#뽟t)yiGq`rٵG[sT,?"N LJvߎwQ[)-|1xnmuz˖=_9^١y3w[.=Աӈ¶-l⋷Wz#NR osXMiF؁Z*H2vffn خC@M{ٜ9`*i5!1p@V\+!""}~هh ^2agIb,`(;)LZ韹Pŀ=qL%N8vZM\.Cn+gf+ռ] Fdz"Ik&Q+@,pi2U$ﵬ2u/9 /d*q ;}\ Z%Xp9X`v,vaw*q~H϶9K3+6gSEQ||S -%IzDRz&6(《YXܛS{L e]'F@ېkUǺZPoĢNPS5Y/M8&[{a\i@$.Q4v.[d+ [$q = DP#iU4<65P <\n{}\ 2ʕ/ G%~Ok+o:0Hg/|q0͟|DvԹ35~fz+| ZaJºkz0{罚x`}l2E<*͵ù|K[q W5(mXMwp(2`;!q'x\f_Fx=OA9*% )KUۖ_ɧX4,wU%6ݡLּhg( $b}}!7ңHoz1AK_kcwZIShNwSQ1dc>zPOX >tҏ|[oŻ(7N첷CM/A[(ݞ y$@qȉ'IgBɾŽr 9k1?c 8D3}nd鮩L&kI.SSC>F?!1P5VJI[%qIjstBr7eq֢=#E;^ )AɽuV[^6TnvԿntgEͤ&v6K{F@nT3G1hQ-57xe蕢NɘCu(u}Ym&yTMhЖU4FIv\)zSs?å4Xq>]yatüN }:0JħrWkJCdDg;{,Z:0`q놙AgŻ1ayaw? RcSA9Qd)%_N ?jfo\'1:&7)_9$.s)vN -޸4UfҌ_ UfDV!k~o;$ϣD@:0O|┻n`wC,(Fi,]X` =ˣ$1&%eS]I}A,m7p;n1>UWHOh)zHd򂾝u=bO1%)碅aT eC9FM:܉'If͌Њ?N{:_uym;Q59[e0!FVݑl,X}{dP E38Jb]bA) ΐE QR,a#5A ENx+K{+1n{6ݵld+bE`๝E!*1\+vAeQ;z&TDfݺYQ$P=Q1vΦ+oݓ̡_^I'yRTش׆u-n_&{"FJ/[tWhD{jI]@`1$K[^@mPT䎃]BC%t}c/ͮQ FjvJ9z L7坠;"[E˵`1T}"_mJKL)KծiCys5;a|jbi}bO0JJJo&F96(cdF}_Evt3M=ޱIS( J΍oX!izAq:=2fuVPZ!JCr?ldBzzc`|iU"M5VOW39(uԹKb*|Vs )Q]! Κnr!Sׯd^Vi$`"v@l_3׷/›R۽@^~P,&,a˳`ٶkwm$Of? M.*J!<4η9,E`Q򌽻G_ap[V0#kZA!Vۅ G,>_} is=>tMk^tCHq?}ߊ( ,SavM?]W8.{+vdj`E6:6߱Ђ/NڗZ6d69d uQ:DpI.oYM:(/nyjd76rAߠv+dMwBxpl+Z;4J1%GZr΅3k4v. RO)ק+7M)6Ѷ3f}rtϲ`jP+<qbg:;^@3"òTif?k}k閼rMױ@ 5"buPW'zm?=Nth@TO^Tٶa`P.p(ni"vijVN2G$H2hk3G{=1-X5gW Vv6l)2{c4$K.&,MGyH`}˘2)qMh0ĢE x ,6M:4m3wS?Lp&tsg;sF `63hy(Fpm{bⰖ dU]%u%Yi9Ӯer Slա- =+^>Hbl ^f᭲1vCK}4a̒ۄ;gw<;qp G8ĝH&qo9JiŌLE%}:ʼU0^B:| &з_)!=G7LΑf sƃ{AE!ʣѨc<40?Q1b$&-]dMzʯLϜkb*sk1Mv얝َ̲`<<Π:Ta,31;2n/gjh[e@cX 5 krC(7asҚ>k^NcE5!tbK(#7PuX^`u̾ tb5 g d ~Rc!g!Ǎฎհr&Mf7.0RzMxl1B.?.ۮwx3ܩZj/DBsE:/A&ϏZn1%w$v0}($zg ^@߈уlXnB~u 1UXNTN9T{6/=SNƼu*TmzNρ0|$TW7vn8qC܊%4 !t'3nXܩKݡ7^/_4''Jokb7LFչ$p)0tDٵ6-+dHt{V ~h%tvۭxVaKEܟLGppw?@a.C(+S/;S㾶4q~f3LiNX\Ѷw/P{xϘN=WܰȔylX6InQm5[$J`p{RnZ];/3Oztǘ\Wn捯д6_ 5Ĝ,1L?RR$`UθP)k71鶻SѯڄV,=7DuK}b(OQh?bFH? @ף"@2ͬ/=naPʏC"B"Ԃ!TR-ŵKb=|kw:ı ^! ݢ/4t9 oP:%4v3w]: +́[·ȒXF^{seYv v( c6scV^z|{.i0o y 1$py|Z!Y[䱧;[Q ^K1=ʹ@@c@&`8h^풥(16xҲmdy;z?T֎iK}'1~s'vLNc<+:7r$Q&Y5^9*UnUqudӈ*t/2fZG*$/} dLԆ-WcjL!-~q1N9gc\}M.t%l1! nF"1D:H7Wʗ.@_}X.!_賸 Q{M_^˒2~,"_ M_ V*n] ߋf +7Yz+dym͋O;K`&AЍSR|3zrK+Oti_.ϘD0Y0zs my_&?}wR#$!.l;ұPgG ?v`eb-CkqpoƎ hwΡ>gdW$uÚgx|QKՕY\7F")lӵDR;4>!'t6[}J(,G'}e~;RVP#OmlJaLnZp\UKt?oE_O,|lFr`G"&8L\+gaB+"=})iѵ ~ %j6T+GQο &k7G}&glb5T\|HEW fx@½c O@iW\ո*HR=͞t^y9o=w١38/OF _F޻JǦQU˜E '&UVLA"u<`>]Q%?ZL< _0P2%z[Uӵxd7^*_9=TL~3Y` J$&wq8a R zRJrDyB8l8v\BM[Q<L[PĪV #"ԩ KO#\b4|Zk=I"'I܇O0&tɦIH#&87IECNW"lYpɾN 8Q LMw$]%~r@J)eƘx`A)P_< l-ZY.fvzU2#w"K:t,ޢ9r06Dd`IJp *ȼ|C3r5j};mL<1#[:dB7ɋFe1t{ap7 ~) `Ta ҧۮ*Y$9{~m7 UÔ}j%,*|GyEYʽ@E5[MK׉ Sz7^8|n8e*364]Zk>H^Za)ED.CMSt&#PWv.(^HqC ٭u${'CLTz'/WLHyFҐQU$怅O[{*ı'˳9{]19aT MBN/ǒ>o A_%=+vN=J4Y[_RwFxiݍ(tVOfOm9VHяZt۾ "Gki(K3%Җ:~Ȭ^P`hsP.tR>01BYO`>PgJq~"e@C$ [X{"hcY.eO7[(, $EMFbl왾 dLC::AibūChN|YpEyQO42xڅO U-:{vν}m.õv7z[+60#&}Ù!dѹhŷꆑ-Ơ*)Ļͧ,ahk*gHZ/ޜ B&mEJS'*y/UVPq|DZ$:X{_yiK31A1hSl5G I osƀ o7.7g0k ZH (s0OckL )b Ds$舆חjc:ve]Va^%r=A"q5<)Cp~;fft4{"׺‡rkцhzzZ.쾴t-j gom'en .ef4ȭ|.j9V bY*e,$8 PT8f0; {DX+zk2YS*;T3z)lz7mX1eGغJ l:xPo\ D{ΖK˯' PC6L$sW`&x݈m c/% 0tx0cc"YΛ}d:'#H(+og@[.!͎%^ɠd 8 GЈ1s )^ 3`fM9oodA3VDC?#+Yr}{2[IOn'c&18BHX0Ѻ2ȗ z8 kn wELWɗI!9"DETG?a$ՁM~EZ[ YgcФ> EIj{"3%j5я J'냴S~ӫ0sVAC񨕬WuXe.M@k_jN$ 'W_17~ՆC_՚KBo` @ޏ 맘$02*SZ<ۄ?BJ99әl8ʨnۧ~JjEM.n(s'RAH8/τ̧T?#4 VjI+fֹܑ7c-VՙXrG8f̙Cas`#0i >E)mM.l u| l1:mTL#UxDb~-E n]Em }X5{B: :V%N% 3![1E,vzNcI,KqH'+ ANCdq_@*K0@*7ׁIBЯd*U5g;F Y+$'+ U^8W;QH1AN_7-8LҴ'*<+KRw_֍)/^4`R`tFԜQۘ.e'ƯP^-x qc~Tmx9Zm a:t*#+feh;Lg,.9gG)sZFFdjǓe~b}Eơ`؁ܴ"C5/; C\ChaU:=azze@cSI4==c &[%QT&ssۭ;͘zhMKdk}ar9a^?2i$Ki"pATSKVaW9)*ϝECh*EeiAz-,dR:,J3L8fUz43.Yg R֐sRHwŬ a$HVJbO%}kXI?BFdG%uc `((畦a3 T}vdm skPm\Y}.1JNnT~@mPJ͂(X>m3ψIYrQ#aEv%Ioqy++sRrMbub*%̓7?G<7sNaf0 ;(ͤwBg Eͭpg4mPٷڠt5GHKCuL wm5 ?YGXM#9؇3\_1,IeYП\B]cdG m:ḰO- =Q=C$w z8U0k9(-䝨%sMRWб'#Z/D5\9n|!ctכRF(`[Lfn/1T3s U^T6uڿuƯajԄ]H:37/[]dEA9+7[LmS}v=38A40!ѝodh?pW= X/M^&;_!gczaw:K HכSnIq! M}&ޡa])!~Z,+/9eIFϫ3$ iXѽ9*֦-w.[SG:`y ݉Ypu: CƜP}{)m JґwKzlGgarIHƮx$ϻ>+3W\s5Qll2WٖNY?m5mV,6q5Ϸڇ!'H?tߠ=uރ(ːFҾE|q5ߏy/)_O^N}O"2g Yr e~Zhgۭk,6{${ERd"0ʹc2d<1W몉pkqFaOa@IF6@C#H} 1 e\e9G#(c ?Rj#+Օ} qG⛼Tͫ7Y{]qݢ[L&c@ɰadCp"Nc? . 6fvE(Nfw)Ҟ\5R:ͮ:ȶc<*z>0SȈk֠4 p4~+Uɡ3i~$0&?AB/P 1YQ^ ~vKvn\ gQ*!AKK~OVlN:x/+{[?.' c~*z;W)IRDy&9J{aiG ]BĬz)m#\`u&G PN눬@Z&["@>;,RPR[^pIoS +d<\-&z{K0IHiرMg-ru3!w 3J ?,F6=ʯw؅v~`; 7d_f&Ž?يF>UWV7ajVzDp? 1 DUsJ nz8&u ߞ.{h?ΠL^ZDX>ekg -QyXhn_HLJ\:yHAv'l0CJΆ[`ayF籀LRpo=Vk%uS$H>+UST JC7EkIK Hx6bW+ƍf^UVS/~e֑G(tGz&N*-. .hsۈ=>bJ;N-uT]ԗ*l"EQsB'TX)lq9!*b'y4"kcy%7D` $>}|1آFxT+YLIX7>d W 2E[OOj6v<@GYHju.Ȟ~t-ü88qaY(BW ]].lW Ut.B<Yl3%UkyXGk-bT+g!~ttm3iI b PK=J,wM}|@şsv'ɏQPe UϪzRI\=qYwO 7Bt#iFD ĥ>ͦ%,E'rhVL)}?_tYKV\_{0{ ֌HHmV=ҰAOEϚc`7HkJc_^fXoZ) *UNN£ãeY$cJ:;Hd}04Zj[^A]9 6kgZBUPd!c>x5/iVgĐ泬Hqt*8]L$w? y\7p;>Ɨ3OPB(֛Eߢ0,Z?cFW{žAJ"z\0GࠥGn L.weCd A7RDF-I]b:X-x2 $_qFFXAK+! Af1S*E+Бo8dh9M^?=ڭEAYwl5xh/X#Oҩ) mG`K>C$eʭ>(<_ |UDJn0ZYgO Y'ԿY} | 5_wglI  e~4-9I9ss[!jS^&~챷Tg/iHV B$tqqTW[v_\kh$[pr_(ZDz׋)FC^mzOJ]ȬKIi-9/kH 9|қ !oށõ 7ݗG$N,)+N -ղ1h'ɶyQ%K"Wf40 u"jC>[">"$]&'D䃄b9{i; 36w./T1xr?/*VƱђ'h)4ݑQ;^ kDoY mD|,H)IDIf/ 4ToNJ\2߽63)Z_t i} |aztΚRɛց;T 5^ &x=)P(Rub^Is 0 S j](8t"t4Л58q<ÛTr(v dG7np cά1*]_Vzs;l~GIk,!~E$MϨO~nS3HTCٗT6lX&l"fSOO%B&4o{ty'[PVQk(y9V_ \{)OFKg(E+b1l4XYmDw\JNJmRý! +g|d]%ZD/ٸYlQ[|1>LI#l$J4*(RXpG.Tp{0!fz__\(kn`˝Y8jXcmO?YIs?!.>"SŴW{.Zw aXݮΆ=hh_P;Tl4QJd}Ԏu)^Dd*ZK@$fHP>BbU9qj3~;F𝘧u͔ӊ[j q7p|4Nh߁gMn~* p232 ,9{yBA71.XQ9jbϰ#z} Q"T0TeZ_lnȜOiYk;>Ze徍6ԚbU,(yvAs4 #t*juڵ$K:/x 0Ew fyH_7$pGǽvS`+?A [˵=+7 [1ӼW4aՙs7[En[+` `4hU1c`I~uGC}41XSSL9A\l;^_+s){qu̜ifT]l"^Bh ?r+/$#S;CKf^K*X~6{0QCpfHT}>!cOkOzJ nҙgE@PQ̠, 4 ~ q?UY 77 w=h'"4.NfXΑ#Rـ.oE<#3f+>d̜3ĚJUDiL/,R')2u7j[%?/.z] w\,4A pԺ2oeJ|8'8hm3r깑#@9_!+@ѣU;'r#=BݦfqƋ-JT)])" EL,Y\=T27ȒP M?ۀ 3$Yry]7!䠼[r]q5HW*dU#l%q2;\@];3ߘwNՍ4>n]F| ǸbI̺(@{tqqd:]CaEm\b,/iwd,7ˎwC+΃ WĴ " ?F&*7Hf"FS;ڿ4;iS;HF0XѶ9E}pƿ_܉EkҸ#G7#Z+}^Hnc)jh,^!_B\“4 J[bQ:)'%l,E~nOKk?k d!*<^'C]|]/cu#`sWwnn#T=1IvdFDtmbF-6m6kq5Z&vIՄ܁}g"Gf>IWzͤx?ytȸ~dݤ(2Gh"j?sHvzf1Ym.ŮI ,@ވ-O4`"γS )\۳KhSSso]ܦ?xPN %gb6H abHaveJ) &\nwQmI#\?(=T b 6FJ}bۨDVKtKʟl@ ֭u/L?b93TO8m6R#gr獃|+9 JWY 0Пc*blG\ >+wy (Jbfl;A3px]i UgP|hicKJ_Rô=q6V&e1X5BR/55ckQCZŅl N-iۏXUT|+h: (Q"2T@#EViЈ7ՃtҺP/k 4!PUm._`g.譑@7ui&vxv _U'^ZeMf>pnN|{h?RJ̐LBf~R_lj4@0Tf-FbW߯.oEY~&|-j)YKi)L"^֯J f:lq¢9ɨɮe/.Em?yޭAWl!H鄀6#d/L{rӚzɛ}3N$LA&J_}Z-}*~q꼾CkTV7OY\w0Rhz{%V,=Z|`e.v^J2Rp(8f(XpLT*h8$)]/MM D!΁8xtB&‡뇉G0"y׸#>EX5𫎁!.9=#2ҪZnBRXHc\1H j[wq~EQ[6^H5@S6oxِЧ6WHQbr?K:QrYU$0_ YZ