libopenssl1_1-1.1.1w-150600.5.21.1<>,Pix;p9|^[&,ߐPF_p Hk 7)/z ͙ЋJ=EIdȰaVD'B%9P+/1!'\lÄ7)R(UCPn^YR;5)_,";tPFa̭4ΩPH 4tP̸qȱZUw; Ev+%?NG^d=fv8!FmʞG%]R 0%6I6eʸMĦdoy1VhuQq>IhT?hDd % Q\`pt   8  J  \    I  T x      f   ( 8 90:>_@_B_F`G`0 H`T I`x X`Y`ZaD[aT\al ]a ^bbbkccdcecfclcuc vcwf xf yf?zgggggggh@Clibopenssl1_11.1.1w150600.5.21.1Secure Sockets and Transport Layer SecurityOpenSSL is a software library to be used in applications that need to secure communications over computer networks against eavesdropping or need to ascertain the identity of the party at the other end. OpenSSL contains an implementation of the SSL and TLS protocols.ix;ibs-power9-10ESUSE Linux Enterprise 15SUSE LLC OpenSSLhttps://www.suse.com/Productivity/Networking/Securityhttps://www.openssl.org/linuxppc64leAA8<( >遤AA큤ixtixtix?ix?ix?ix?ix?ix4dKa2eac8df41b1612c721bba68030048740ba7d21f4f47a95247712a7ac5f0bda00ac24530330be89f9f53accfa52e0cf13ae8c83447a76e87e5110c8fc2be231aedd3ecbae30892124cbe710f925535871c1c1db9f43bae517e7e9804814cf4835c92f726a6d7ecd456121e52cbe09fef6cad81f580e5baef2552d5ca6b3f417806dd2942c6831a90525c953d01414a2d4a786697f478064be3305c17badbd99b816fdb310bf9573bd4d608391f910c7185bd73ad6aa35d07418bb3e6509e0996c32913b33252e71190af2066f08115c69bc9fddadf3bf29296e20c835389841crootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootopenssl-1_1-1.1.1w-150600.5.21.1.src.rpmlibcrypto.so.1.1()(64bit)libcrypto.so.1.1(OPENSSL_1_1_0)(64bit)libcrypto.so.1.1(OPENSSL_1_1_0a)(64bit)libcrypto.so.1.1(OPENSSL_1_1_0c)(64bit)libcrypto.so.1.1(OPENSSL_1_1_0d)(64bit)libcrypto.so.1.1(OPENSSL_1_1_0f)(64bit)libcrypto.so.1.1(OPENSSL_1_1_0g)(64bit)libcrypto.so.1.1(OPENSSL_1_1_0h)(64bit)libcrypto.so.1.1(OPENSSL_1_1_0i)(64bit)libcrypto.so.1.1(OPENSSL_1_1_0j)(64bit)libcrypto.so.1.1(OPENSSL_1_1_1)(64bit)libcrypto.so.1.1(OPENSSL_1_1_1b)(64bit)libcrypto.so.1.1(OPENSSL_1_1_1c)(64bit)libcrypto.so.1.1(OPENSSL_1_1_1d)(64bit)libcrypto.so.1.1(OPENSSL_1_1_1e)(64bit)libcrypto.so.1.1(OPENSSL_1_1_1h)(64bit)libcrypto.so.1.1(OPENSSL_1_1_1l)(64bit)libcrypto.so.1.1(OPENSSL_1_1_1w)(64bit)libopenssl1_1libopenssl1_1(ppc-64)libopenssl1_1-hmaclibssl.so.1.1()(64bit)libssl.so.1.1(OPENSSL_1_1_0)(64bit)libssl.so.1.1(OPENSSL_1_1_0d)(64bit)libssl.so.1.1(OPENSSL_1_1_1)(64bit)libssl.so.1.1(OPENSSL_1_1_1a)(64bit)@@@@@@@@@@@@@@    /sbin/ldconfig/sbin/ldconfigcrypto-policieslibc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.33)(64bit)libc.so.6(GLIBC_2.34)(64bit)libc.so.6(GLIBC_2.38)(64bit)libcrypto.so.1.1()(64bit)libcrypto.so.1.1(OPENSSL_1_1_0)(64bit)libcrypto.so.1.1(OPENSSL_1_1_0d)(64bit)libcrypto.so.1.1(OPENSSL_1_1_0f)(64bit)libcrypto.so.1.1(OPENSSL_1_1_0i)(64bit)libcrypto.so.1.1(OPENSSL_1_1_1)(64bit)libcrypto.so.1.1(OPENSSL_1_1_1w)(64bit)libjitterentropy.so.3()(64bit)libz.so.1()(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-1openssl-1_11.1.1w-150600.5.21.14.14.3ir@h.h}@g0@gig@g dfff)@f@f?@f?@f?@f?@f?@fIfIf~f~f~f~f|fuk@ftfqvfaf8@e@epeeeXepb@e_>eRe1@eSeRd.@ddgd!ddw6dw6dtdkY@d*dd'@cc=@cccccc{h@ctctcb[c[@c=qc$e@c*c@c@cc b?b?bbbUblb@b@bbobaG@b4t@b0b0b)@b!@b b bOa@aaar@ar@aa@a@a*@a)@aapa=a+va@`m`Y@`?z@`>(_j_~@_Wr@_G@^^t@^_@^V]^O@^E:@^C^0"@^)^(9@^&^&]]]]n]x]v>]g@\@\\ac\G\G\A\@[0[ @[u[u[r@[b@[Xf@[Xf@[2*Z4@Z4@ZZ2@ZH@ZZv@Ze@ZTZOZOYYKY@YV@Y@Ym@Ym@YOY, @YYY i@Y @Y @Y @Y @YtYYX@XXXXXh@Xh@Xh@Xh@Xh@Xh@XXXXX@X6@WSWSW_@W@WW(WWV޾VՄ@VVa@Ub@U'U@U>UzUyx@Ua@U @T TTk4Ti@T\@TFJangel.yankov@suse.comlucas.mulling@suse.compmonreal@suse.comangel.yankov@suse.comangel.yankov@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.commjambor@suse.compsimons@suse.comotto.hollmann@suse.comotto.hollmann@suse.compmonreal@suse.comotto.hollmann@suse.comotto.hollmann@suse.comotto.hollmann@suse.comotto.hollmann@suse.comotto.hollmann@suse.comotto.hollmann@suse.comotto.hollmann@suse.comotto.hollmann@suse.comotto.hollmann@suse.comotto.hollmann@suse.compmonreal@suse.comotto.hollmann@suse.compmonreal@suse.comotto.hollmann@suse.comotto.hollmann@suse.comotto.hollmann@suse.compmonreal@suse.comotto.hollmann@suse.comotto.hollmann@suse.comotto.hollmann@suse.comotto.hollmann@suse.comotto.hollmann@suse.comotto.hollmann@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.comotto.hollmann@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.comotto.hollmann@suse.compmonreal@suse.comotto.hollmann@suse.compmonreal@suse.comotto.hollmann@suse.compmonreal@suse.compmonreal@suse.comotto.hollmann@suse.comotto.hollmann@suse.compmonreal@suse.compmonreal@suse.comjsikes@suse.comjsikes@suse.comjsikes@suse.comjsikes@suse.comjsikes@suse.comjsikes@suse.comjsikes@suse.comjsikes@suse.comjsikes@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.comjsikes@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.comdcermak@suse.comjsikes@suse.comjsikes@suse.comjsikes@suse.comjsikes@suse.comjsikes@suse.comjsikes@suse.compmonreal@suse.compmonreal@suse.comvcizek@suse.compmonreal@suse.comvcizek@suse.compmonreal@suse.compmonrealgonzalez@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comjsikes@suse.compmonrealgonzalez@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.compmonrealgonzalez@suse.comvcizek@suse.compmonrealgonzalez@suse.comjsikes@suse.comvcizek@suse.comjsikes@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comsflees@suse.devcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comdimstar@opensuse.orgvcizek@suse.comtchvatal@suse.comschwab@suse.devcizek@suse.comdimstar@opensuse.orgdimstar@opensuse.orgvcizek@suse.comvcizek@suse.commeissner@suse.comjengelh@inai.detchvatal@suse.comvcizek@suse.comjimmy@boombatower.comtchvatal@suse.comvcizek@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comvcizek@suse.comvcizek@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comvcizek@suse.comtchvatal@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comvcizek@suse.commeissner@suse.comvcizek@suse.comvcizek@suse.commichael@stroeder.comvcizek@suse.comvcizek@suse.comvcizek@suse.comdvaleev@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comdvaleev@suse.comnormand@linux.vnet.ibm.comcrrodriguez@opensuse.orgvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.commeissner@suse.commeissner@suse.combrian@aljex.commeissner@suse.combrian@aljex.comcrrodriguez@opensuse.org- Security fixes: * Missing ASN1_TYPE validation in PKCS#12 parsing * ASN1_TYPE Type Confusion in the PKCS7_digest_from_attributes() function - openssl-CVE-2026-22795.patch [bsc#1256839, CVE-2026-22795], [bsc#1256840, CVE-2026-22796] * Missing ASN1_TYPE validation in TS_RESP_verify_response() function - openssl-CVE-2025-69420.patch [bsc#1256837, CVE-2025-69420] * NULL Pointer Dereference in PKCS12_item_decrypt_d2i_ex function - openssl-CVE-2025-69421.patch [bsc#1256838, CVE-2025-69421] * Heap out-of-bounds write in BIO_f_linebuffer on short writes - openssl-CVE-2025-68160.patch [bsc#1256834, CVE-2025-68160] * Unauthenticated/unencrypted trailing bytes with low-level OCB function calls - openssl-CVE-2025-69418.patch [bsc#1256835, CVE-2025-69418] * Out of bounds write in PKCS12_get_friendlyname() UTF-8 conversion - openssl-CVE-2025-69419.patch [bsc#1256836, CVE-2025-69419]- Security fix: [bsc#1250232 CVE-2025-9230] * Fix out-of-bounds read & write in RFC 3211 KEK unwrap * Add patch openssl3-CVE-2025-9230.patch- FIPS: Use the NID_X9_62_prime256v1 curve in ECDSA KAT test instead of NID_secp256k1. [bsc#1246697] * Add openssl-fips-ECDSA-KAT.patch- Fix bsc#1236771 - Non approved PBKDF parameters wrongly resulting as approved * Add openssl-FIPS-PBKDF-params.patch- Security fix: [bsc#1236136, CVE-2024-13176] * timing side-channel in the ECDSA signature computation * Add openssl-CVE-2024-13176.patch- Security fix: [bsc#1220262, CVE-2023-50782] * Implicit rejection in PKCS#1 v1.5 * Add openssl-CVE-2023-50782.patch- FIPS: AES GCM external IV implementation [bsc#1228618] * Mark the standalone AES-GCM encryption with external IV as non-approved in the SLI. * Add openssl-1_1-ossl-sli-021-AES-GCM-external-IV.patch- FIPS: Mark PBKDF2 and HKDF HMAC input keys with size >= 112 bits as approved in the SLI. [bsc#1228623] * openssl-1_1-ossl-sli-020-PBKDF2-HMAC-size-SLI.patch- FIPS: Enforce KDF in FIPS style [bsc#1224270] * Add openssl-1_1-ossl-sli-019-Enforce-KDF.patch- FIPS: Mark HKDF and TLSv1.3 KDF as approved in the SLI [bsc#1228619] * Add openssl-1_1-ossl-sli-018-TLS13-HKDF.patch- FIPS: The X9.31 scheme is not approved for RSA signature operations in FIPS 186-5. [bsc#1224269] * Add openssl-1_1-ossl-sli-017-X9.31-sign.patch- FIPS: Differentiate the PSS length requirements [bsc#1224275] * Add openssl-1_1-ossl-sli-016-PSS-length.patch- FIPS: Mark sigGen and sigVer primitives as non-approved [bsc#1224272] * Add openssl-1_1-ossl-sli-015-sigver-hashing.patch- FIPS: Disable PKCSv1.5 and shake in FIPS mode [bsc#1224271] * FIPS 186-5 Section 5.4 disallows RSA PKCSv1.5 signature operations with XOF. * Add openssl-1_1-ossl-sli-014-PKCSv1.5-and-shake.patch- FIPS: Mark SHA1 as non-approved in the SLI [bsc#1224266] * Add openssl-1_1-ossl-sli-013-Mark-SHA1-unapproved.patch- FIPS: DH FIPS selftest and safe prime group [bsc#1224264] * Add openssl-1_1-ossl-sli-012-DH-selftest-and-safe-prime-group.patch- Build with no-afalgeng [bsc#1226463]- Security fix: [bsc#1227138, CVE-2024-5535] * SSL_select_next_proto buffer overread * Add openssl-CVE-2024-5535.patch- FIPS: Remove not needed FIPS DRBG files [bsc#1224268]- FIPS: Add Pair-wise Consistency Test when generating DH key [bsc#1224265] * Add PCT in function crypto/dh/dh_key.c:generate_key() to meet assurance 5.6.2.1.4 of SP 800-56Arev3. * Add openssl-fips-DH-Pair-wise-Consistency.patch- FIPS: Disallow non-approved KDF types [bsc#1224267] * Add openssl-1_1-ossl-sli-011-SSHKDF.patch- FIPS: Disallow RSA sigVer with 1024 and ECDSA sigVer/keyVer P-192 [bsc#1224273] * Add openssl-1_1-ossl-sli-009-RSA-sigver.patch * Add openssl-1_1-ossl-sli-010-ECDSA-sigver-keyver.patch- FIPS: DRBG component chaining [bsc#1224258] * Add prediction resistance and oversampling of the noise source. * Allow setting the FIPS error state if jitterentropy fails the health-tests. * Add patches: - openssl-1_1-FIPS-140-3-DRBG-prediction-resistance.patch - openssl-1_1-FIPS-140-3-DRBG-oversampling.patch - openssl-1_1-jitterentropy-error-state.patch- FIPS: Align CRNGT_BUFSIZ with Jitter RNG output size [bsc#1224260] * Add openssl-1_1-FIPS-CRNGT_BUFSIZ.patch- FIPS: Fix build warnings. * Rebase patches: - openssl-1.1.1-fips.patch - openssl-fips_selftest_upstream_drbg.patch- Fixed C99 violations in patches bsc1185319-FIPS-KAT-for-ECDSA.patch (need to for explicity typecast) and openssl-1_1-fips-list-only-approved-digest-and-pubkey-algorithms.patch (missing include) to allow the package to build with GCC 14. [boo#1225907]- Apply "openssl-CVE-2024-4741.patch" to fix a use-after-free security vulnerability. Calling the function SSL_free_buffers() potentially caused memory to be accessed that was previously freed in some situations and a malicious attacker could attempt to engineer a stituation where this occurs to facilitate a denial-of-service attack. [CVE-2024-4741, bsc#1225551]- Security fix: [bsc#1222548, CVE-2024-2511] * Fix unconstrained session cache growth in TLSv1.3 * Add openssl-CVE-2024-2511.patch- openssl-riscv64-config.patch: backport of riscv64 config support- Enable running the regression tests in FIPS mode.- Security fix: [bsc#1219243, CVE-2024-0727] * Add NULL checks where ContentInfo data can be NULL * Add openssl-CVE-2024-0727.patch- Remove "Provides: openssl(cli)" because the executable has been renamed to openssl-1_1.- Because OpenSSL 1.1.1 is no longer default, let's rename engine directories to contain version of OpenSSL and let unversioned for the default OpenSSL. [bsc#1194187, bsc#1207472, bsc#1218933] * /etc/ssl/engines.d -> /etc/ssl/engines1.1.d * /etc/ssl/engdef.d -> /etc/ssl/engdef1.1.d * Update patches: - openssl-1_1-ossl-sli-002-ran-make-update.patch - openssl-1_1-use-include-directive.patch- Set OpenSSL 3.0 as the default openssl [jsc#PED-6570] * For compatibility with OpenSSL 3.0, the OpenSSL master configuration file openssl.cnf has been renamed to openssl-1_1.cnf. The executables openssl, c_rehash, CA.pl and tsget.pl have been also renamed to openssl-1_1, c_rehash-1_1, CA-1_1.pl and tsget-1_1.pl, respectively. * Add openssl-1_1-devel as conflicting with libopenssl-3-devel * Add openssl-1_1-openssl-config.patch- Skip SHA1 test in 20-test_dgst.t when in FIPS mode * Add openssl-Skip_SHA1-test-in-FIPS-mode.patch- Security fix: [bsc#1216922, CVE-2023-5678] * Fix excessive time spent in DH check / generation with large Q parameter value. * Applications that use the functions DH_generate_key() to generate an X9.42 DH key may experience long delays. Likewise, applications that use DH_check_pub_key(), DH_check_pub_key_ex () or EVP_PKEY_public_check() to check an X9.42 DH key or X9.42 DH parameters may experience long delays. Where the key or parameters that are being checked have been obtained from an untrusted source this may lead to a Denial of Service. * Add openssl-CVE-2023-5678.patch- Performance enhancements for cryptography from OpenSSL 3.x [jsc#PED-5086, jsc#PED-3514] * Add patches: - openssl-ec-Use-static-linkage-on-nistp521-felem_-square-mul-.patch - openssl-ec-56-bit-Limb-Solinas-Strategy-for-secp384r1.patch - openssl-ec-powerpc64le-Add-asm-implementation-of-felem_-squa.patch - openssl-ecc-Remove-extraneous-parentheses-in-secp384r1.patch - openssl-powerpc-ecc-Fix-stack-allocation-secp384r1-asm.patch - openssl-Improve-performance-for-6x-unrolling-with-vpermxor-i.patch- Displays "fips" in the version string (bsc#1215215) * Add openssl-1_1-fips-bsc1215215_fips_in_version_string.patch- Update to 1.1.1w: (jsc#PED-6559) * Fix POLY1305 MAC implementation corrupting XMM registers on Windows. The POLY1305 MAC (message authentication code) implementation in OpenSSL does not save the contents of non-volatile XMM registers on Windows 64 platform when calculating the MAC of data larger than 64 bytes. Before returning to the caller all the XMM registers are set to zero rather than restoring their previous content. The vulnerable code is used only on newer x86_64 processors supporting the AVX512-IFMA instructions. The consequences of this kind of internal application state corruption can be various - from no consequences, if the calling application does not depend on the contents of non-volatile XMM registers at all, to the worst consequences, where the attacker could get complete control of the application process. However given the contents of the registers are just zeroized so the attacker cannot put arbitrary values inside, the most likely consequence, if any, would be an incorrect result of some application dependent calculations or a crash leading to a denial of service. (CVE-2023-4807) - Removed patches, already upstream * openssl-1_1-Fix-file-operations-in-c_rehash.patch * openssl-CVE-2022-0778-tests.patch * openssl-CVE-2022-0778.patch * openssl-CVE-2022-1292.patch * openssl-CVE-2022-2097.patch * openssl-CVE-2022-4304.patch * openssl-CVE-2022-4450-1of2.patch * openssl-CVE-2022-4450-2of2.patch * openssl-CVE-2023-0215-1of4.patch * openssl-CVE-2023-0215-2of4.patch * openssl-CVE-2023-0215-3of4.patch * openssl-CVE-2023-0215-4of4.patch * openssl-CVE-2023-0286.patch * openssl-CVE-2023-2650.patch * openssl-1_1-CVE-2023-3817.patch * openssl-Update-further-expiring-certificates.patch - Renamed openssl-1_1-FIPS-default-RFC7919.patch to openssl-1_1-paramgen-default_to_rfc7919.patch- Add missing FIPS patches from SLE: * Add patches: - bsc1185319-FIPS-KAT-for-ECDSA.patch - bsc1198207-FIPS-add-hash_hmac-drbg-kat.patch - openssl-1.1.1-fips-fix-memory-leaks.patch - openssl-1_1-FIPS-PBKDF2-KAT-requirements.patch - openssl-1_1-FIPS_drbg-rewire.patch - openssl-1_1-Zeroization.patch - openssl-1_1-fips-drbg-selftest.patch - openssl-1_1-fips-list-only-approved-digest-and-pubkey-algorithms.patch - openssl-1_1-jitterentropy-3.4.0.patch - openssl-1_1-ossl-sli-000-fix-build-error.patch - openssl-1_1-ossl-sli-001-fix-faults-preventing-make-update.patch - openssl-1_1-ossl-sli-002-ran-make-update.patch - openssl-1_1-ossl-sli-003-add-sli.patch - openssl-1_1-ossl-sli-004-allow-aes-xts-256.patch - openssl-1_1-ossl-sli-005-EC_group_order_bits.patch - openssl-1_1-ossl-sli-006-rsa_pkcs1_padding.patch - openssl-1_1-ossl-sli-007-pbkdf2-keylen.patch - openssl-1_1-ossl-sli-008-pbkdf2-salt_pass_iteration.patch - openssl-1_1-serialize-jitterentropy-calls.patch - openssl-1_1-shortcut-test_afalg_aes_cbc.patch - openssl-DH.patch - openssl-FIPS-KAT-before-integrity-tests.patch - openssl-fips-DH_selftest_shared_secret_KAT.patch - openssl-fips-kdf-hkdf-selftest.patch - openssl-kdf-selftest.patch - openssl-kdf-ssh-selftest.patch - openssl-kdf-tls-selftest.patch - openssl-s_client-check-ocsp-status.patch * Modify patches: - openssl-1.1.1-fips.patch - openssl-1_1-FIPS-fix-error-reason-codes.patch * Remove patches: - openssl-add_rfc3526_rfc7919.patch - openssl-fips-dont_run_FIPS_module_installed.patch - openssl-fips_fix_selftests_return_value.patch * Add build and runtime dependency on jitterentropy - Pass over with spec-cleaner- Security fix: (bsc#1213853, CVE-2023-3817) * Fix excessive time spent checking DH q parameter value (bsc#1213853, CVE-2023-3817). The function DH_check() performs various checks on DH parameters. After fixing CVE-2023-3446 it was discovered that a large q parameter value can also trigger an overly long computation during some of these checks. A correct q value, if present, cannot be larger than the modulus p parameter, thus it is unnecessary to perform these checks if q is larger than p. If DH_check() is called with such q parameter value, DH_CHECK_INVALID_Q_VALUE return flag is set and the computationally intensive checks are skipped. * Add openssl-1_1-CVE-2023-3817.patch - Update to 1.1.1v: * Fix DH_check() excessive time with over sized modulus (bsc#1213487, CVE-2023-3446). The function DH_check() performs various checks on DH parameters. One of those checks confirms that the modulus ("p" parameter) is not too large. Trying to use a very large modulus is slow and OpenSSL will not normally use a modulus which is over 10,000 bits in length. However the DH_check() function checks numerous aspects of the key or parameters that have been supplied. Some of those checks use the supplied modulus value even if it has already been found to be too large. A new limit has been added to DH_check of 32,768 bits. Supplying a key/parameters with a modulus over this size will simply cause DH_check() to fail. * Update openssl.keyring with the OTC members that sign releases * Rebase openssl-1_1-openssl-config.patch * Remove security patches fixed upstream: - openssl-CVE-2023-3446.patch - openssl-CVE-2023-3446-test.patch- Dont pass zero length input to EVP_Cipher because assembler optimized AES cannot handle zero size. [bsc#1213517] * Add openssl-dont-pass-zero-length-input-to-EVP_Cipher.patch- Security fix: [bsc#1213487, CVE-2023-3446] * Fix DH_check() excessive time with over sized modulus. * The function DH_check() performs various checks on DH parameters. One of those checks confirms that the modulus ("p" parameter) is not too large. Trying to use a very large modulus is slow and OpenSSL will not normally use a modulus which is over 10,000 bits in length. However the DH_check() function checks numerous aspects of the key or parameters that have been supplied. Some of those checks use the supplied modulus value even if it has already been found to be too large. A new limit has been added to DH_check of 32,768 bits. Supplying a key/parameters with a modulus over this size will simply cause DH_check() to fail. * Add openssl-CVE-2023-3446.patch openssl-CVE-2023-3446-test.patch- Security Fix: [bsc#1207534, CVE-2022-4304] * Reworked the Fix for the Timing Oracle in RSA Decryption The previous fix for this timing side channel turned out to cause a severe 2-3x performance regression in the typical use case compared to 1.1.1s. * Add openssl-CVE-2022-4304.patch * Removed patches: - openssl-CVE-2022-4304-1of2.patch - openssl-CVE-2022-4304-2of2.patch * Refreshed patches: - openssl-CVE-2023-0464.patch - openssl-CVE-2023-0465.patch- Update to 1.1.1u: * Mitigate for the time it takes for `OBJ_obj2txt` to translate gigantic OBJECT IDENTIFIER sub-identifiers to canonical numeric text form. OBJ_obj2txt() would translate any size OBJECT IDENTIFIER to canonical numeric text form. For gigantic sub-identifiers, this would take a very long time, the time complexity being O(n^2) where n is the size of that sub-identifier. (CVE-2023-2650, bsc#1211430) To mitigitate this, `OBJ_obj2txt()` will only translate an OBJECT IDENTIFIER to canonical numeric text form if the size of that OBJECT IDENTIFIER is 586 bytes or less, and fail otherwise. The basis for this restriction is RFC 2578 (STD 58), section 3.5. OBJECT IDENTIFIER values, which stipulates that OBJECT IDENTIFIERS may have at most 128 sub-identifiers, and that the maximum value that each sub- identifier may have is 2^32-1 (4294967295 decimal). For each byte of every sub-identifier, only the 7 lower bits are part of the value, so the maximum amount of bytes that an OBJECT IDENTIFIER with these restrictions may occupy is 32 * 128 / 7, which is approximately 586 bytes. Ref: https://datatracker.ietf.org/doc/html/rfc2578#section-3.5 * Reworked the Fix for the Timing Oracle in RSA Decryption (CVE-2022-4304, bsc#1207534). The previous fix for this timing side channel turned out to cause a severe 2-3x performance regression in the typical use case compared to 1.1.1s. The new fix uses existing constant time code paths, and restores the previous performance level while fully eliminating all existing timing side channels. The fix was developed by Bernd Edlinger with testing support by Hubert Kario. * Corrected documentation of X509_VERIFY_PARAM_add0_policy() to mention that it does not enable policy checking. Thanks to David Benjamin for discovering this issue. (CVE-2023-0466, bsc#1209873) * Corrected documentation of X509_VERIFY_PARAM_add0_policy() to mention that it does not enable policy checking. Thanks to David Benjamin for discovering this issue. (CVE-2023-0466, bsc#1209873) * Fixed an issue where invalid certificate policies in leaf certificates are silently ignored by OpenSSL and other certificate policy checks are skipped for that certificate. A malicious CA could use this to deliberately assert invalid certificate policies in order to circumvent policy checking on the certificate altogether. (CVE-2023-0465, bsc#1209878) * Limited the number of nodes created in a policy tree to mitigate against CVE-2023-0464. The default limit is set to 1000 nodes, which should be sufficient for most installations. If required, the limit can be adjusted by setting the OPENSSL_POLICY_TREE_NODES_MAX build time define to a desired maximum number of nodes or zero to allow unlimited growth. (CVE-2023-0464, bsc#1209624) * Rebased patch openssl-1_1-openssl-config.patch * Removed patches: - openssl-CVE-2023-0464.patch - openssl-CVE-2023-0465.patch - openssl-CVE-2023-0466.patch * Update openssl.keyring with key A21F AB74 B008 8AA3 6115 2586 B8EF 1A6B A9DA 2D5C (Tomas Mraz)- Update further expiring certificates that affect tests [bsc#1201627] * Add openssl-Update-further-expiring-certificates.patch- FIPS: Merge libopenssl1_1-hmac package into the library [bsc#1185116]- Security Fix: [CVE-2023-2650, bsc#1211430] * Possible DoS translating ASN.1 object identifiers * Add openssl-CVE-2023-2650.patch- Security Fix: [CVE-2023-0465, bsc#1209878] * Invalid certificate policies in leaf certificates are silently ignored * Add openssl-CVE-2023-0465.patch - Security Fix: [CVE-2023-0466, bsc#1209873] * Certificate policy check not enabled * Add openssl-CVE-2023-0466.patch- Security Fix: [CVE-2023-0464, bsc#1209624] * Excessive Resource Usage Verifying X.509 Policy Constraints * Add openssl-CVE-2023-0464.patch- FIPS: Service-level indicator [bsc#1208998] * Add additional check required by FIPS 140-3. Minimum values for PBKDF2 are: 112 bits for key, 128 bits for salt, 1000 for iteration count and 20 characters for password. * Add openssl-1_1-ossl-sli-008-pbkdf2-salt_pass_iteration.patch- FIPS: Serialize jitterentropy calls [bsc#1207994] * Add openssl-1_1-serialize-jitterentropy-calls.patch- Update to 1.1.1t: * Fixed X.400 address type confusion in X.509 GeneralName. There is a type confusion vulnerability relating to X.400 address processing inside an X.509 GeneralName. X.400 addresses were parsed as an ASN1_STRING but subsequently interpreted by GENERAL_NAME_cmp as an ASN1_TYPE. This vulnerability may allow an attacker who can provide a certificate chain and CRL (neither of which need have a valid signature) to pass arbitrary pointers to a memcmp call, creating a possible read primitive, subject to some constraints. Refer to the advisory for more information. Thanks to David Benjamin for discovering this issue. [bsc#1207533, CVE-2023-0286] This issue has been fixed by changing the public header file definition of GENERAL_NAME so that x400Address reflects the implementation. It was not possible for any existing application to successfully use the existing definition; however, if any application references the x400Address field (e.g. in dead code), note that the type of this field has changed. There is no ABI change. * Fixed Use-after-free following BIO_new_NDEF. The public API function BIO_new_NDEF is a helper function used for streaming ASN.1 data via a BIO. It is primarily used internally to OpenSSL to support the SMIME, CMS and PKCS7 streaming capabilities, but may also be called directly by end user applications. The function receives a BIO from the caller, prepends a new BIO_f_asn1 filter BIO onto the front of it to form a BIO chain, and then returns the new head of the BIO chain to the caller. Under certain conditions, for example if a CMS recipient public key is invalid, the new filter BIO is freed and the function returns a NULL result indicating a failure. However, in this case, the BIO chain is not properly cleaned up and the BIO passed by the caller still retains internal pointers to the previously freed filter BIO. If the caller then goes on to call BIO_pop() on the BIO then a use-after-free will occur. This will most likely result in a crash. [bsc#1207536, CVE-2023-0215] * Fixed Double free after calling PEM_read_bio_ex. The function PEM_read_bio_ex() reads a PEM file from a BIO and parses and decodes the "name" (e.g. "CERTIFICATE"), any header data and the payload data. If the function succeeds then the "name_out", "header" and "data" arguments are populated with pointers to buffers containing the relevant decoded data. The caller is responsible for freeing those buffers. It is possible to construct a PEM file that results in 0 bytes of payload data. In this case PEM_read_bio_ex() will return a failure code but will populate the header argument with a pointer to a buffer that has already been freed. If the caller also frees this buffer then a double free will occur. This will most likely lead to a crash. The functions PEM_read_bio() and PEM_read() are simple wrappers around PEM_read_bio_ex() and therefore these functions are also directly affected. These functions are also called indirectly by a number of other OpenSSL functions including PEM_X509_INFO_read_bio_ex() and SSL_CTX_use_serverinfo_file() which are also vulnerable. Some OpenSSL internal uses of these functions are not vulnerable because the caller does not free the header argument if PEM_read_bio_ex() returns a failure code. [bsc#1207538, CVE-2022-4450] [Kurt Roeckx, Matt Caswell] * Fixed Timing Oracle in RSA Decryption. A timing based side channel exists in the OpenSSL RSA Decryption implementation which could be sufficient to recover a plaintext across a network in a Bleichenbacher style attack. To achieve a successful decryption an attacker would have to be able to send a very large number of trial messages for decryption. The vulnerability affects all RSA padding modes: PKCS#1 v1.5, RSA-OEAP and RSASVE. [bsc#1207534, CVE-2022-4304] * Rebased openssl-1_1-openssl-config.patch * Update openssl.keyring with key 7953 AC1F BC3D C8B3 B292 393E D5E9 E43F 7DF9 EE8C (Richard Levitte)- Security Fix: [bsc#1207533, CVE-2023-0286] * Fix X.400 address type confusion in X.509 GENERAL_NAME_cmp for x400Address * Add openssl-CVE-2023-0286.patch- Security Fix: [bsc#1207536, CVE-2023-0215] * Use-after-free following BIO_new_NDEF() * Add patches: - openssl-CVE-2023-0215-1of4.patch - openssl-CVE-2023-0215-2of4.patch - openssl-CVE-2023-0215-3of4.patch - openssl-CVE-2023-0215-4of4.patch- Security Fix: [bsc#1207538, CVE-2022-4450] * Double free after calling PEM_read_bio_ex() * Add patches: - openssl-CVE-2022-4450-1of2.patch - openssl-CVE-2022-4450-2of2.patch- Security Fix: [bsc#1207534, CVE-2022-4304] * Timing Oracle in RSA Decryption * Add patches: - openssl-CVE-2022-4304-1of2.patch - openssl-CVE-2022-4304-2of2.patch- POWER10 performance enhancements for cryptography [jsc#PED-512] * openssl-1_1-AES-GCM-performance-optimzation-with-stitched-method.patch * openssl-1_1-Fixed-counter-overflow.patch * openssl-1_1-chacha20-performance-optimizations-for-ppc64le-with-.patch * openssl-1_1-Fixed-conditional-statement-testing-64-and-256-bytes.patch * openssl-1_1-Fix-AES-GCM-on-Power-8-CPUs.patch- FIPS: Service-level indicator [bsc#1190651] * Mark PBKDF2 with key shorter than 112 bits as non-approved * Add openssl-1_1-ossl-sli-007-pbkdf2-keylen.patch- FIPS: Service-level indicator [bsc#1190651] * Consider RSA siggen/sigver with PKCS1 padding also approved * Add openssl-1_1-ossl-sli-006-rsa_pkcs1_padding.patch- FIPS: Service-level indicator [bsc#1190651] * Return the correct indicator for a given EC group order bits * Add openssl-1_1-ossl-sli-005-EC_group_order_bits.patch- Updated openssl.keyring with key A21FAB74B0088AA361152586B8EF1A6BA9DA2D5C - Update to 1.1.1s: * Fixed a regression introduced in 1.1.1r version not refreshing the certificate data to be signed before signing the certificate. - Update to 1.1.1r: * Fixed the linux-mips64 Configure target which was missing the SIXTY_FOUR_BIT bn_ops flag. This was causing heap corruption on that platform. * Fixed a strict aliasing problem in bn_nist. Clang-14 optimisation was causing incorrect results in some cases as a result. * Fixed SSL_pending() and SSL_has_pending() with DTLS which were failing to report correct results in some cases * Fixed a regression introduced in 1.1.1o for re-signing certificates with different key sizes * Added the loongarch64 target * Fixed a DRBG seed propagation thread safety issue * Fixed a memory leak in tls13_generate_secret * Fixed reported performance degradation on aarch64. Restored the implementation prior to commit 2621751 ("aes/asm/aesv8-armx.pl: avoid 32-bit lane assignment in CTR mode") for 64bit targets only, since it is reportedly 2-17% slower and the silicon errata only affects 32bit targets. The new algorithm is still used for 32 bit targets. * Added a missing header for memcmp that caused compilation failure on some platforms- FIPS: Add a missing dependency on jitterentropy-devel for libopenssl-1_1-devel [bsc#1202148]- FIPS: OpenSSL service-level indicator - Allow AES XTS 256 [bsc#1190651] * Add patches: openssl-1_1-ossl-sli-004-allow-aes-xts-256.patch- FIPS: Default to RFC-7919 groups for genparam and dhparam * Add openssl-1_1-FIPS-default-RFC7919.patch [bsc#1180995]- FIPS: list only FIPS approved digest and public key algorithms [bsc#1121365, bsc#1190888, bsc#1193859, bsc#1198471, bsc#1198472] * Add openssl-1_1-fips-list-only-approved-digest-and-pubkey-algorithms.patch * Disabled test 15-test_ec.t in FIPS mode- FIPS: Add KAT for the RAND_DRBG implementation [bsc#1203069] * Add openssl-1_1-fips-drbg-selftest.patch- FIPS: openssl: RAND api should call into FIPS DRBG [bsc#1201293] * The FIPS_drbg implementation is not FIPS validated anymore. To provide backwards compatibility for applications that need FIPS compliant RNG number generation and use FIPS_drbg_generate, this function was re-wired to call the FIPS validated DRBG instance instead through the RAND_bytes() call. * Add openssl-1_1-FIPS_drbg-rewire.patch- Fix memory leaks introduced by openssl-1.1.1-fips.patch [bsc#1203046] * Add patch openssl-1.1.1-fips-fix-memory-leaks.patch- FIPS: OpenSSL: Port openssl to use jitterentropy [bsc#1202148, jsc#SLE-24941] * Add openssl-1_1-jitterentropy-3.4.0.patch * Add build dependency on jitterentropy-devel >= 3.4.0 and libjitterentropy3 >= 3.4.0- FIPS: OpenSSL Provide a service-level indicator [bsc#1190651] * Add patches: - openssl-1_1-ossl-sli-000-fix-build-error.patch - openssl-1_1-ossl-sli-001-fix-faults-preventing-make-update.patch - openssl-1_1-ossl-sli-002-ran-make-update.patch - openssl-1_1-ossl-sli-003-add-sli.patch- FIPS: Add zeroization of temporary variables to the hmac integrity function FIPSCHECK_verify(). [bsc#1190653] * Add openssl-1_1-Zeroization.patch- update to 1.1.1q: * [CVE-2022-2097, bsc#1201099] * Addresses situations where AES OCB fails to encrypt some bytes- Encrypt the sixteen bytes that were unencrypted in some circumstances on 32-bit x86 platforms. * [bsc#1201099, CVE-2022-2097] * added openssl-CVE-2022-2097.patch- Update to 1.1.1p: * bsc#1185637 - updated certificates required for testing that failed when date is later than 1 June 2022 - removed openssl-update_expired_certificates.patch * [bsc#1200550, CVE-2022-2068] - more shell code injection issues in c_rehash- Added openssl-1_1-Fix-file-operations-in-c_rehash.patch * bsc#1200550 * CVE-2022-2068 * Fixed more shell code injection issues in c_rehash- Update to 1.1.1o: [CVE-2022-1292, bsc#1199166] * Fixed a bug in the c_rehash script which was not properly sanitising shell metacharacters to prevent command injection. * Rebased openssl-s390x-assembly-pack-add-OPENSSL_s390xcap-environment.patch * Rebased openssl-s390x-assembly-pack-add-support-for-pcc-and-kma-inst.patch - Added openssl-update_expired_certificates.patch * Openssl failed tests because of expired certificates. * bsc#1185637 * Sourced from https://github.com/openssl/openssl/pull/18446/commits- Added openssl-update_expired_certificates.patch * Openssl failed tests because of expired certificates. * bsc#1185637 * Sourced from https://github.com/openssl/openssl/pull/18446/commits- Security fix: [bsc#1199166, CVE-2022-1292] * Added: openssl-CVE-2022-1292.patch * properly sanitise shell metacharacters in c_rehash script.- FIPS: Added signature verification test to bsc1185319-FIPS-KAT-for-ECDSA.patch- FIPS: add bsc1185319-FIPS-KAT-for-ECDSA.patch * Known answer test for ECDSA * bsc#1185319 - FIPS: add bsc1198207-FIPS-add-hash_hmac-drbg-kat.patch * Enable tests for Deterministic Random Bit Generator * bsc#1198207 - Bypass a regression test that fails in FIPS mode. * [openssl-1_1-shortcut-test_afalg_aes_cbc.patch]- FIPS: Additional PBKDF2 requirements for KAT [bsc#1197280] * The IG 10.3.A and SP800-132 require some minimum parameters for the salt length, password length and iteration count. These parameters should be also used in the KAT. * Add openssl-1_1-FIPS-PBKDF2-KAT-requirements.patch- Security Fix: [bsc#1196877, CVE-2022-0778] * Infinite loop in BN_mod_sqrt() reachable when parsing certificates * Add openssl-CVE-2022-0778.patch openssl-CVE-2022-0778-tests.patch- Added openssl-1_1-use-include-directive.patch so that the default /etc/ssl/openssl.cnf file will include any configuration files that other packages might place into /etc/ssl/engines.d/ and /etc/ssl/engdef.d/ This is a fix for bsc#1004463 where scripting was being used to modify the openssl.cnf file. The scripting would fail if either the default openssl.cnf file, or the sample openssl-ibmca configuration file would be changed by upstream. - Updated spec file to create the two new necessary directores for the above patch. [bsc#1194187, bsc#1004463]- FIPS: add openssl-1_1-fips-bsc1190652_release_num_in_version_string.patch * bsc#1190652 - Provide a service to output module name/identifier and version- Security fix: [bsc#1192820, CVE-2002-20001] * Fix DHEATER: The Diffie-Hellman Key Agreement Protocol allows remote attackers (from the client side) to send arbitrary numbers that are actually not public keys, and trigger expensive server-side DHE calculation. * Stop recommending the DHE in SSL_DEFAULT_SUSE_CIPHER_LIST * Rebase openssl-DEFAULT_SUSE_cipher.patch- FIPS: Reintroduce the FFC and ECC checks in openssl-DH.patch that were removed in the update to 1.1.1l [bsc#1185313]- FIPS: Fix sn_objs and ln_objs in crypto/objects/obj_mac.num * Rebase openssl-DH.patch [bsc#1194327] - Merge openssl-keep_EVP_KDF_functions_version.patch into openssl-1.1.1-evp-kdf.patch - Add function codes for pbkdf2, hkdf, tls and ssh selftests. Rebase patches: * openssl-fips-kdf-hkdf-selftest.patch * openssl-kdf-selftest.patch * openssl-kdf-ssh-selftest.patch * openssl-kdf-tls-selftest.patch- Pull libopenssl-1_1 when updating openssl-1_1 with the same version. [bsc#1195792]- FIPS: Fix function and reason error codes [bsc#1182959] * Add openssl-1_1-FIPS-fix-error-reason-codes.patch- Enable zlib compression support [bsc#1195149]- Remove the openssl-has-RSA_get0_pss_params provides as it is now fixed in the nodejs16 side [bsc#1192489]- FIPS: Move the HMAC-SHA2-256 used for integrity test [bsc#1185320] * Add openssl-FIPS-KAT-before-integrity-tests.patch- FIPS: Add missing KAT for HKDF/TLS 1.3/IPSEC IKEv2 [bsc#1192442] * Add openssl-fips-kdf-hkdf-selftest.patch- Add a provides for openssl-has-RSA_get0_pss_params as required by nodejs16. [bsc#1192489]- Backport cryptographic improvements from OpenSSL 3 [jsc#SLE-19742] * Optimize RSA on armv8: openssl-1_1-Optimize-RSA-armv8.patch * Optimize AES-XTS mode for aarch64: openssl-1_1-Optimize-AES-XTS-aarch64.patch * Optimize AES-GCM for uarchs with unroll and new instructions: openssl-1_1-Optimize-AES-GCM-uarchs.patch- Update to 1.1.1m: * Avoid loading of a dynamic engine twice. * Prioritise DANE TLSA issuer certs over peer certs - Rebased patches: * openssl-1.1.1-evp-kdf.patch * openssl-1.1.1-system-cipherlist.patch- Add support for livepatches (jsc#SLE-20049). - Generate ipa-clones tarball artifact when livepatching is enabled.- POWER10 performance enhancements for cryptography [jsc#SLE-18136] * openssl-1_1-Optimize-ppc64.patch- Drop openssl-no-date.patch Upstream added support for reproducible builds via SOURCE_DATE_EPOCH in https://github.com/openssl/openssl/commit/8a8d9e190533ee41e8b231b18c7837f98f1ae231 thereby making this patch obsolete as builds *should* still be reproducible.- Import centralized crypto policy profile from Factory [jsc#SLE-15832] * openssl-1.1.1-system-cipherlist.patch * openssl-1_1-disable-test_srp-sslapi.patch * openssl-1_1-seclevel.patch * openssl-1_1-use-seclevel2-in-tests.patch- Update to openssl-1.1.1l ('L' as in 'Lima') for SUSE-SLE-15-SP4 * jsc#SLE-19640, jsc#PM-2816 - Changes in 1.1.1l: * [bsc#1189520, CVE-2021-3711] Fixed an SM2 Decryption Buffer Overflow. * [bsc#1189521, CVE-2021-3712] Fixed various read buffer overruns processing ASN.1 strings - Changes in 1.1.1k * Fixed a problem with verifying a certificate chain when using the X509_V_FLAG_X509_STRICT flag. This flag enables additional security checks of the certificates present in a certificate chain. It is not set by default. ([CVE-2021-3450]) [bsc#1183851] * Fixed an issue where an OpenSSL TLS server may crash if sent a maliciously crafted renegotiation ClientHello message from a client. If a TLSv1.2 renegotiation ClientHello omits the signature_algorithms extension (where it was present in the initial ClientHello), but includes a signature_algorithms_cert extension then a NULL pointer dereference will result, leading to a crash and a denial of service attack. A server is only vulnerable if it has TLSv1.2 and renegotiation enabled (which is the default configuration). OpenSSL TLS clients are not impacted by this issue. ([CVE-2021-3449]) [bsc#1183852] - Changes in 1.1.1j * Fixed the X509_issuer_and_serial_hash() function. It attempts to create a unique hash value based on the issuer and serial number data contained within an X509 certificate. However it was failing to correctly handle any errors that may occur while parsing the issuer field [bsc#1182331, CVE-2021-23841] * Fixed the RSA_padding_check_SSLv23() function and the RSA_SSLV23_PADDING padding mode to correctly check for rollback attacks. * Fixed the EVP_CipherUpdate, EVP_EncryptUpdate and EVP_DecryptUpdate functions. Previously they could overflow the output length argument in some cases where the input length is close to the maximum permissable length for an integer on the platform. In such cases the return value from the function call would be 1 (indicating success), but the output length value would be negative. This could cause applications to behave incorrectly or crash. [bsc#1182333, CVE-2021-23840] * Fixed SRP_Calc_client_key so that it runs in constant time. The previous implementation called BN_mod_exp without setting BN_FLG_CONSTTIME. This could be exploited in a side channel attack to recover the password. Since the attack is local host only this is outside of the current OpenSSL threat model and therefore no CVE is assigned. - Changes in 1.1.1i * Fixed NULL pointer deref in GENERAL_NAME_cmp * bsc#1179491, CVE-2020-1971 - Changes in 1.1.1h * Disallow explicit curve parameters in verifications chains when X509_V_FLAG_X509_STRICT is used * Enable 'MinProtocol' and 'MaxProtocol' to configure both TLS and DTLS contexts - Changes in 1.1.1g * Fixed segmentation fault in SSL_check_chain (CVE-2020-1967, bsc#1169407) Server or client applications that call the SSL_check_chain() function during or after a TLS 1.3 handshake may crash due to a NULL pointer dereference as a result of incorrect handling of the "signature_algorithms_cert" TLS extension. The crash occurs if an invalid or unrecognised signature algorithm is received from the peer. This could be exploited by a malicious peer in a Denial of Service attack. * Added AES consttime code for no-asm configurations an optional constant time support for AES was added when building openssl for no-asm. - Changes in 1.1.1f * Revert the unexpected EOF reporting via SSL_ERROR_SSL - Changes in 1.1.1e * Properly detect EOF while reading in libssl. Previously if we hit an EOF while reading in libssl then we would report an error back to the application (SSL_ERROR_SYSCALL) but errno would be 0. We now add an error to the stack (which means we instead return SSL_ERROR_SSL) and therefore give a hint as to what went wrong. * Check that ed25519 and ed448 are allowed by the security level. Previously signature algorithms not using an MD were not being checked that they were allowed by the security level. * Fixed SSL_get_servername() behaviour. The behaviour of SSL_get_servername() was not quite right. The behaviour was not consistent between resumption and normal handshakes, and also not quite consistent with historical behaviour. The behaviour in various scenarios has been clarified and it has been updated to make it match historical behaviour as closely as possible. * Corrected the documentation of the return values from the EVP_DigestSign* set of functions. The documentation mentioned negative values for some errors, but this was never the case, so the mention of negative values was removed. * Added a new method to gather entropy on VMS, based on SYS$GET_ENTROPY. The presence of this system service is determined at run-time. * Added newline escaping functionality to a filename when using openssl dgst. This output format is to replicate the output format found in the '*sum' checksum programs. This aims to preserve backward compatibility. * Print all values for a PKCS#12 attribute with 'openssl pkcs12', not just the first value. - Dropped the following patches: * openssl-1_1-CVE-2019-1551.patch * openssl-fips-dont_run_FIPS_module_installed.patch * openssl-fips_fix_selftests_return_value.patch * openssl-CVE-2020-1967.patch * openssl-CVE-2020-1967-test1.patch * openssl-CVE-2020-1967-test2.patch * openssl-CVE-2020-1967-test3.patch * openssl-CVE-2020-1971.patch * openssl-CVE-2021-23840.patch * openssl-CVE-2021-23841.patch * openssl-1_1-CVE-2021-3449-NULL_pointer_deref_in_signature_algorithms.patch * openssl-1.1.1-fips_list_ciphers.patch * CVE-2021-3711-1-Correctly-calculate-the-length-of-SM2-plaintext-give.patch * CVE-2021-3711-2-Extend-tests-for-SM2-decryption.patch * CVE-2021-3711-3-Check-the-plaintext-buffer-is-large-enough-when-decr.patch * CVE-2021-3712-Fix-read-buffer-overrun-in-X509_aux_print.patch * CVE-2021-3712-other-ASN1_STRING-issues.patch - Rebased the following patches: * 0002-crypto-chacha-asm-chacha-s390x.pl-add-vx-code-path.patch * 0003-crypto-poly1305-asm-poly1305-s390x.pl-add-vx-code-pa.patch * openssl-1.1.0-issuer-hash.patch * openssl-1.1.0-no-html.patch * openssl-1.1.1-evp-kdf.patch * openssl-1.1.1-fips-crng-test.patch * openssl-1.1.1-fips-post-rand.patch * openssl-1.1.1-fips.patch * openssl-1.1.1-ssh-kdf.patch * openssl-DH.patch * openssl-Enable-curve-spefific-ECDSA-implementations-via-EC_M.patch * openssl-assembly-pack-accelerate-scalar-multiplication.patch * openssl-fips_selftest_upstream_drbg.patch * openssl-kdf-selftest.patch * openssl-kdf-ssh-selftest.patch * openssl-kdf-tls-selftest.patch * openssl-s390x-assembly-pack-accelerate-ECDSA.patch * openssl-s390x-assembly-pack-accelerate-X25519-X448-Ed25519-and-Ed448.patch * openssl-s390x-assembly-pack-add-OPENSSL_s390xcap-environment.patch * openssl-s390x-fix-x448-and-x448-test-vector-ctime-for-x25519-and-x448.patch- Other OpenSSL functions that print ASN.1 data have been found to assume that the ASN1_STRING byte array will be NUL terminated, even though this is not guaranteed for strings that have been directly constructed. Where an application requests an ASN.1 structure to be printed, and where that ASN.1 structure contains ASN1_STRINGs that have been directly constructed by the application without NUL terminating the "data" field, then a read buffer overrun can occur. * CVE-2021-3712 continued * bsc#1189521 * Add CVE-2021-3712-other-ASN1_STRING-issues.patch * Sourced from openssl-CVE-2021-3712.tar.bz2 posted on bsc-1189521 2021-08-24 00:47 PDT by Marcus Meissner- A bug in the implementation of the SM2 decryption code means that the calculation of the buffer size required to hold the plaintext returned by the first call to EVP_PKEY_decrypt() can be smaller than the actual size required by the second call. This can lead to a buffer overflow when EVP_PKEY_decrypt() is called by the application a second time with a buffer that is too small. * CVE-2021-3711 * bsc#1189520 * Add: CVE-2021-3711-1-Correctly-calculate-the-length-of-SM2-plaintext-give.patch CVE-2021-3711-2-Extend-tests-for-SM2-decryption.patch CVE-2021-3711-3-Check-the-plaintext-buffer-is-large-enough-when-decr.patch - The function X509_aux_print() has a bug which may cause a read buffer overrun when printing certificate details. A malicious actor could construct a certificate to deliberately hit this bug, which may result in a crash of the application (causing a Denial of Service attack). * CVE-2021-3712 * bsc#1189521 * Add CVE-2021-3712-Fix-read-buffer-overrun-in-X509_aux_print.patch- Don't list disapproved cipher algorithms while in FIPS mode * openssl-1.1.1-fips_list_ciphers.patch * bsc#1161276- Fix NULL pointer deref in signature_algorithms * CVE-2021-3449 * bsc#1183852 * Add openssl-1_1-CVE-2021-3449-NULL_pointer_deref_in_signature_algorithms.patch- Security fixes: * Integer overflow in CipherUpdate: Incorrect SSLv2 rollback protection [bsc#1182333, CVE-2021-23840] * Null pointer deref in X509_issuer_and_serial_hash() [bsc#1182331, CVE-2021-23841] - Add openssl-CVE-2021-23840.patch openssl-CVE-2021-23841.patch- Fix unresolved error codes [bsc#1182959] - Update openssl-1.1.1-fips.patch- Fix EDIPARTYNAME NULL pointer dereference (CVE-2020-1971, bsc#1179491) * add openssl-CVE-2020-1971.patch- Restore private key check in EC_KEY_check_key [bsc#1177479] * Update openssl-DH.patch- Add shared secret KAT to FIPS DH selftest [bsc#1175844] * add openssl-fips-DH_selftest_shared_secret_KAT.patch- Include ECDH/DH Requirements from SP800-56Arev3 [bsc#1175844, bsc#1173470] - Add patches: * openssl-DH.patch * openssl-kdf-selftest.patch * openssl-kdf-tls-selftest.patch * openssl-kdf-ssh-selftest.patch- Security fix: [bsc#1169407, CVE-2020-1967] * Segmentation fault in SSL_check_chain: Server applications that call the SSL_check_chain() function during or after a TLS handshake may crash due to a NULL pointer dereference as a result of incorrect handling of the signature_algorithms_cert TLS extension. - Add patches: * openssl-CVE-2020-1967.patch * openssl-CVE-2020-1967-test1.patch * openssl-CVE-2020-1967-test2.patch * openssl-CVE-2020-1967-test3.patch- openssl dgst: default to SHA256 only when called without a digest, not when it couldn't be found (bsc#1166189) * add openssl-unknown_dgst.patch- Limit the DRBG selftests to not deplete entropy (bsc#1165274) * update openssl-fips_selftest_upstream_drbg.patch- Run FIPS DRBG selftests against the crypto/rand DRBG implementation (bsc#1164557) * add openssl-fips_selftest_upstream_drbg.patch- Use the newly build libcrypto shared library when computing the hmac checksums in order to avoid a bootstrapping issue by BuildRequiring libopenssl1_1 (bsc#1164102)- Fix wrong return values of FIPS DSA and ECDH selftests (bsc#1163569) * add openssl-fips_fix_selftests_return_value.patch- Added SHA3 FIPS self-tests bsc#1155345 * openssl-fips-add-SHA3-selftest.patch- Support for CPACF enhancements - part 2 (crypto) [jsc#SLE-7403] - Add patches: * openssl-s390x-assembly-pack-accelerate-X25519-X448-Ed25519-and-Ed448.patch * openssl-s390x-fix-x448-and-x448-test-vector-ctime-for-x25519-and-x448.patch- Temporarily ignore broken OPENSSL_INIT_NO_ATEXIT due to our layered FIPS initialization (bsc#1161789) * openssl-fips-ignore_broken_atexit_test.patch- Import FIPS patches from SLE-15 * openssl-fips-dont_run_FIPS_module_installed.patch * openssl-fips_mode.patch * openssl-ship_fips_standalone_hmac.patch * openssl-fips-clearerror.patch * openssl-fips-selftests_in_nonfips_mode.patch- Don't run FIPS power-up self-tests when the checksum files aren't installed (bsc#1042392) * add openssl-fips-run_selftests_only_when_module_is_complete.patch- Import FIPS patches from Fedora (bsc#1157702, jsc#SLE-9553) * openssl-1.1.1-fips-crng-test.patch * openssl-1.1.1-fips-post-rand.patch * openssl-1.1.1-fips.patch * openssl-1.1.0-issuer-hash.patch * openssl-1.1.1-evp-kdf.patch * openssl-1.1.1-ssh-kdf.patch replaces openssl-jsc-SLE-8789-backport_KDF.patch - keep EVP_KDF functions at version 1.1.1d for backward compatibility * add openssl-keep_EVP_KDF_functions_version.patch- Support for CPACF enhancements - part 1 (crypto) [bsc#1152695, jsc#SLE-7861] - Add patches: * openssl-s390x-assembly-pack-add-OPENSSL_s390xcap-environment.patch * openssl-s390x-assembly-pack-add-support-for-pcc-and-kma-inst.patch * openssl-s390x-assembly-pack-add-OPENSSL_s390xcap-man-page.patch * openssl-s390x-assembly-pack-update-OPENSSL_s390xcap-3.patch * openssl-s390xcpuid.pl-fix-comment.patch * openssl-assembly-pack-accelerate-scalar-multiplication.patch * openssl-Enable-curve-spefific-ECDSA-implementations-via-EC_M.patch * openssl-s390x-assembly-pack-accelerate-ECDSA.patch * openssl-OPENSSL_s390xcap.pod-list-msa9-facility-bit-155.patch * openssl-s390x-assembly-pack-cleanse-only-sensitive-fields.patch * openssl-s390x-assembly-pack-fix-OPENSSL_s390xcap-z15-cpu-mas.patch * openssl-s390x-assembly-pack-fix-msa3-stfle-bit-detection.patch * openssl-Fix-9bf682f-which-broke-nistp224_method.patch- Obsolete libopenssl-1_0_0-devel and libopenssl-1_0_0-hmac in order to avoid conflict upon upgrade from SLE-12 (bsc#1158499)- Security fix: [bsc#1158809, CVE-2019-1551] * Overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli - Add openssl-1_1-CVE-2019-1551.patch- Fixed EVP_PBE_scrypt() to allow NULL salt values. * Revealed by nodejs12 during bsc#1149572. * Modified openssl-jsc-SLE-8789-backport_KDF.patch- Update to 1.1.1d (bsc#1133925, jsc#SLE-6430) * Fixed a fork protection issue. OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. (bsc#1150247, CVE-2019-1549) * Compute ECC cofactors if not provided during EC_GROUP construction. Before this change, EC_GROUP_set_generator would accept order and/or cofactor as NULL. After this change, only the cofactor parameter can be NULL. (bsc#1150003, CVE-2019-1547) * Fixed a padding oracle in PKCS7_dataDecode and CMS_decrypt_set1_pkey. (bsc#1150250, CVE-2019-1563) * For built-in EC curves, ensure an EC_GROUP built from the curve name is used even when parsing explicit parameters, when loading a serialized key or calling EC_GROUP_new_from_ecpkparameters()/EC_GROUP_new_from_ecparameters(). * Early start up entropy quality from the DEVRANDOM seed source has been improved for older Linux systems. * Changed DH_check to accept parameters with order q and 2q subgroups. With order 2q subgroups the bit 0 of the private key is not secret but DH_generate_key works around that by clearing bit 0 of the private key for those. This avoids leaking bit 0 of the private key. * Significantly reduce secure memory usage by the randomness pools. * Revert the DEVRANDOM_WAIT feature for Linux systems - drop 0001-build_SYS_str_reasons-Fix-a-crash-caused-by-overlong.patch (upstream) - refresh patches * openssl-1.1.0-no-html.patch * openssl-jsc-SLE-8789-backport_KDF.patch- To avoid seperate certification of openssh server / client move the SSH KDF (Key Derivation Function) into openssl. * jsc#SLE-8789 * Sourced from commit 8d76481b189b7195ef932e0fb8f0e23ab0120771#diff-a9562bc75317360a2e6b8b0748956e34 in openssl master (introduce the SSH KDF) and commit 5a285addbf39f91d567f95f04b2b41764127950d in openssl master (backport EVP/KDF API framework) * added openssl-jsc-SLE-8789-backport_KDF.patch- Upgrade to 1.1.1c (jsc#SLE-9135, bsc#1148799) * Support for TLSv1.3 added * Allow GNU style "make variables" to be used with Configure. * Add a STORE module (OSSL_STORE) * Claim the namespaces OSSL and OPENSSL, represented as symbol prefixes * Add multi-prime RSA (RFC 8017) support * Add SM3 implemented according to GB/T 32905-2016 * Add SM4 implemented according to GB/T 32907-2016. * Add 'Maximum Fragment Length' TLS extension negotiation and support * Add ARIA support * Add SHA3 * Rewrite of devcrypto engine * Add support for SipHash * Grand redesign of the OpenSSL random generator - drop FIPS support * don't build with FIPS mode (not supported in 1.1.1) - drop FIPS patches * openssl-fips-clearerror.patch * openssl-fips_disallow_ENGINE_loading.patch * openssl-fips-dont-fall-back-to-default-digest.patch * openssl-fips-dont_run_FIPS_module_installed.patch * openssl-fips-fix-odd-rsakeybits.patch * openssl-fips-rsagen-d-bits.patch * openssl-fips-selftests_in_nonfips_mode.patch * openssl-rsakeygen-minimum-distance.patch * openssl-1.1.0-fips.patch - add TLS 1.3 ciphers to DEFAULT_SUSE - merge openssl-1.0.1e-add-suse-default-cipher.patch and openssl-1.0.1e-add-test-suse-default-cipher-suite.patch to openssl-DEFAULT_SUSE_cipher.patch - Use upstream patch for the locale crash (bsc#1135550) * https://github.com/openssl/openssl/pull/8966 * add 0001-build_SYS_str_reasons-Fix-a-crash-caused-by-overlong.patch - drop patches (upstream): * openssl-Bleichenbachers_CAT.patch * openssl-CVE-2018-0734.patch * openssl-CVE-2018-0735.patch * openssl-CVE-2019-1543.patch * openssl-disable_rsa_keygen_tests_with_small_modulus.patch * openssl-dsa_paramgen2_check.patch * openssl-One_and_Done.patch * openssl-speed_skip_binary_curves_NO_EC2M.patch * openssl-static-deps.patch * openssl-urandom-reseeding.patch * 0001-Add-a-constant-time-flag-to-one-of-the-bignums-to-av.patch * 0001-Axe-builtin-printf-implementation-use-glibc-instead.patch * 0001-DSA-mod-inverse-fix.patch * 0001-Resume-reading-from-randfile-when-interrupted-by-a-s.patch * 0001-apps-speed-fix-segfault-while-looking-up-algorithm-n.patch - drop s390x patches (rebased): * 0002-s390x-assembly-pack-add-KMA-code-path-for-aes-ctr.patch * 0003-crypto-aes-asm-aes-s390x.pl-replace-decrypt-flag-by-.patch * 0004-s390x-assembly-pack-add-KMA-code-path-for-aes-gcm.patch * 0005-s390x-assembly-pack-add-KMAC-code-path-for-aes-ccm.patch * 0006-s390x-assembly-pack-add-KM-code-path-for-aes-ecb.patch * 0007-s390x-assembly-pack-add-KMO-code-path-for-aes-ofb.patch * 0008-s390x-assembly-pack-add-KMF-code-path-for-aes-cfb-cf.patch * 0009-Fix-undefined-behavior-in-s390x-aes-gcm-ccm.patch * 0001-crypto-poly1305-asm-poly1305-s390x.pl-add-vx-code-pa.patch * 0001-s390x-assembly-pack-extend-s390x-capability-vector.patch - add s390x patches: * 0001-s390x-assembly-pack-perlasm-support.patch * 0002-crypto-chacha-asm-chacha-s390x.pl-add-vx-code-path.patch * 0003-crypto-poly1305-asm-poly1305-s390x.pl-add-vx-code-pa.patch * 0004-s390x-assembly-pack-fix-formal-interface-bug-in-chac.patch * 0005-s390x-assembly-pack-import-chacha-from-cryptogams-re.patch * 0006-s390x-assembly-pack-import-poly-from-cryptogams-repo.patch- Fix segfault in openssl speed when an unknown algorithm is passed (bsc#1125494) * add 0001-apps-speed-fix-segfault-while-looking-up-algorithm-n.patch - Correctly skip binary curves in openssl speed to avoid spitting errors (bsc#1116833) * add openssl-speed_skip_binary_curves_NO_EC2M.patch- OpenSSL Security Advisory [6 March 2019] * Prevent long nonces in ChaCha20-Poly1305 (bsc#1128189, CVE-2019-1543) * add openssl-CVE-2019-1543.patch- Add s390x poly1305 vectorized implementation (fate#326351) * https://github.com/openssl/openssl/pull/7991 - add 0001-crypto-poly1305-asm-poly1305-s390x.pl-add-vx-code-pa.patch- Add vectorized chacha20 implementation for s390x (fate#326561) * https://github.com/openssl/openssl/pull/6919 - add patches: 0001-s390x-assembly-pack-perlasm-support.patch 0002-crypto-chacha-asm-chacha-s390x.pl-add-vx-code-path.patch- Replace fate#321518 s390x patches from closed pull request https://github.com/openssl/openssl/pull/2859 with patches from openssl git master (bsc#1122984) - add patches: 0001-s390x-assembly-pack-extend-s390x-capability-vector.patch 0002-s390x-assembly-pack-add-KMA-code-path-for-aes-ctr.patch 0003-crypto-aes-asm-aes-s390x.pl-replace-decrypt-flag-by-.patch 0004-s390x-assembly-pack-add-KMA-code-path-for-aes-gcm.patch 0005-s390x-assembly-pack-add-KMAC-code-path-for-aes-ccm.patch 0006-s390x-assembly-pack-add-KM-code-path-for-aes-ecb.patch 0007-s390x-assembly-pack-add-KMO-code-path-for-aes-ofb.patch 0008-s390x-assembly-pack-add-KMF-code-path-for-aes-cfb-cf.patch 0009-Fix-undefined-behavior-in-s390x-aes-gcm-ccm.patch - drop patches: 0002-crypto-modes-asm-ghash-s390x.pl-fix-gcm_gmult_4bit-K.patch 0004-s390x-assembly-pack-add-OPENSSL_s390xcap-environment.patch 0005-s390x-assembly-pack-add-OPENSSL_s390xcap-man-page.patch 0006-s390x-assembly-pack-extended-s390x-capability-vector.patch 0007-crypto-evp-e_aes.c-add-foundations-for-extended-s390.patch 0008-s390x-assembly-pack-extended-s390x-capability-vector.patch 0009-crypto-aes-asm-aes-s390x.pl-add-KMA-code-path.patch 0010-doc-man3-OPENSSL_s390xcap.pod-update-KMA.patch 0011-crypto-aes-asm-aes-s390x.pl-add-CFI-annotations-KMA-.patch 0012-s390x-assembly-pack-add-KMA-code-path-for-aes-gcm.patch 0013-crypto-aes-asm-aes-s390x.pl-add-CFI-annotations-KMA-.patch- Fix FIPS RSA generator (bsc#1118913) * import fixed openssl-1.1.0-fips.patch from Fedora * drop openssl-CVE-2018-0737-fips.patch which got merged into openssl-1.1.0-fips.patch * refresh openssl-fips-rsagen-d-bits.patch- The 9 Lives of Bleichenbacher's CAT: Cache ATtacks on TLS Implementations (bsc#1117951) * https://github.com/openssl/openssl/issues/7739 * add patch openssl-Bleichenbachers_CAT.patch- OpenSSL Security Advisory [30 October 2018] * Timing vulnerability in ECDSA signature generation (bsc#1113651, CVE-2018-0735) * Timing vulnerability in DSA signature generation (bsc#1113652, CVE-2018-0734) * And more timing fixes - Add patches: * openssl-CVE-2018-0734.patch * openssl-CVE-2018-0735.patch * 0001-DSA-mod-inverse-fix.patch * 0001-Add-a-constant-time-flag-to-one-of-the-bignums-to-av.patch- Obsolete libopenssl-1_0_0-devel by libopenssl-1_1-devel to avoid conflicts when updating from older distributions (bsc#1106180)- Fix infinite loop in DSA generation with incorrect parameters (bsc#1112209) * add openssl-dsa_paramgen2_check.patch- Fix One&Done side-channel attack on RSA (bsc#1104789) * add openssl-One_and_Done.patch- Update to 1.1.0i - Align with SLE-12-SP4 OpenSSL Security Advisory [12 June 2018] * Reject excessively large primes in DH key generation (bsc#1097158, CVE-2018-0732) * Make EVP_PKEY_asn1_new() a bit stricter about its input * Revert blinding in ECDSA sign and instead make problematic addition length-invariant. Switch even to fixed-length Montgomery multiplication. * Change generating and checking of primes so that the error rate of not being prime depends on the intended use based on the size of the input. * Increase the number of Miller-Rabin rounds for DSA key generating to 64. * Add blinding to ECDSA and DSA signatures to protect against side channel attacks * When unlocking a pass phrase protected PEM file or PKCS#8 container, we now allow empty (zero character) pass phrases. * Certificate time validation (X509_cmp_time) enforces stricter compliance with RFC 5280. Fractional seconds and timezone offsets are no longer allowed. * Fixed a text canonicalisation bug in CMS - drop patches (upstream): * 0001-Limit-scope-of-CN-name-constraints.patch * 0001-Revert-util-dofile.pl-only-quote-stuff-that-actually.patch * 0001-Tolerate-a-Certificate-using-a-non-supported-group-o.patch * 0002-Skip-CN-DNS-name-constraint-checks-when-not-needed.patch * openssl-add-blinding-to-dsa.patch * openssl-add-blinding-to-ecdsa.patch * openssl-CVE-2018-0732.patch - refresh patches: * openssl-1.1.0-fips.patch * openssl-disable_rsa_keygen_tests_with_small_modulus.patch - rename openssl-CVE-2018-0737.patch to openssl-CVE-2018-0737-fips.patch as it now only includes changes to the fips code- Add openssl(cli) Provide so the packages that require the openssl binary can require this instead of the new openssl meta package (bsc#1101470) - Don't Require openssl-1_1 from the devel package, just Recommend it- Suggest libopenssl1_1-hmac from libopenssl1_1 package to avoid dependency issues during updates (bsc#1090765)- Relax CN name restrictions (bsc#1084011) * added patches: 0001-Limit-scope-of-CN-name-constraints.patch 0002-Skip-CN-DNS-name-constraint-checks-when-not-needed.patch- Reject excessively large primes in DH key generation (bsc#1097158, CVE-2018-0732) * openssl-CVE-2018-0732.patch - blinding enhancements for ECDSA and DSA (bsc#1097624, bsc#1098592) * openssl-add-blinding-to-ecdsa.patch * openssl-add-blinding-to-dsa.patch- OpenSSL Security Advisory [16 Apr 2018] * Cache timing vulnerability in RSA Key Generation (CVE-2018-0737, bsc#1089039) * add openssl-CVE-2018-0737.patch- Fix escaping in c_rehash (boo#1091961, bsc#1091963) * add 0001-Revert-util-dofile.pl-only-quote-stuff-that-actually.patch- Tolerate a Certificate using a non-supported group on server side (boo#1084651) * https://github.com/openssl/openssl/pull/5607 * add 0001-Tolerate-a-Certificate-using-a-non-supported-group-o.patch- Update to 1.1.0h OpenSSL Security Advisory [27 Mar 2018] * Constructed ASN.1 types with a recursive definition could exceed the stack (CVE-2018-0739) (bsc#1087102) * rsaz_1024_mul_avx2 overflow bug on x86_64 (CVE-2017-3738) (bsc#1071906) - refresh patches: * 0001-Axe-builtin-printf-implementation-use-glibc-instead.patch * openssl-1.1.0-fips.patch * openssl-pkgconfig.patch * openssl-rsakeygen-minimum-distance.patch * openssl-static-deps.patch- Move the libopenssl1_1_0-32bit obsoletes in baselibs.conf to the new libopenssl1_1-32bit: it does not belong to the devel package.- Renamed from openssl-1_1_0 (bsc#1081335) * All the minor versions of the 1.1.x openssl branch have the same sonum and keep ABI compatibility * obsolete the 1_1_0 packages - update baselibs.conf with the new version names- Remove bit obsolete syntax - Use %license macro- Don't disable afalgeng on aarch64- Add support for s390x CPACF enhancements (fate#321518) patches taken from https://github.com/openssl/openssl/pull/2859: * 0002-crypto-modes-asm-ghash-s390x.pl-fix-gcm_gmult_4bit-K.patch * 0004-s390x-assembly-pack-add-OPENSSL_s390xcap-environment.patch * 0005-s390x-assembly-pack-add-OPENSSL_s390xcap-man-page.patch * 0006-s390x-assembly-pack-extended-s390x-capability-vector.patch * 0007-crypto-evp-e_aes.c-add-foundations-for-extended-s390.patch * 0008-s390x-assembly-pack-extended-s390x-capability-vector.patch * 0009-crypto-aes-asm-aes-s390x.pl-add-KMA-code-path.patch * 0010-doc-man3-OPENSSL_s390xcap.pod-update-KMA.patch * 0011-crypto-aes-asm-aes-s390x.pl-add-CFI-annotations-KMA-.patch * 0012-s390x-assembly-pack-add-KMA-code-path-for-aes-gcm.patch * 0013-crypto-aes-asm-aes-s390x.pl-add-CFI-annotations-KMA-.patch- Do not filter pkgconfig() provides/requires.- Obsolete openssl-1_0_0 by openssl-1_1_0: this is required for a clean upgrade path as an aid to zypp (boo#1070003).- Update to 1.1.0g OpenSSL Security Advisory [02 Nov 2017] * bn_sqrx8x_internal carry bug on x86_64 (CVE-2017-3736) (bsc#1066242) * Malformed X.509 IPAddressFamily could cause OOB read (CVE-2017-3735) (bsc#1056058) - drop 0001-Fix-a-TLSProxy-race-condition.patch (upstream) - refresh 0001-Axe-builtin-printf-implementation-use-glibc-instead.patch- update DEFAULT_SUSE cipher list (bsc#1055825) * add CHACHA20-POLY1305 * add ECDSA ciphers * remove 3DES - modified openssl-1.0.1e-add-suse-default-cipher.patch- do not require openssl1_1_0-targettype in devel-targettype, as it is not built (it has no libraries)- The description is supposed to describe the package, not the development process or history. (Synchronize with the already-updates descriptions in openssl-1_0_0.) - Update historic copypasted boilerplate summaries ("include files mandatory for development")- Disable the verbosity of the tests as we expose yet another race condition in that- Fix a race condition in tests to make the package build reliably * https://github.com/openssl/openssl/issues/3562 * 0001-Fix-a-TLSProxy-race-condition.patch- Add Provides and Conflicts for -devel package in baselibs.conf.- Add patch openssl-no-date.patch to disable date inclusion in most of the binaries - Use autopatch to make things smaller - Enable verbose output on the tests - Paralelize depmod- update to 1.1.0f * bugfix only release - disable RSA keygen tests, because they use too small modulus, which is rejected by our CC/FIPS hardening patches * added openssl-disable_rsa_keygen_tests_with_small_modulus.patch - refreshed openssl-rsakeygen-minimum-distance.patch and 0001-Axe-builtin-printf-implementation-use-glibc-instead.patch- Add conflict for any libopenssl-devel that is not in our version- Avoid the requires conflict between 1.1 and 1.0 openssl- Add conflict on docu packages- drop unnecessary README.SUSE- add openssl-1.1-fix-ppc64.patch from Marcus Meissner to fix build on ppc64- Fix build on aarch64- Remove libpadlock conditional, no longer present- Update baselibs.conf to contain all the renamed packages- re-enable tests on SLE-12 and below despite current failure, so they are automatically run once the issue is resolved- Filter out the pkgconfig provides to force usage of the main openssl package provides- disable tests on SLE-12 and its derivates * they fail because of glibc bug bsc#1035445 - remove README-FIPS.txt (outdated)- drop openssl-fipslocking.patch The locking in 1.1.0 has been rewritten and converted to the new threading API. The fips deadlock (at least bsc#991193) can't be reproduced anymore. - don't ship useless INSTALL* files- simplify openssl-fips-dont-fall-back-to-default-digest.patch The -non-fips-allow option was dropped in OpenSSL 1.1.0 - drop openssl-no-egd.patch as OpenSSL 1.1.0 disables EGD at compile time by default - renumber the patches so the numbers are consequent- Update showciphers.c to work with new openssl- Add patch openssl-static-deps.patch to allow dependencies on statically build libraries - Refresh openssl-1-1.0-fips.patch to take in use the above approach - Silence the install manpage rename phase- Start update to 1.1.0e basing of the 1.0.0 split release - Drop patch merge_from_0.9.8k.patch the ppc64 should work out of the box - Drop patch openssl-engines-path.patch converted to configure option - Drop patch openssl-1.0.2a-padlock64.patch code behind was redone does not apply at all - Drop patch openssl-fix-pod-syntax.diff mostly merged upstream or not applicable - Drop patch compression_methods_switch.patch as we do not need to keep the compat on this release anymore - Drop patch openssl-1.0.2a-ipv6-apps.patch which was upstreamed - Drop upstreamed patch openssl-1.0.2a-default-paths.patch - Drop obsolete patch openssl-1.0.0-c_rehash-compat.diff - Drop obsolete patch openssl-missing_FIPS_ec_group_new_by_curve_name.patch - Drop obsolete patch openssl-print_notice-NULL_crash.patch - Drop obsolete patch openssl-randfile_fread_interrupt.patch - Refresh patch openssl-truststore.patch - Refresh baselibs.conf to correctly reflect soname - Add patch openssl-1.1.0-fips.patch obsoleting bunch of older: * openssl-1.0.2i-fips.patch * openssl-1.0.2a-fips-ec.patch * openssl-1.0.2a-fips-ctor.patch * openssl-1.0.2i-new-fips-reqs.patch * openssl-fips_disallow_x931_rand_method.patch - Add new patch for upstream: * 0001-Resume-reading-from-randfile-when-interrupted-by-a-s.patch - Refresh patch openssl-pkgconfig.patch - Drop patch openssl-gcc-attributes.patch as the code was redone - Rebase patch 0001-Axe-builtin-printf-implementation-use-glibc-instead.patch - Rebase patch openssl-no-egd.patch - Rebase patch openssl-1.0.1e-add-suse-default-cipher.patch and openssl-1.0.1e-add-test-suse-default-cipher-suite.patch - Rebase patch openssl-fips_disallow_ENGINE_loading.patch - Rebase patch openssl-urandom-reseeding.patch - Rebase patch openssl-fips-rsagen-d-bits.patch - Rebase patch openssl-fips-selftests_in_nonfips_mode.patch - Remove switch for ssl2 - no longer present - Remve the buildinf.h parsing, should no longer be needed - Drop the rehash in build, no longer needed - Drop openssl-fips-hidden.patch as it is not really needed - Do not sed in secure_getenv upstream does it in code on their own - Do not install html converted manpages * openssl-1.1.0-no-html.patch- Drop the symbol hiding patches to ease maintenance updates: * 0005-libssl-Hide-library-private-symbols.patch * 0001-libcrypto-Hide-library-private-symbols.patch- Add new patch for engines folders to allow co-installation * openssl-engines-path.patch- Drop openssl-ocloexec.patch as it causes additional maintenance burden we would like to avoid- Drop bug610223.patch as we moved to libdir- Move check to %check phase - Split showciphers to separate file- Move openssl to /usr/lib64 from /lib64- Remove some of the DSO setting code that is not needed - Fix the showciphers binary- Rename to openssl-1_0_0 to allow instalation of multiple versions- Remove O3 from optflags, no need to not rely on distro wide settings - Remove conditions for sle10 and sle11, we care only about sle12+ - USE SUSE instead of SuSE in readme - Pass over with spec-cleaner- fix X509_CERT_FILE path (bsc#1022271) and rename updated openssl-1.0.1e-truststore.diff to openssl-truststore.patch- Updated to openssl 1.0.2k - bsc#1009528 / CVE-2016-7055: openssl: Montgomery multiplication may produce incorrect results - bsc#1019334 / CVE-2016-7056: openssl: ECSDA P-256 timing attack key recovery - bsc#1022085 / CVE-2017-3731: openssl: Truncated packet could crash via OOB read - bsc#1022086 / CVE-2017-3732: openssl: BN_mod_exp may produce incorrect results on x86_64- resume reading from /dev/urandom when interrupted by a signal (bsc#995075) * add openssl-randfile_fread_interrupt.patch- add FIPS changes from SP2: - fix problems with locking in FIPS mode (bsc#992120) * duplicates: bsc#991877, bsc#991193, bsc#990392, bsc#990428 and bsc#990207 * bring back openssl-fipslocking.patch - drop openssl-fips_RSA_compute_d_with_lcm.patch (upstream) (bsc#984323) - don't check for /etc/system-fips (bsc#982268) * add openssl-fips-dont_run_FIPS_module_installed.patch - refresh openssl-fips-rsagen-d-bits.patch- update to openssl-1.0.2j * Missing CRL sanity check (CVE-2016-7052 bsc#1001148)- OpenSSL Security Advisory [22 Sep 2016] (bsc#999665) Severity: High * OCSP Status Request extension unbounded memory growth (CVE-2016-6304) (bsc#999666) Severity: Low * Pointer arithmetic undefined behaviour (CVE-2016-2177) (bsc#982575) * Constant time flag not preserved in DSA signing (CVE-2016-2178) (bsc#983249) * DTLS buffered message DoS (CVE-2016-2179) (bsc#994844) * OOB read in TS_OBJ_print_bio() (CVE-2016-2180) (bsc#990419) * DTLS replay protection DoS (CVE-2016-2181) (bsc#994749) * OOB write in BN_bn2dec() (CVE-2016-2182) (bsc#993819) * Birthday attack against 64-bit block ciphers (SWEET32) (CVE-2016-2183) (bsc#995359) * Malformed SHA512 ticket DoS (CVE-2016-6302) (bsc#995324) * OOB write in MDC2_Update() (CVE-2016-6303) (bsc#995377) * Certificate message OOB reads (CVE-2016-6306) (bsc#999668) - update to openssl-1.0.2i * remove patches: openssl-1.0.2a-new-fips-reqs.patch openssl-1.0.2e-fips.patch * add patches: openssl-1.0.2i-fips.patch openssl-1.0.2i-new-fips-reqs.patch- fix crash in print_notice (bsc#998190) * add openssl-print_notice-NULL_crash.patch- OpenSSL Security Advisory [3rd May 2016] - update to 1.0.2h (boo#977584, boo#977663) * Prevent padding oracle in AES-NI CBC MAC check A MITM attacker can use a padding oracle attack to decrypt traffic when the connection uses an AES CBC cipher and the server support AES-NI. (CVE-2016-2107, boo#977616) * Fix EVP_EncodeUpdate overflow An overflow can occur in the EVP_EncodeUpdate() function which is used for Base64 encoding of binary data. If an attacker is able to supply very large amounts of input data then a length check can overflow resulting in a heap corruption. (CVE-2016-2105, boo#977614) * Fix EVP_EncryptUpdate overflow An overflow can occur in the EVP_EncryptUpdate() function. If an attacker is able to supply very large amounts of input data after a previous call to EVP_EncryptUpdate() with a partial block then a length check can overflow resulting in a heap corruption. (CVE-2016-2106, boo#977615) * Prevent ASN.1 BIO excessive memory allocation When ASN.1 data is read from a BIO using functions such as d2i_CMS_bio() a short invalid encoding can casuse allocation of large amounts of memory potentially consuming excessive resources or exhausting memory. (CVE-2016-2109, boo#976942) * EBCDIC overread ASN1 Strings that are over 1024 bytes can cause an overread in applications using the X509_NAME_oneline() function on EBCDIC systems. This could result in arbitrary stack data being returned in the buffer. (CVE-2016-2176, boo#978224) * Modify behavior of ALPN to invoke callback after SNI/servername callback, such that updates to the SSL_CTX affect ALPN. * Remove LOW from the DEFAULT cipher list. This removes singles DES from the default. * Only remove the SSLv2 methods with the no-ssl2-method option. When the methods are enabled and ssl2 is disabled the methods return NULL.- Remove a hack for bsc#936563 - Drop bsc936563_hack.patch- import fips patches from SLE-12 * openssl-fips-clearerror.patch * openssl-fips-dont-fall-back-to-default-digest.patch * openssl-fips-fix-odd-rsakeybits.patch * openssl-fips-rsagen-d-bits.patch * openssl-fips-selftests_in_nonfips_mode.patch * openssl-fips_RSA_compute_d_with_lcm.patch * openssl-fips_disallow_ENGINE_loading.patch * openssl-fips_disallow_x931_rand_method.patch * openssl-rsakeygen-minimum-distance.patch * openssl-urandom-reseeding.patch- add support for "ciphers" providing no encryption (bsc#937085) * don't build with -DSSL_FORBID_ENULL- update to 1.0.2g (bsc#968044) * Disable weak ciphers in SSLv3 and up in default builds of OpenSSL. Builds that are not configured with "enable-weak-ssl-ciphers" will not provide any "EXPORT" or "LOW" strength ciphers. * Disable SSLv2 default build, default negotiation and weak ciphers. SSLv2 is by default disabled at build-time. Builds that are not configured with "enable-ssl2" will not support SSLv2. Even if "enable-ssl2" is used, users who want to negotiate SSLv2 via the version-flexible SSLv23_method() will need to explicitly call either of: SSL_CTX_clear_options(ctx, SSL_OP_NO_SSLv2); or SSL_clear_options(ssl, SSL_OP_NO_SSLv2); (CVE-2016-0800) * Fix a double-free in DSA code (CVE-2016-0705) * Disable SRP fake user seed to address a server memory leak. Add a new method SRP_VBASE_get1_by_user that handles the seed properly. (CVE-2016-0798) * Fix BN_hex2bn/BN_dec2bn NULL pointer deref/heap corruption (CVE-2016-0797) * ) Side channel attack on modular exponentiation http://cachebleed.info. (CVE-2016-0702) * ) Change the req app to generate a 2048-bit RSA/DSA key by default, if no keysize is specified with default_bits. This fixes an omission in an earlier change that changed all RSA/DSA key generation apps to use 2048 bits by default.- update to 1.0.2f (boo#963410) * ) DH small subgroups (boo#963413) Historically OpenSSL only ever generated DH parameters based on "safe" primes. More recently (in version 1.0.2) support was provided for generating X9.42 style parameter files such as those required for RFC 5114 support. The primes used in such files may not be "safe". Where an application is using DH configured with parameters based on primes that are not "safe" then an attacker could use this fact to find a peer's private DH exponent. This attack requires that the attacker complete multiple handshakes in which the peer uses the same private DH exponent. For example this could be used to discover a TLS server's private DH exponent if it's reusing the private DH exponent or it's using a static DH ciphersuite. (CVE-2016-0701) * ) SSLv2 doesn't block disabled ciphers (boo#963415) A malicious client can negotiate SSLv2 ciphers that have been disabled on the server and complete SSLv2 handshakes even if all SSLv2 ciphers have been disabled, provided that the SSLv2 protocol was not also disabled via SSL_OP_NO_SSLv2. (CVE-2015-3197) * ) Reject DH handshakes with parameters shorter than 1024 bits.- update to 1.0.2e * fixes five security vulnerabilities * Anon DH ServerKeyExchange with 0 p parameter (CVE-2015-1794) (bsc#957984) * BN_mod_exp may produce incorrect results on x86_64 (CVE-2015-3193) (bsc#957814) * Certificate verify crash with missing PSS parameter (CVE-2015-3194) (bsc#957815) * X509_ATTRIBUTE memory leak (CVE-2015-3195) (bsc#957812) * Race condition handling PSK identify hint (CVE-2015-3196) (bsc#957813) - pulled a refreshed fips patch from Fedora * openssl-1.0.2a-fips.patch was replaced by openssl-1.0.2e-fips.patch - refresh openssl-ocloexec.patch- update to 1.0.2d * fixes CVE-2015-1793 (bsc#936746) Alternate chains certificate forgery During certificate verfification, OpenSSL will attempt to find an alternative certificate chain if the first attempt to build such a chain fails. An error in the implementation of this logic can mean that an attacker could cause certain checks on untrusted certificates to be bypassed, such as the CA flag, enabling them to use a valid leaf certificate to act as a CA and "issue" an invalid certificate. - drop openssl-fix_invalid_manpage_name.patch (upstream)- Workaround debugit crash on ppc64le with gcc5 bsc936563_hack.patch (bsc#936563)- update merge_from_0.9.8k.patch replacing __LP64__ by __LP64 this is a change versus previous request 309611 required to avoid build error for ppc64- Build with no-ssl3, for details on why this is needed read rfc7568. Contrary to the "no-ssl2" option, this does not require us to patch dependant packages as the relevant functions are still available (SSLv3_(client|server)_method) but will fail to negotiate. if removing SSL3 methods is desired at a later time, option "no-ssl3-method" needs to be used.- update to 1.0.2c * Fix HMAC ABI incompatibility - refreshed openssl-1.0.2a-fips.patch- update to 1.0.2b * Malformed ECParameters causes infinite loop (CVE-2015-1788) * Exploitable out-of-bounds read in X509_cmp_time (CVE-2015-1789) * PKCS7 crash with missing EnvelopedContent (CVE-2015-1790) * CMS verify infinite loop with unknown hash function (CVE-2015-1792) * Race condition handling NewSessionTicket (CVE-2015-1791) - refreshed patches: * 0001-Axe-builtin-printf-implementation-use-glibc-instead.patch * 0001-libcrypto-Hide-library-private-symbols.patch * openssl-1.0.2a-default-paths.patch * openssl-1.0.2a-fips.patch * compression_methods_switch.patch * openssl-1.0.1e-add-test-suse-default-cipher-suite.patch- update to 1.0.2a * Major changes since 1.0.1: - Suite B support for TLS 1.2 and DTLS 1.2 - Support for DTLS 1.2 - TLS automatic EC curve selection. - API to set TLS supported signature algorithms and curves - SSL_CONF configuration API. - TLS Brainpool support. - ALPN support. - CMS support for RSA-PSS, RSA-OAEP, ECDH and X9.42 DH. - packaging changes: * merged patches modifying CIPHER_LIST into one, dropping: - openssl-1.0.1e-add-suse-default-cipher-header.patch - openssl-libssl-noweakciphers.patch * fix a manpage with invalid name - added openssl-fix_invalid_manpage_name.patch * remove a missing fips function - openssl-missing_FIPS_ec_group_new_by_curve_name.patch * reimported patches from Fedora dropped patches: - openssl-1.0.1c-default-paths.patch - openssl-1.0.1c-ipv6-apps.patch - openssl-1.0.1e-fips-ctor.patch - openssl-1.0.1e-fips-ec.patch - openssl-1.0.1e-fips.patch - openssl-1.0.1e-new-fips-reqs.patch - VIA_padlock_support_on_64systems.patch added patches: - openssl-1.0.2a-default-paths.patch - openssl-1.0.2a-fips-ctor.patch - openssl-1.0.2a-fips-ec.patch - openssl-1.0.2a-fips.patch - openssl-1.0.2a-ipv6-apps.patch - openssl-1.0.2a-new-fips-reqs.patch - openssl-1.0.2a-padlock64.patch * dropped security fixes (upstream) - openssl-CVE-2015-0209.patch - openssl-CVE-2015-0286.patch - openssl-CVE-2015-0287.patch - openssl-CVE-2015-0288.patch - openssl-CVE-2015-0289.patch - openssl-CVE-2015-0293.patch * upstream reformatted the sources, so all the patches have to be refreshed- security update: * CVE-2015-0209 (bnc#919648) - Fix a failure to NULL a pointer freed on error * CVE-2015-0286 (bnc#922496) - Segmentation fault in ASN1_TYPE_cmp * CVE-2015-0287 (bnc#922499) - ASN.1 structure reuse memory corruption * CVE-2015-0288 x509: (bnc#920236) - added missing public key is not NULL check * CVE-2015-0289 (bnc#922500) - PKCS7 NULL pointer dereferences * CVE-2015-0293 (bnc#922488) - Fix reachable assert in SSLv2 servers * added patches: openssl-CVE-2015-0209.patch openssl-CVE-2015-0286.patch openssl-CVE-2015-0287.patch openssl-CVE-2015-0288.patch openssl-CVE-2015-0289.patch openssl-CVE-2015-0293.patch- The DATE stamp moved from crypto/Makefile to crypto/buildinf.h, replace it there (bsc#915947)- openssl 1.0.1k release bsc#912294 CVE-2014-3571: Fix DTLS segmentation fault in dtls1_get_record. bsc#912292 CVE-2015-0206: Fix DTLS memory leak in dtls1_buffer_record. bsc#911399 CVE-2014-3569: Fix issue where no-ssl3 configuration sets method to NULL. bsc#912015 CVE-2014-3572: Abort handshake if server key exchange message is omitted for ephemeral ECDH ciphersuites. bsc#912014 CVE-2015-0204: Remove non-export ephemeral RSA code on client and server. bsc#912293 CVE-2015-0205: Fixed issue where DH client certificates are accepted without verification. bsc#912018 CVE-2014-8275: Fix various certificate fingerprint issues. bsc#912296 CVE-2014-3570: Correct Bignum squaring. and other bugfixes. - openssl.keyring: use Matt Caswells current key. pub 2048R/0E604491 2013-04-30 uid Matt Caswell uid Matt Caswell sub 2048R/E3C21B70 2013-04-30 - openssl-1.0.1e-fips.patch: rediffed - openssl-1.0.1i-noec2m-fix.patch: removed (upstream) - openssl-ocloexec.patch: rediffed- suse_version 10.1 & 10.2 x86_64 can not enable-ec_nistp_64_gcc_128- openssl-1.0.1i-noec2m-fix.patch: only report the Elliptic Curves we actually support (not the binary ones) (bnc#905037)- openSUSE < 11.2 doesn't have accept4()- openSSL 1.0.1j * Fix SRTP Memory Leak (CVE-2014-3513) * Session Ticket Memory Leak (CVE-2014-3567) * Add SSL 3.0 Fallback protection (TLS_FALLBACK_SCSV) * Build option no-ssl3 is incomplete (CVE-2014-3568)/sbin/ldconfig/sbin/ldconfiglibopenssl-1_0_0-hmaclibopenssl1_1-hmaclibopenssl1_1_0libopenssl1_1_0-hmacibs-power9-10 1769511995 1.1.1w-150600.5.21.11.1.1w-150600.5.21.11.1.1w-150600.5.21.11.1.1w-150600.5.21.1.libcrypto.so.1.1.hmac.libssl.so.1.1.hmacengines-1.1capi.sopadlock.solibcrypto.so.1.1libssl.so.1.1libopenssl1_1LICENSE/usr/lib64//usr/lib64/engines-1.1//usr/share/licenses//usr/share/licenses/libopenssl1_1/-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:42460/SUSE_SLE-15-SP6_Update/ed8a1cbb680e145527c680341578e205-openssl-1_1.SUSE_SLE-15-SP6_Updatedrpmxz5ppc64le-suse-linuxASCII textdirectoryELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=4b6e9e517755dabf2edea068a1d460b72256c34b, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=a0a1f6b2cc5199e6a2e84e70a34e42406e867168, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=22ba82bdb6422de5feb93d35af19703bb07f8be7, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=3e2f359be6bb142e42df75b935f50c36e711e07e, stripped-)RRRRPPPPPPPPPPPPPPPP P P P P P P P P P PPPPPPPPPRRRRRRRPPPPPPPPRRR RR R R R RR|;{'Mca-certificates-mozillautf-82ffda40c531260483bc28dbd0daa233ac503875da00ac81bfeeab510e77ebaef?p7zXZ !t/]"k%{4"c /zClŝoJ~ eC9k*Nƿax7~kdnp8L֍[,oo#.kqq [>cL}+HEqubɡt{ژT*D?ƋV+%+ћTN9c4VB376؝NKUɝgjaϼ1 Ƴ/a!9qP97殀 NT&PG)I '=Dcߝd6 yb.9➑J-Pd6S71*GoͩC\8$55fq =`5WÑ 5]*݈v\ZA=HA9*$3yq*6N2~܃2>Wiq=Y^Qzkk1 =%IЉ[:P׶9Rm߻)5(oؖwkmЭ@28;*M<"= n[3y+"j,Nrbe,n- nYz.LRyv ƫ}۔NV9nBƉ(|}dxE:Lz pX% N*"&25`89=K:nx~ J-o3ƈ'+nAbA+D$8k]\4>? E[⬳hhYOauuwB> Db,}GHؠ9eP/ugޝ/k?_ Mx+WZ3xjg2@Z>1t,Ok N h =1EV1BLbKB!r4I~>@u]y>!woD(_^E\Db>HY]~DXϣ~kKi¦ )Ƽ \%<0s۴di؉Zdl : \Y uj#Suo<ʐ`eyp{]?o`t|fM9%NX&\^9T䰦B^J*OKֈxA@3s`C uJ+r5tH%ygxs,wevd* A.<,$mPDE/b_\:oXA2/ Cfj6S--B)in@‰S _O#H|ܥ6mRKo1m ߁VW{\ˑ{5W1Bdo;/1{7fc{Xl|Ac޲@a{ PG;m+-tjή|*/ns̿}f\ "]u<D廬A1>o'(&FӴc7+k;LP;m66Gּ1EIz4,c>y$ )ԕ ?9Xiʥ1D0~0,,<_3H%2to"n@٫ Uݭm$7 OK2og2TqY Ե}4,ŵH0X \/3 e1 Y?7ӒlJ%:19݀٠y_$6jjsqk8f xS/o+a K-k)YO'p[Mz?Q<1Z':F\-c?cuoDW^ /Džj_r~EvYpV,z*~vdrrߐf Ry)lh~WfIur@3hXB*`KݑGLTkph/8afYK=MguAB4YDzh6n HgXZ1n1s:N)Y^tPWdȨFÍ<<>DƼLy=g ī"pcȧQ.`pu5ⓠ<Ri_X26qM8`7P1̈WS|F`5 ̰.zm C=ڙ1 w8"V2یbg,wل(Z;*GS8I.EjKDwnue!ebuCj̘"Z7Es >pK[EMqvҿj,FTJ{Mі2: =@? < g6`4bSHXks=4/ W3G]nr!~e\捪"IH +CI˲n#T %q'N?Vko7sq>F^Q>E[;EyTɸNI]L#֭qE< *H<r vdP N8nddMCR'0qޫ٨$tGˁ< zk%@]v@^&^oTrWQt@'֘ !YTXJTH?$V[k#֤sTv>&މk' V\HK |`a+YA3KW*}N@ܙݸ(/bkKb̀}NkL8}Smݑ'](N#b-"i]0)" SC5eG>B/?2^9u8A窻cX)Z(΃&!՜"u(xR;zC9l2+c6b?WLb3Qs->0 :OBEYu>l Ա1*D+$Dn$h]g ̺jM<.d~];Lqs%ކ٤܏>ۺfBDq[ Yb-+7|~Ц>y8e7=J8+J̓w?%'u&xn֢-ݴke*>ê/GEx)J m>x'1t5^|r}E{B ,e_K7u:B&LiMT 2oڿ`Z^eݰak=) W&8Xs۱VPQ4XI,B`GgyDgI_ EHksB2ͩ1$LdE~X9ՙսCҭ&쨘aY:QRe;q!5m [̆xsPEdQH);3H&3Y*(X#lJ {ةx$&Ьxԅ牋^T(b]_`#+dSÂk"^UyTAsI ޶ÿx/xq)D瑹!׈P/Ͷd}M ؂ st[_ww7xH KU' R%<%HUHFn@ƨ /4:HO3hBMN?qk,IsF|Coj:YOf>=`9`" d?mjϺbI>Pd'jKpY- ƥ >fJ80 ,D ߋ beVC}~N(۾~V>k;sE KljaJuS1匔wD.zoz0BK?Z6cN1 G'Gپg!CMiܦ2X^cR(}r"y حH'%{?U&R:$87䴼9F!N^~⏻vOܺyJ=^r52Q* ,J8T&8Ḋ^=[ 5yܽfY $1H۪D-#͸`fTm bJo==7 kA)v0R{y@9x(e&+ҳ)p+koӚnʎNVnL ɹi NÌ;@-'d1^GTq-{F@_ C~,$|H_i]@~]3n_)L_#Oc:O$6Wji_}"0?=EYV<jb }$ԮhqNαT/gL)]I9ʪĊ n l x*5hwRm$K-hjnFEʧ49IwfV9쇫g~ϗصA>$SeMQ{RAv};] PC %וIzn>֊G`ԯ@Tj-emxHu^p#-f|i Q:-Ԋq<}j1}= W/Mgm &$ͪj

L0kЃXm,,M\\o7ֽ&oPGo; 7Cz{Z0)՗D,Vћ}عXknڱKUyyVQy n)zCx#Xxwt e30;Pq'TH]@TŜ3"WmxЗ6Hc6)?mre2(:/$ !o'&۸CȪU\B@}wk#{~?I0kl~IKR-qn*;񀶻pcuRmf1ߗYM|`t\7 [ժ)Q/ӶiE`4F}`SڅoTj gCĶq6_ k.`J aDZoQ>r } O`p 0@DV/|oE1^ (.i*^˝BQu pvo 0gpR<)7Tz|bۛ,tcN鞔4%%\!0uM'!bƨ#Ϊ97mLsӎ؇\Y(i,⧣(/L{|8Q?F#H|Ë.cx}8g8zzrk'<>.bR!`@kD(ӬAr-L@<5f4Hl9BaT4Un2K>8Y4%]ˬ2/pfiL:x\{ T:AoՌ{";Zw,]1Dwn)wjmXv*C_ܔ(k=aRk *q-gg\]QݿqTtD>PpHȻX)ܖ]"Xņ<0[!kz4m\K{3ǼH"m~'∜6^ ˧PpSΟ1u#GcՔH-N"-T*MY^)ɐ_.Bnoq< Cd'+h琜^f'X`S:%A5rRdW \Z*-- :El(^~hU -}]W$ͰY I-sRAj)c6XYvӬifLq(:u!/c?u[ֺLVD-*G֛+ y:oY:Q1]\BEsW+'\X%30~K Lll1Xr1T¢YO7x(+h2[Ȉmz}T0P@iKp6TgPGv_a )u<򎚕B®-EDҜ?`VG5ttm j څʟy5>ad|5Տd R9N]qdLg :\L8|T7\%blKp/‰n5KMq-h]䞝&[XzV)%ӄӹA^ #J>ϿIܫC8dL#sR\y]>,q;M k)@SaEXG23Hټ)ezas~p.&9>ĿA Q2ckCYK?&|aE[Rp}B+Iw rb܊v-DyO=(iY1KztHwvhڮ8T xw~L#}CKZ+0r=Efx)p&* O`;g qj. e8;nœTsYR-m|ZHŅ9;ђ{r{qDa)LcqN=״N?^bx,9!_z9Ð  O.Zh 22C@:p>Yx+)Ѷ"U0E\&S}|^W攙9LȊLno.9pAꥉ?ST@ L]L(Ǒ\xkD`./"]#.ʤH9ߌौ<ZkJ ʰn`0I>|Ł&7-`Q kM/KHE}5l\8Ý7l%A4 ѭe%U wU&ՑXc;:<%v{6Hw]=yQh<@ pg)$łDM,g θ/sBA2wb5SPT'$ ܺ¾b4s)˞t#.=U: Aړ^9 ƧvEwNUJA a+[׉bAVn{s=[56d5oY&baM4qͦ%YCĎ6 =Ϡ26bXZF`Z= ?"㊟IVu+jtН~!xH0Ro`8 *RЈOoúo+B @Ύhk^FԷ.1o v懍=<o7 aN Â?v9 =jHq©!^ۃarZ, 5:{*k7˃co]FKNXmĮ/+$λ!4BBX"1,RQ ӛ$B7}I(7jj5BEM C^G*  L? ?s2bi*88©*T I u򈔆ІWo=_b3 97L% ?De;U@Rz׾"gl\AMTxD!42&P{CP^>zk6˕npXFǽUN6Ma`\yqII[~գ g9m>{+iҒ7r!tjsmmɉdo |@x-,;ğ8K1"-, n6VA $ mck(Pquctҕ~@'IZFIH܄a?K"R +ÔҡthfJSi߀$ˢ"' ⻷KkGkb6FEOJ25u/ay!kp0T""k* V >4!-_ܔni=6Qq>".5ؖt%̿-s / a[RM8}sN7rTU[Hԫˎ]>,B?]s;w{85α_9;LtZ7xI; VuU=k׉4 RD"w+AX2<ěz:ܶD5H66oa+py}`#MUbv۾IcS؅8#u$EXlGX;'O[E%W^:ݛ{;?ݽz/p 5T!)jn4>ͼ͑>gburs`uj]z"{Ex(Gx7Ir!Ƅƍ !.wC "]Z^{-DmkdbR agFmE,H}hX W\{n'< g'}.n;FOu0 ɕ(d")'XUia};GEkٶ iaC@#^Rf[CAH&#.O v)kǭ&v0|.B7=C#;Z<̙/9UQR&*}.d)ivr۽"[݊TIk @{{{H4-v{h(BFh1/n50%\X1ۆG~>u:c|IUl4Z ڇ~ongcp{uIP-aY^Y|& vUekѮt"Gʏ"5/mVc'{~hmLJĔO>lItu4; W֘ifKݲԶ|E 3J:aC_.DXvxH 4E+.0ܰèH:Ph֕VUi:70i>BڈlWeC_QRp|?|,dHc7` u; v7쟀b&)ػg  QY-t'L_ fNdAxuvVγ,jR̕Y(%?& b@pB$ 1~/NY+zu܄cVj&0(̩Il83>9+V.}!jZppv bG=n>&7\-?q7ަ`)Ua7¿RbL4Xx ׌JFQkxڐt@Ef\ʭm, 8Õ1k ?T]0-޵{6nYS؜l2kIU qy (K$gEYa7]_41'1nvװ? E21Vczm+x2!%x$ 3k_X_(Sv_VG7N\0e&oj=YLHIJy~t8^;bg^$mU( v]Rx*<.`0ƚ} CI)ˣwDdA_ U`_[)7# \gV;e$|FԯEu?ݦ:5~NJ=/`]$a5&QL/dV#MH,[UnԅyJ8\$nZaLJ^ ZTO ` sea>T/\9nP"cF{bD%r[}z] X':G${C;NHk,o(R -k~b` m`):MwU@:7Z@b)/6!?WW|&A>_TyvtS+ d a7I WڧH4#d^$!&p+΂;>%]|f [=Eϧج QuoXKbgs*#1Vͭ>mعi7ec{2_qqz۝]u\ cOE!<@_S5'ia)}Բ^6sZՕUi=}XjB}pQ[V ?+[n x'tEGh BǦ`,RQo!Y QѠڹ R%F:v51[X(Ek0Z5t>NjpNqm  dtF1Pp Y{k{+AadxO7cZHS]k_-'1Z>h*Zϰy o6QrA"40156HS^,`2uYÃ@޿0+2xSN]o}Qp@0 pQ`A㎗0hp7PJHChMmrn8*6^r`2S8oNEF/ < 'i)'D.QFTy|M*w[i+W C^)x톃^WEq ~o K" %sr,=c_sԴ~p{}^y{_Is V@NG#y9'ZEv\.)N~"_ W۝R+|̀m[l^0F"ču 7{T>kŒk> t#qt{zJQ*Y=ToÁkGOCCOmk9 |Ʃ& M V XL;ҴJvhc~`ʰ1֩AA~-Lˢ+\T:_0nR~foQ.?p]"? YQ;*csTĕr}c_o%M>.xfFܬk9s]%6XT`vmkIݿט?3tחP Y:c9%b~lK5h"}Nu##3͟,{y'GJ1vt3SCie,0] ԛE'X A LK޵xAtt&l!;a'up [Qoi37I͔F:FnĖkЈ5EbA5+EPa^ J]p[b- ~,6P(@@ nXXkb5-MmM4H-#ۥ\j(v2܁);.V碖)̠ |WZOwCUo ekqbKMjяya*81(6&:Vt9"K!M柂\h>hX5ŻeBI1YtNG0z 흢:S%>sBAPe"wH4j[u6k/Ybh$S@1k qUf&BJ QQRm8bJ8ocYe.-%x-v 0N.jUBlt] lDЦ|3"Z# Yӛ3F+KQ-?+`-ThZF!(. RуXbQ܌~)A/CW2qjz]AX/F~>wJY$bW]FpP sY$X) }kSp -#i֫) k1M}EnѪa\'`^@Ȳwb&@KPH~\[^ڤA]Sj'Nؤ~Y>%1dg3AEWSQJfel?8MR$X誽=yDɨ_%.V9_sGV,r0@%U5t&Vt*5.?Y-8!(IvIY4D]:.NbH؏JED0͸J1U0J ݑjC;}>tyҌ6%|;ŏK0`_*k/Jyf"m  oFВȽ?"e_5Ɩ.e8sl\X %=ER0`3Q_X# =xʫm~Td鉞ِ?7s@1ɗîʺcg-h Ԋ^jV̖=[-Bj-=|\ţZ5ddxJRBLul,e%wiV~V^=} ~[/]9ci% ~F:p&$- Έu%?ә^ӳTPzs8/x2"" ynto[ E)Q>3? Fgnރ5w(q~ىGZ8X KVk4:xnnqјKM-u"ԑm+W pH/f◓Vb13{Ϩi-4BsTq *MQ> |&ˈ.pwN1Sbsю"'=>$a(}[_LAJc *v8+RD/z,L[9NSbQ8}壒]"ֺS+}+~Ċc[^vԚKN@5*]T5|Pg2GK8y_q"ߊ/CWRa@] ˍuhՑ٤x·e8PK0!pa" ׸ӈn9Da4a9qGaF5^r+k \4V/E=cȌ@ !5g:qQa*v@R&Q$^^"Sԫ >{^ Dcr)έ;<[ҨQ#/:ۋ $rOC43a#N27LSh5[fK#I~|w) }*?M:#G9;?هnb,6W_Pcy7iNa>iQ!>P(9 0Iՠ)<p&h[s-­j"Bv{9'^,; T(U"J&Ù7j`6*n0E ]*ߜlT/T rWIzMb C3C:,fAywV;/:܁{y2(aG}7] NpejAӪ{o:+$bÈ$9_86zaC#hO)ZoSTl\c^{;bmv@w""X""diyVh5u9t8r FcJU7mSnq0@-@٪**u}pcAmRR?檥>HfO=5Z)}+ 3M%=OtoLIKOdGxAu 1#* 8:cw:չf t1tO=8BE[vs vՓf]g' "a0ЃYndzSxRߗ⛿]8/؊6In$ϓ1E42-')Mڔb|,"ɽD8 sgy- 6{U\R%t_`w*2 {\K[~~@>`և" Gs7fS˴紙:˶a%))fЍFgq a }m NKuBZA-:K>a^%H tXb*9+O#OMhT- !"%B-BO5J޴ՅM,^d1o!@4F . Y^pF >57bofhaĮҧ)C7i6ntDtFA7r n)妊4kRJxGѸYy6Q'ЊF?yPs]jnޖǕ ["rVא! |:SO ЊeS5,; Quӄ}zimX!'Wa-6UC-^Yh9nNq wnӠ-w LaEZO'_=> /q&#{#56n;3}g@_z=輠MH 0>DO.s 6D3WǹAt;D? ~d;Wm?_Xve^ đ׾-}?zY$Ԝh~:2Ak$hm"|8+eqMS>2J̊&@ o T(+~UpU}x$\s &+d"%f B=0d)ϣ'*%r_B7{pּ%wÏjKԥ9ܟnHW񰭬(\{w>=)wO"vr΃I$d<>X*BS {g~ZSVO uIFVo<{}v\m~ aL M_BiĮs!Swok8fn+5j(fjS"_FY5H6@^t9G*o W-L:Π`.Qe\o1EL̠mQ0L0Ԅoov+[d%1X <%ڢ|㕨vh=Kg6 Vl\YH*1eA9im +zQq2oLWeO%ʸ։+7y~d<(B(h\gTޫx]K5s@|VNӪF0[ [g_~V9moSttt8ckV )"KWw$پvj둿dDMS?% `le֥<˼J=qTBm.$L2}0-JʲLpEľ%xm8N&˫@*N\|2mEy`'fxc`0hC?ks6-M6W38E u ap~kP%aHrHݲqQ_yc[&O7nKszl+wO0i13yǕXłf2wtOu W&f!]N6"ęgU+,ﵺԆR8bi˝g2/\a%|%aK*vNe/Ul{ŷ S&upP+wE%biBqM9xN7Ue+v%X(0͋^s8So?4ܰf-vyI!1]9[t@(Iw9HR\TJXv#l(w hƍ-٩`Ui{t l$0f-YܚAL[Шt3L/++TMY]&8Y̹T g3Ȯ" A1$V$8U'Cb/n0 >,>AQ?)a'd.5=u>p:"Y^VDc\/'z@g6_0 wJP%آ?>Os3jBJ$^Nulo-e IӒT܎`9hfbpes雙. E;t-125(ƙ!C07n$nTs]ub6fҁ•i>5}a~HB0yt:(|M b![Y}-7҈g# Q5;.JI7f KriyOK  q|0bIxǞ1 D#Sn>u>eYroY05i lP=\ $UD3u-mk8e OY~{V!J /V׸0wpo|eؘw>ƫ5 )= HW.+_'󧛻myꣳ견-(~&0p;6 vDyxx :}3WF4w3xS9-Bap ^TThzEmW̓> '{3*v^I}lB>&2N ^ᱜ/an_M'lˢun7&k\n/P&w1jG2.E 9|DjKQml7BˣCm, ֍7HxrX+ ds\Ȁ Rwpxŷ aO1fӋ`CAX2|qĠL-໒>/q(_ , ] FA*OH)ԍA\*X26αej]IQ r/ .΀j 3/^ɢL'PIӦf }Q1ĒRxNT N|F3d(Vp ^[9:R61]|V舑`E6rJ~. BP]կ@Pp*dfzг+~'9ڧ p3qT\bgh ׾ OΟ_4$P)=79փ&celmQM(.ءJȈCk}!5Zn(i-XS£+j<8v >'=gCcjSo {Fؿvee3+_h\tY`iJ%/!ZT1u "R/|²x]k DUDmتhnwsTr0Eej&`u q(h63(*vDdezASvܽDR[̠_.$ Pg6-8zxK3 iS7׋^sLU T>HFA ȍWܪd1?D~! t QI/ CNE"  گ[O9W;tSʾ;OȢFPj-}P9$5?V7Ŋ"#zH$=Z&U,J;;\bh#QlFѶr I~-Wz'аm}T\HH^^ XX=Δ6E8hai͓]qrhQ..]&_*q$޲E ՞5 $#i 6V$h <%\SͳȟsR( myj x1{l&Iɔ+{F>Jc_m/aOŘ{^E­&oQ@)ENFi1~P%}<%3@&{rd:tO_ 6xvQs|}N]$KR{uȽ- p)))Z-?C ?nj! []HuQ!#jl} P٘63b% 1'R<^ #"-Z6¹O*j:aڙZ~H4yD,8vVm8uдnY!+Ny¤RaYa7hg[cp5tRRWs;y`FIWW+hZf-wu"3a$ƜA]5ЙJLhϸHvgvg~>1@TMĵ>7GJFK|U?l@/+ț;S{Q24-aXnk*43'݈0 '>GWpLK6-bh W#;_T=[MnG5MЇAy6?*{G-%Z/ΣeH[; _}fwh&+E q )OAO2P6iǺBAz궢Pgnm' R̈́Bj=fzW ec:?N e.uĻӧhǹ(lCIh_~+E= Zf@3ӛNm,A'8C%8t} ]䭤#Ј"xI^] :w>/ݲ k ;4Y'FH\ϭXe%%z:z31)}rE-] y_"POϒnOW d!q~1O?L'rb(+| *2ChƠ?۠(g+y j01ȋv]B5pݘgs_'N%?Bq48|kɸR(C^򸠭k~>x{~ LZܢdVQ6sc B#ȓM.Va8i8#D:<7f$0Ӎ{)?}]nn"3S.Ic#۫k'Do7/c7<όSv)tf,TIݢk5i\ +]Ř^zl;IGzN3- [X[} fg*P~*C7]# G`a[3/bkO37sDlhvj6\)Pϼe 4g3/$8]t'V6 -.#Ol`^pZ50nXE<=>`^Ftl&Ud򶺂܌+6xW*: aV5m{%}?riI ;F.t #~xF$h#$4IҢ.=u:26O070NOJfNU. r(sC4mR^j!Zjh?31t2*DQ A螠KR3t;C(W/<\sPӓA0fYG#QOhBU#AAveDA%*o$P[Cɂ,ZWl-Y]kğ1JC8ÌJE%^Z6ZEW%&z{z Ʊc5J?nE oy~Ǜ/!X* *7:vpS:ٰvѳL41 YJb_"hDn! M9M+K.;ALIm(l @Mom$00sU=\H>qxZۇOP5# j"^ =b*+?T/b{pHgHڳ.!S;A44JCm89z!B[C-͓ /hUM?b@w1gP` :w5c>OXߐdwF:IyeڏtƔƖ)ߤw@6%PT +8z{k0l{+MhV]t$}h!b 2 Ǩ'g7< i\{:k:wCU[VR7A`!A! P6p/n&n{D ]adw^eX%f@wE/G(>HB@QPZ#mj &s҈J< 7܃ 7eM dͭKREqцyW)' _&=0|ћt<=dCyؤ[ujz:u*F8qE/†%>b;jު;"ϋ54ߩJןs4v]pedKRVίNƶFwGo#r2cEٹ+սyDlgwGxp{E|2]>eMqBz[AKG&alY@Jt^m:d &2Z<q[بm v1E/VTԄS+FV^ rb*0MqX@ZR(F>¿~!;hfTīJȌrQnd.z櫼rQ0$MgU"5/46 )9:TrrWV LM*nh3<ݐGN .L񽘨FuߟR]ky8ur X0FtJqD|;A,d+.Def (M/(Węk@PPh); X۬swZ_+F ~d2s<>TGK\ߟGqzս_m^Ս]Yg= -lg_ztO) SeKeM` pMϖ)\^/![KBk7DwL"?߸ӈngf. -%Ky͛WVMSE/i* .xcJxߒ*zvMuLw.{lX+Bad ￵t 5woq$ꋙ )譈[x%#7wnĚpNe爚b\D KԬ^X+1I2s_bL񛫷rPzidZ,o_M [x>eiXWu)B ")U%B+LCҵT#+Ի=g KDlլh-3,A;!!H8SݛN}F`FZL7!$+&ωtAr3{t-T95+>b !ɱV܆I]7 2G&/*i$FeFU ~aCVѼO&|_p2i !q΢5ӭ@;)Ctlk ^^G482\ (2@ʩ7h_KU| 2&]@t A;m xTt&$j=f3}|^6UNV6=^pܮBnb^U%Y iD~uO1z!saGI*Wj(x99)${2wS[2;14 yIt)CWH\Lb/TXZB= "/ICVsV/e7ۡA6nEpu6S^`^21q_r)tawh_*WxǧYa&̢E^ׯuetAa=@:;PѶݹ̘Ηt!_f !P1r O'?xM  V7ocAIvHO $~!+_"(_\[q%"Ft(iqHƄBWyzZeX_#R!Oh߰hhx>HvϠڑ~iQ &bPsu`jq>.|8z rg=-1z,b8Qc cI JOӂ^2bE`3i+qf #B$oϿ ?qrރc]Z=pADfx@nqQ4@C/(ͥ$40 I >O3hҒ 7LhvOE|bЛ}K,)9큢0lQ8G}C-}OW\xI"= G4hprv*^69(;UYyesB4A?Y,*O`3jVol AܐQ=PվAy# k6N =.'wtWLF岸V>ǧdlvzLئqOD.Aٙ,p(ueBI}p;`Lz޽bٚ$<-$ڮUM}F),t eLDt\Wfӻ 뺤w۱mnkJZb+OĥxW GM~&HX`V1.<܇S#q"JB]-<'_3ZP퇴c2 l.g"vłd KDJB!ˌⰆ 8y :]")DwNciAEq1x?TAHu8VKDm?k%-Wz5]sWٺq A0._AC" ϱ$&V0~;hӢP ?)a0TwXmj5+1sw\,LCI^t}az&_v6t+IЅ{,k#잻Àw$,Z('aL'Յ/r1it|IVkbh>қ̇+YБ=.>5+{^lcl=4uHO3+** =V&AՊKkqfRI):tX HJ3}JG!qqs+f=/X^vv@eV!TP?kOInh.Nl\AbՇcYa>;&CDY2Ͱ՚͓Uo݁;,#; ;T">UA-zpYHS5Q2D{䭷dhj ݻmOGDGa^1yI ޫa\Q{?VJzgkgGix^A,T^JsI`Y]@~Lzm=An߇6..4TO"hD?ngz5HxN2ċF o\z9Y)^D~@_UG e슻|wB Lk S+L&#)ۮ1QhI] ^_pv1Jh"s r41[l"@'eKS ( Mh &w29%LS&<۳لlZjR2@^P{FY6ճ)M- Q[ *"Pڪ]^-͓Z;JB՟.u_TCj~htP"Q5 s"X);?fj5TaM$uYÌԱ ?"6+%g- wOQJ&zihM1;+]w-Btӷ0l^V<7OFЀ0a 'mP>󻇆BXi`a|ȵbO.trꦧr?|m7yX|K"q֊ϿJ̒^ V 13N >{fj)ٻYX;+ؖ{F 09asÞxfZ'BhE" y7Qtr3^mZPϑ%;Bv]Kˌ@N0E-(9pވzz-sz ˿r7bpWR[#g=6 Z|0 IAiʧugQ݁YHĎKkV }v[Ou+aZӈq 3vs65\Og$׎g-Px%1CQLk`W?Oi˂%+GФS mmc8ۉ{i7PWJfJp.廨5(琷FjGRd[Jי6[[I [-@|;T%wL4)0AһpwENdrP@o{P6[vc&t#[1|i;oJ:\)SX7~(CuA%x:O L: 0p+é̱T5pIO1LZJSm};dQ18ө '#X$x5ȊgMTquF)u!k/jW]tr*ɮԹ+b 3+N%L-Br;]tCH,܊r>W $ m{|J=$9Ѹ4=d5&|&\=[BOHiw'5b;Nih>gZI &yaD&}NM̋O4>Eڸެ +Y܆l3зb3d|-v9mx"6QdvE+EgOCN1cq) mG|rnO8h?BΥfJlfP %,qmT^W9|' ӾyDɷHE57X%Kl@1Id;ڞ+!b^7oXm!V`)6kvEprʚn^[ՉNJ*ZnDFPiˌ| 1lϽ:KQ[KSI5_HLJhɀ0r˳-P /lI MbdkΙ44~sޥ#K;WR>3KXt]MD`qe`t5cGߦEk75KNMD8v::^OS}L\;6 c+t5~5\ C|V\9" Z>.5hQƖ,^GQ^(tJ19:2?:=k+ VE׉~g')cdP˳iXZ&\m e&Du#B"uLt5E&d j]~p5k=t"F,p Eƹ (<~ʿQ mSmB㰞9Q+KN+uwP:3S-ƀ`軺Wj xEY"s}JLJGE5ú)1La]`30;hƶS?v]H^+2GwImTYpjW؜yܨ8|:?]O! vf`VkGɡǻU7a7”wʇkF2ʨcqss߁usmKxTQM;>-=5iXRGUh+؞.!͚4+x[!GI چ9NYbau!ëB@z6t]Ie݆wC @` fMx{bKh`ީ#_XtwDh 4?׶IbFÈRIof O1G;Ā*2F?UjHPl#!@Uڍ%|3| ]8WҳlWQd9:A(yP`ywAkkDDɨurif> ΍,@T cu+5~,Ip2,Ȟĉj']rJ$9tmu)5pMq}=6yis#RQ:bU{S [-.[ƏT쏌;wa[.<ٿ [ɒ-WrùrE8ܢ1Y0Lv,poVC"n.I ѯ¬AWj^Ӏ(9+^ g+F(~ւkar aʂi7nv2'sn녵-k:.ȼ4D\i}-]|"z.RX}_+1Ĕq`zaNR'\$3ŊMk #i'"T sHwGR8/-Egt597:z,:?]M8/J@"T/acͼK UF453FGYPy[;BnBmXgh4ot.ap9^C@PR [߰?l޶l z3Εrԭm-C$h"3ey/l:)_zt6!*jÊ`ŕU4'p*VL,fu%rzWd[2\i/ +̻J8PȆ5͂$`h3dN/#lRiw44m"]x~/'it쟚DZx͠#aM[6UI/HHIFŲxy{ ,k8ė۩j%3Q36ؗtBkPPH:}-u <ԓșXLomӱ-nB*ʟxgΧ#k/f0o(lvF/YaP`nDOHzO3DQ TPgvYXdQ%'iqvf0sVkN7C~O1 54hRc!׶;(O7dގع?( ٳ'k^]Uqp$G+?hM);ۇ58jυ! 3!"ZG) 6P0Zpox©"~8`\'wnXF᳜P^e Ja U^MX6R@k@'$F~m\QT5ZRU)pJ:kD!c~?DK?O=/x !leȋ  Eʲ?zt!L'^\+F ڈ  62I;=N4@L$0h>p qr8]XN‚ #KٯAvE ]l˿ ;Q4:?Ɠc[FBFrI#< ?"bם4^9 tqSƻ ;6i(i@Ui$]<2cSj/*c4x݌+/– qK\9B?@Ɏh *~Je?nMp$s]Z+mMZ -،$bwA0).nZ1U*/dAIgŸR-u5(y0/YPvhKe\7cXnmĪ !V\hq ݯfۅ;E=U(@(J Sz  :#?L%z]?(VrH_x5݅eL8q6 VN )n͉Ѕ.z0YD2”y-c(_IlWƿ~#pdM^%&Ivr)s;dV17p|Zz~UO%ejv wGquV2S|2tCx75V* z!s`+LwtT8垿Nez( ;DR4H>Mω@uh_† FXwZu."?$ָS {{3IVZ'g9hwSE(\ x]'Q?i V](uLL̮[m?P6x_><})_Œܧٲ5r;-'O@ϣT["#溝%*.%6Ӡj-AaDgsA+U5QJFW[`G[+FԫmN}6 1Hx jpzRw| K '>lۚ ۯrg4w]]CR|O˝%l+b)3VE^ ,3[T63z ?>lL]v8, A࣌pC%J$ghM+YJCb$ȩ֕;Ht dBR&@OZ"!K lM*`#B(nDWC$2Ԋ)i@EqYֽzUWU3זˬZwe^ ϭ2 $B'xtÎcr 012-1Wj0Isa.r8@eǻ j8 UxĔY޺]/CwBvnp a<wp( 䓦<ĹIvO>- |4͞deb4oxz֟w099d9fFE{ A& !Ĺ0=TUm \Gı@.Mfc b(o[\E?HױLw^'eط-%D'>NzɧЗL1LΧ{]VhD%MpP;P!ElxUŽ]Adg7HE"j̧`d7BBTm?OګVnltmB]C&- V9+k:y#:.VNJZ4rD)@f˰}M:DKW@gџagp@Rތ<gHQ'Ih_^҂av|pXȓg3qC bsjln|Zgj3,5r>0+poDE4*}P8 #3v*OL.D䀳KN=Ɩ}Cq61gKQ0KkȌqC*Dz_VU/a~~4U_Ei*m>֜v-V"+<']lєKByyfIɽ, {յSV" ^sOjNtyi RTUDPBo<]xӟJz/»N}Tҍ0e}Uo,ĶE.R'5y=/cfv0WBcG Ǵ`xr/ADqCs'}b9̚.$j*^7,g\}%"<'k1hSc'/bN{;'[-1 :ho2S~%nAp5ˬ:Av2H-0j{ {U :5լ&"-:YO8Y )3%M<^iy#!qmF%6S  u螅* =E&BYJĆ Կ f%pSQL OjZ 3V .@]қ&/QB[("NdZFyCn󨖚~̌(AiU ϫ&mI gbmY.zq5>OMvFT"8r8'7|F+i%($!(*AAgOYV_GŬk 47u@=8fSg~%h!U#)GВ loHW=Qfqrr'%adGb5YE R/j&scni)v/Gˣ {]g{nԻ'|(;i4`f˩h=H ؃T8h9`W?}SpEq{l1+$>yfvQ<Z% f<}z" o"$+KYkBd7>-Tx1`i[QaWem=\ [V6wj' ɢ5`#yFT6Vysbm9u|)+5g/MU]-EQ7!"*|K'3Z oW`y^d0x.~N~r,ipEMX֩?q ݌9lj|DHJi?}0X,則7 $Izw:Ds/N}Vř`&Av[٘UtiodUyP)SS+\~@h o{;~x#xٝ1c?w@ ,Л=FVڪzJ ^_U )W9pL}O{M 1$E+,UK$W=@8d2)?RuY)DSk{J%G93$|Go tKr_g׸C3W]v!L߽,oU|a&gVr] X2T[$Tfg+PZKn 6jxXN_"*a !|!jt JcNt_Q̀y V"Ȉ< fL s&AꭏH-kt+U>YpE]IG=bu@4`Es }\EQ kCV85Va.@U#F}|[$nlaʳ*tnל>rΚ~]/;5xKM1Td 5ߤ Mlhۨx^L6nPFު0ġ'Z' }6c?xa~kwM ;P9WdO :#A6]Fn}s,sW+$C*t\Y)BR9S3MlOɥA׈~\v1A"e޽& *I:$KwۦX<!zτbt:jtuM9>5dl8{]`4z1Ļ]S 6?ɔg[6~|v6IZ*6x+#o֙]bL X;crQ:`jKRj/g..eumid+ y/P=dEԢu o"vsKU5l$ʺ<>j5eL>C݊b P`՟ZUg>]|Ac' ܤo1<4iΐҿ=ލİc*jՖubSd &<ȫT\.E(A8sEy̨(h%1#6v,v_RU3ؿԁ'DS! +}[k(䑠M]7oQۢjU`eIm{h eE CVJ Wq'[p6Caeduް /Fʪ0ء,$\Gi^qwF0u:u6kt8sVHEIS0ʅ Қ^d^K36865WT'P=wwJd3MXp{T0 PPcoͱ'bA=zf{_ʜ[ܖt)?aNAJY L |c,# Wf*Ep­ySNb;ҜHǙBUO{7[hc[& rr~yRj3z$7, ȓ}asѡ@/)oW!(ӣFfhO ##&v;\E/R\)?pC*:(!oAtlC);/~%I;4[GF_H~JWE]WΌkROEw)eѺ@YmJ-G(T4c:!PI' ;V{(r]LNМlygwu=9QMcvG<[W lXu5yKdz5Nf9%EM:o׮1N6kY4p݋o'8*=j E `Q ͇CE9 ! ȥ a7P[8 FPvhߦ7?r(;u,!ލG"ycPLomjA[NST!ctZa d]$/t71o9U;J oGKU\.;qt0={ޏ68yL첍*Y]$6+̿okf@d{bӐ}CX,^θ+rpu_l1y岚ADr{_:dLZ |yw6$ +]9+&+`\*-0{V7D,3N^½t/*-dޞ*'uhXqH|X{doֶ/,${0xpFb >,yEA,|ppu։)bTt@%5ѥ; Yi5T S `"7dW؜Txq%BpQEИ%}$EK" OZxp61 curʠ4tp?C2қ:N޾֝F0Y~zeϒT qEW~>lQ(O):|ޚ9Wh1== ۇwc0 TR/KwMi>Kސ&5q.)&FZ])Mz\]ofaeN@l Y]ȉ&mE<=)UɠNB^X-^]2.zge$W0+7"JgY>Vs1==ɷu7ɔ[4TB##kZP#͏ axWX Or_:ɟ(:l*xH(%yL&cqƆJx_6aaysUG `ICviBn7U}' Qx>l:2c!MkQJSϧ3#HXm &d(<*ğ '1OlN? 緈81q[<6Dq,ءeػ}Z˃,,Yc|nᄸ]/}&^q_ j\,v"g{qJnJ|%r`#*SFm6 |^0}H/fwm|Z h ES$ $bQV+ KG=ֆ}Aާ7P9&~Bq6R.=>d= 4Ip*F w)uH)|(doLJL/0yxR$Mf(-^S *bd%)=>t.3 Ll ~6Vq,uPئ!KK{9b Ee./W]][΄B~y9{sQRmHКލkjc2 jϼ(Q˩TcttgZŮYg5GaN݆UU(^|.R0qľI{k+8%~96"bB|rj5Ĭx(: \r_/Qc#0-d,;!z_236:TcIu~vBߍ۟WFN0K$Eن*)oH'ii:Ho6<۪>1[MܥktNıkdq &< ]7ĜAjlꌼU:֬ ωT -d}8>=mʙkUUC>: +MR3(> +TiD6AۀE$JjxV%Vm"jؼϋGC7"P@"eݝ#ťi5ʯ~( OfK<+Wmۚ·A=2;D&=Tnrb|Ru/;r tВ-Rwm|`Kpm_%X8Jr@3 v8ڿcM/zo~$'GZx}P7FS4RmtÜ8P(~ ev v; g oْ=̿ar"A2Y!d"7^ll.12&5=29:^MMlMiOހ@S=nj%?~8xKa,u^B⑓_>":Cac UdBr^f)t<%?ӳړc9r'6ʅui߲յn3k j"Q'L Fdjvo1_,m_h4"%|`NԵݭ˜4iիXa+Qrb)*2%M:mSv^iĚ}OW.=kdX^}6![+x)hR}@#X> K Yhh~O#[Sԡyj.v~$9F$v\ QIܼTt{np?fX{_Sg`db9`l5s>S'V&:B̃AIfj悜u"<<#o A7YPF"f2(qSCX +ք' iUK,l` >dG tJKעPq㉐"ܐjˍZ C2)aàeVkrۃL#=<ʒ/!e ЮûeȌקok4Y 5.&2*JA,r. ~7U;:p~55薁揋1Xir1(bOd`lNPeҨ([Rt:W0 ϯ׈C#p73,߈V>V(x0Ɇ]AÅ3>~M((. G/wg '2UȚT#x'ڛҤ|Z|[a= =eBn+=TJ8 zp#$Ü+Mً/C:4B񔵄#<n$](@/l:Pr9jC\Z5F'%(Ev>4Mu䂿', a;ni)] l ;M񦤜#HS-wk[m}aU6 ?DF7Y\Xx/N9jt;$<.T>)r8a/` X7L{[tXHNJQ}E,Y v3{x,#߾U19ks0l|&_fӕ@`D>U >k@A$\є0gVocgIE P yvj*;=R2XEv Ozx) y&ɽw:8. d40~Anѳ1ପӅf.TŔS[p"}H])4C5u>݊9/v]@<"eQA[h6uY13TX% hflR" Үwtw妄5U`;ּQ3Lj`j. -ЮcsMLN[}Qq P:A [+/@)PZAWg +&U0X!1Ƶի xuk 3 89 -sga-vM&J]cDoOZ $&!.J~~f;eqek"CA_H(YR>?ْmc& "pZ]6=I1 ?w;H˅>swBkhZ1)e6u72bu 7O MK5EmL \KKbl$>1ճgـ5%/)y:mJpw pOyAe|vF^Ub5[Uu *42=C߯Ns^>Xo-:Ka2emWt:DH/q o P 2#l<ؗZpN\SqocFSe55ꩁs\x}HXc_W򹚺CE0i~5ѡU{%Gjeu[# SG#,5{}q^]˗i%I"N=\QU)FK>!}7/MCuD( h5+.#"Fu5/;[h<]iۣEȈfo=&1"e4{X%PmcOSGsA(\@G;#q 퐇4Cv\j/1=c\+)ʛdАNJ|oD0J=u@Ws}eMm3YV+7 0(ULA7U:{{`E(XDYw ^1?&Ćg(愗痯v_fQ"+z z+>*BG z݅9v#V,v4L]kg0 %O04P3%ͱ ,W_j6oR&H @ѹC$1liI>}7;܈2«Ҝ eQ.$e`h5mQJW°DLnX)4rR `Co22g9*Ug$9YWp۾Zjf?sU=qfN\\*!@4| T `rTw)۔e>!i$ iFĤbq1p -JNVR-MAyMm:DT'Px/}rgBU;CfuCӴ`ۊBm{{0wl',l{L~"q 9hp>;}n4Zvr[F&)(*huЊVWh@Ʊ4aEsƾXB*73ް W/AY}8oӛ%zǹ7@g`B¦)|#o0+_WZ=xu;K!^ZU\]~~;Pg=DP@p**<ظQen`PG'oY`+ZCNF-%(q#7W"l/p:Kc%o9Š!>R#U>h9[q0X {4pjcAT ^6h(ăcd%&v[K-_tJ(h_zXМMRR IȖewqo!&sB/,+rdmfS#o$w7/ԑHngBW[S:RASz!fs!ج;PB`M&=R]M$'aQ}bΈb*1\OUQ2`“. lߣZ$o&hB_Kz@a}_f*>^.Ua8?ɐ?jW:k@zkhL󃥸V[,f >꺒MXUFS*qmqU <zipy'62D2h .X-c;|@Q⥚[0_nu?dBAM*d<5]7ɳm: ͓fqg˶o* Ŋ*Qrb! GG j%Aq҆i<UZ/zprdA e*UQ' ^vf<_n.ҿ5f(c@6fS"?$Mʫh^}r;Qq gV 26u+4͗yr'U`qt/?Cf5P / %D>9Λlny6j >e-`WG =~ݓY"%F~H/3hTo;zDkqD .4;Ü ]=3T)|oRS0"`{trknL$Ü:5\/Cj\WR,<%.  e'0ez_)]!nR^(:GmVuJz}!癣=B k|/w"J3ĤOQzq_?9GbcHQw3ؖ(St^pFdO 1ӿ,i6YuE3A~xh A܎^0D;}60ܕ+V ˬKZ zgf8U1~i,pK"#jyF9ε! Hm'%FvmʻmiBW~d5r遊4EARj$ 013R&%8ˡJ?=׬,L1B.]0ֿ̓/yQXZH72#'p[#-#(Wm+1}qCM 4pϸB$ԧ;A`&!J2Q0%h C))Y)Gsf/TLe✨w9F7 G7FƵ,rTQv>S5~pt;OmP s:}h8:]u%ᕨ;OpúNU9XvUDq4nOԀS&͑}O<7NSBҐ;Ab(tf2b4#̻hW&3l{PY!`m=&n97>9,|uDg&p\4w*fي&붑Oy5s.ґtyxcRc="'!,8|4r`ε @^cY;dk*y+e(D QǾu>p&?;9򷲽zAyd;nC <+όt4|a×8` 21RJַxY^я2 ep\VxyP(,xRO_nfB5zl6^p1তtrj&@#'(N=M7/ t'%ӫ ś)1˶ZOrb)dXLK\NPX7-᪉L.೦+bIxw\:y&ߘ qn]6=yʣ=eV;B}% +_aVxw15锨}omΦupuYJAۙDg壐14@6-HdGNs R"8ǣ|%U9|3[oyo@T: 0 HgpcA_x("< =TRBq\O7X-aסen[?Vi<|Й;9 {_ʮM E ˜C*{%Zvu)YĦ+fb9BD]D9WYWYx _Y K1QMHi<ڍWwL~[H̹r+W+[(>k}Pf6(FlNMZeA䏚R.dz5C :uU` YFf`3s Ba~Դ)5@%:i5Cї4xMjc_uBzJrcǠ1Ƕ]Ԫz9N/rbhS"a$p j k80ecuJ%L3hx bw\ȥ /Az{wGwPt;1pO2%$RDǒrUy\#LDڂpP%?>wr/F=Vh8]g-ג 2+n xUvO{L3k![y&‚\ˏQV˹2^}Xn xG8*,[\OK $r(nRթцts0.?[Ч*@Zgo ޏA,v'ë>׸@IIXXaYhyoM 7ј/ywkDr7O4Á{ȅ1Cń& #_OJ2c׶y6lNJ"[lP&/HޥR@\dL2)-p8_iY ~+ɠ.)Y%&޹xw޷= u&V"7f2_Imo agҘ]0Np?"J~A 3TbݰiQ7^}Gf_y{@0IqLP*O(цՕn(a蒽м>Lm1b}:@7>ߡm]wrwdC&LBNi[w} 6a[Ք)h;B&E%rլhQ_ocԸ]n:R7h*P~YjFFeP85$Lj%(]$%npҘ. am*͏$ͫw #Ԙ9ryMY(f7M=̗瘥LַNFCjul)[Oq hMu]4H[#ۮe2 ')%֠!.P=mR>;b% 7 UK5vŁJP2eiqB+QUc~Z/9*ؓk-RzuрDgI^Jze&3ƞG5l >G]G81v2 7 Fpafσ K J E'$uf=~}߃BҒ#jWs3=yþҀmXs,mٌm2J"|\s*k+Oq/iQ,k쎫E$}k%,p,&] |G%I"R{^2ëT{4W*~L5/؜(5KlMSKkjLo$8 Sљ& J#wJlǪ;lOݕC/Qh_Hm4;HX]/M2JRZxZ1Ê8'?@8>,0ku暀0&p$N_g?ׇxt^6u?_$kJ T )tC t2A569w{k ̒hQ$SuCUp;ȚhNG&䏨ޑ:D:eemu8;&#] R<_^Cq{5"}sNp=oy^kENZ<O͏G- џʷe3!pA[.wy1.}`~JmGz o-6 OoѲHˁs.dx):ï+"OOGn/+3ÙˡTߵCH,ZiŬ f X8$dbZmJ+C%yOR;#viڀ.A'?m=)ݜoOXSER+sBNLǟo[k1o  TQeCl?GvyTlfLn5N) J͙wʿ˅afh)>&l~GMI;tzmZED&=ҕ{O{[L@/6b9*U}fI.Z3Y-kF]!]De&nrƭ@qocA,O\sv|F&lv j#vys`iwMBjMح:KdtTq( R%0ek^sc"0 lU}*$BXt2E7qu ޷#W]N!XU4xcjdJ1`"e^c+GdQ~޼!~5-~[a[}, ۃ);DŘ2)=R@ZAh4 >Zxo&{4zÀu/8%"l%{\ Uis($$]%vAQ s){hSO>[j'gǾ&m[NB Ē.&o68fo0+ eG2 7V.gm!M$L7Y<ξ1?O 3g)u@HuґHd !I1Ǘums m˻`ٴH/e6:~4E_h8y.^bDkǭl}Dk}A8 aty.-bfG]*zadu| !-ĐTق7 5uZf+'RhPrյOB^fAK,հ^z6;O1[y-vAbWMĶbm@ӻeD-!l%zGBs,| UR^O!BD5c~@SZ_6ؼ^nAj#(hl6LT[a.ì`DM8yu>N*f9_= DXEFl`)8dߙ V\M*t4 &1c6qx'ɯ%\!鰣 &-fS-F,Ȝ6^Gz8y*r<AMJIt/ Yd_CwP⨵U>~6?xEqpɴU(&Jj$> }W(],85 Wp(hϻs^Eha=Ή-(m$٢4|l]qHYUUyAd(r#1u_@-[lC`4kk3@^c]tlKF`"^`K q DEOq7۶}{|Ez@hv,Wݫ)Hhyj{kXxe|XXU; *g ],9+_r%'}f?*spQWiOaqmS쯿WF񏛹;~w3qr} DULTQMp|+ :/vKC$.@GXob JA©#-#N# s-tl:ECE2ENz5Uuϙb @C 7V+O[s o@[2:eVT/mmΊYm AMiI<4Я$Q|K~姤7u~&g8tE3Mxv IAqv?nA|x ,J.~Cp13Pr@%pYL|-XjI $5H yKlcOeՀ]鰯ku{+f$Cg~s}r9m(~>r{?&yz<G%\Q!M5;^g@}gKCAˮ}Gn0q7kJ@)>,⡊Ȍ0 2][V̷fi5lwMsi<cۙ)ݶk[njUS+ _PsPN禀 UAP0V\ItDD .df"r~{RwZ|7'%2VIT!9|T(13 by\|mtSiwrJIz+]'xӯ !kUido!:fit=v&j.öYtn tw!r=4"p1׫џo[))3sizB{o}悖^P@̨@BJ=SH5 XM" ʮ&@Xc* 'X Py_쥟j=IΌEޟR=X|s}w2mTI-QRFȥ Z)IUmMpO'㣋}~޿#ħ<67mK ̋ (yQY=DY D"uJoCrE>wB'{6umGUh%x+-}7V{Gٹ?3_y>X"z:y?@]! d:HHs".܈ZۄD}T d" [g~ U1zǫb/<fDMWuX1t=/Η{?o~M_5k}~v':oG@wZO鄐qDt"0J0SCuu׊ I Bd5Y,j7x/i:OY{p{{!0_[1?6pw^ eucLFydVF2%DLUxz\Gu'4]^ﺁ9s^+S|m߅5o< /]tOc8]ΉۘjD|<A^nU >'_ k*s7 ï5 eAf?hra>Mg so9Wm_!3sZG[c4|9/_pG5{(ӰnƁ W`DhD {Y'r-eA3>ILd\w5D }4:&\6$JښX~\1rLjm<:XCe. n @Y 5U{Kdz ϱLp@|2^qUUkߥ-?^lOOEYvg&E|̫N q/w`&_ c ?^vl~ ?XnO#!hI"Ҧ 9[|$%0)Plm/+Xpɣ?ҁNIXt;f@?vHq= ޳PADA:ͪ`3-. "HF6Au#)U˛:=G8UMdqۦ۰lT7FDr^`AA)+ ِ9P'H/%^Ҫہi𳳳س]ۣeXP;Ru>YtJH۱x݁T i A&S BgT$&ɦݰvಅaIînk]]gYou}q}?uz8m |:m˻EN:^27EP.4L^}hGIh5D9Fi`Pd14[7SJ Es$<<L< &'v vvt&]zdq<4>k8*=,]HG;\ȿ@/)2v^l+yz0,^DoCǏqyf䎇LZLLMXv'Hc+!#rF>Sv99af7=JMf)Tݽh/^5:C!S$2}Qcd/?06??)ѵstN˝g~&ɹif wPW}厭-i*NzSl# DNZJ aw6bDTB`^z/{ 1oQ%7ͬK*jBH%bDP?HaADNA]C9T0NJ©쑓Nsq𧢕C)5a<=/}dڽM53c[.cy/wEBjkddEл |=z\^߃Ms1?\?_n]2HI!JYLy~~=/.G›NJI + +4ݩy/y=t-yE5ݣnu-lNu+>Stc=Mn[QcPU-,m bh/кgF)*}3sReuaLl(܅u%hz;*}x]4!3Q4{o7)m P;9$QVѿv?h.%h_Ttv$!J9S9HwNԟ=1bz{1L}x蝊#lM/1ː𳧘_ʕҿ3}}r^Wǀ+ݾ{M'MIdw^^ZtGuSY"q"RPH &ĥ3M'pΎCimj)* j`Dx{Ki^( W1<}of/NWcQFKitJ x"`sM@E(8HJ>mu777KEʳj\x=}Q.](,T ‚B@&F@1O۬ ms C5fjb YCoY4m٘* +V(-Quks$ԟ^ OH_y ̣ZJ6W/?#hEڽbڬOAOyCwx=582@ @WQڍ`CI<^"Y}" i$4^-\Z-|OM` HPy#/M  AЪ#|DE<A|MCyQl!k/L̘K0!렀MO@Tͱ@"$U DU͐@uk@voq\#OE~>ǽj7Wk@ $b4zjvC4l`iL ~:7@'$+ActFѡHy!`~7y*#H {hyMBm![~/w_;nz$3jLh$8i%jk(FC$Ej-Cɀz?NHz.}.{~'?D~8TS(M 0''ʇ@Pp;҃D@' uADS$UrP " -l=k?36WVpݞ=f:;10xT9L׸ҬTeCN;$%y ׊X0fIC4c YUp -wH -~II3@Yĵxa`c߯p6 4G'lXty,3l- 2M9eAa g*4 #u]fXN$#/'[oP߈ڂz~.^f2m#׈"Z q@?"#tvq@{à@h~5Z2zDz xj'ɾIF ap &f2%;Uwis=˰3 >n3%YZ²Mw[ ѓG=H!7WAoI0 ?fztS A\Gm+Őj񰺥dQ(b)q*T 0K4mp4KV_'^.nC% 쌀b/rdTkcyQm^7/i qZ4{ R俎ZF34mfD-t)\68-_5 u sJy{q\td%#N@(2HeIN\wO\lι)eqqӺv8z!DWkI u%aXݓҀc}Ƅis6?R"O C<5ܳj/pq1{pQ#13#ɰɑnT{Ү]j?gw}{iED-5>&) wR{ܠ!BsU ~T "ʠr/؃{Ss7N!zFB  } 0PAQbo$@R Ph5KI,PmqQM`BDʂ ""!P4C@e) 4 k4 k @ i HP.H` HL$NI& Bd±Q+$DC)qXhU2KBi RJPmH2%p,֮15Y6Fd ;D(8l"PCX-)JDPdl!Q%rV@eA4і$IWUm*DTEnV45_eCR"]=\9+oc8~v)QRY.8.1Q1 L"J"PJH--KZ!и7Km'| '@qrgpY2҃W/OÿDˑ[騮 H<Rc2F"Fl a.b+ҩBI0 *H(),( Ty;[V3[N_;_mqb# T@̈KMD{vlyq'ߠT8@Q(Q(z5 fKH9J2JeXT:)0Ң". !B B!5,V&E*P@@(RhBaʿ xӍ6+vW1n[_|3#,U }?d7Us( ؘ^16mE;[R@)A@T! }{ !*³$[r[ ^ud;&PeBf#H"B6YlTkY4P!{ϳ06Q* T`"((F 78)!c,rJ BI+I'?i"בf22* a$)S.^wfytpȖ}rfM)qYȯzx  sv[oku 9@jm_'}[8"1t޾!Ch%!R*_QTE5~GllM}[O{zD+;ʊH|&U.AsOx?Hn\v{%0ؐL4vh_<5gn׀\0H~%H(}ٞS+P,\E/'%^=~>gQ797ӭDE ҈Tg' JPԏ#o#1gt 2=oL:]ӎX/}hsǒߒї&ty*)o/9p$a yy48D56c /¼T6*gaH%JdŲge~*l0-^{C i'IFas*WAWWV=%sD[eѝ4Цn ې;ݷYJ2e]\7ƤU%k[b漶RYz 6aH;9vQyWQRIڼ #Ug{Cgxvݨn@7c2y?_/ 1:Ɵ:+&zXyoy&5 njJ2B9/-Ո>.L·d+3synv#wl rEk\MMEn$T.9chqλUR}\+n éM] Jv)Ѣ/jT(iəXhҭbRXc\L_)AG/gA=2w>>[OpO&qn&1vwy'w7jy_ad>i_o >i;KW]^#mAUj-jmx1|"o>z z[G˿U &#(uD.vfq 0D=o5\~7d,!XK9ٲFsavÇD9`z5ι8PQK maB7p>S#8(R8% Hq}U:Bf0Y,+}& VJ#-!A?Go=kUj]tVpۘn^~ql6Cg_gO5T~mo~xǗ&n AC'*Zc*i?yZx10xڡiҮ?rǰLJߙ*pgNm& "b\4[[}k:6owڷ:*dN׆vآ~Z *Χ&~(!~Z$ #06#Q80n ʣ7?ho](??*A(ǪOq`>wQ4H=yC3 Pq#_yt|}5AV^ @ )p;-zo?ý9lqx6*BЭ/c̋m̎iyաPa;Kggkle"I~F}F H$C@hERVvP{}Z-2ǣOr\uX /Ye}邑Rh!DdR }sfbn1lOF=cU_"dNҗ{kfwObYy4-o5AYշwuעm%:bTJr7%~f$W_V\; "tNt:=)O9!>>}ʈ4$.LIuI| 7Hmk>lw"gSsUJ k 5%k)+xt(lg:ޮ(i=K&{~_'$~ɞ1uJMynR4~}/: %s^[_J\C1LgEr hvīO"z~Sv\=_*m2b?Қ|i^˿Z3͝7|Hy߿ e~/{icoBmx7pTIkZ+w U˶o=E4i !aЃ=w69 @SXд `Gr η Ծ/.MϾ[_>6iXWb&E4 l=<58 : ;,w+#f@vdWL}?9Z;Qd\Ⱦߝu[~-)F9s' <%G!%G5B9 w )5Ƥ9P~u$_bݬ ]BRefÇopas-v| ,RQ 3I Q>8*#2.vM&ţuQ.T]T{k487?JO.r\{OViS}I*cN0g^>am8RL?t^Yu w2|UEB3 ɠ@d@P A %y9]QjKJ_q"rV;* \#iNfW{TD󽟻p~ f,79awK=Ȗ=6e中nP `([g,xoԚh)I-Х XԘM3x-z2ˇnZwΔ̈u.v}*$Zm:Dy̚097C! ~ȱ%n251*IC*re,IXy?|;׮~o{ՠN'3./ :d=bYkŠ-O Rݴ(HBO0>Ώ"yuvYܙ"i[]x tTڠQ2@4z?goqJoʃtZ׌$,+V4OuQctŒ(YlU} KwX|{*/bGKtGpiWn']qhyahMӆ֩$??ͩnO5…+$Jl/*Q/萱ۆ3w| юdz@r;w˹ikȏTtK|*>z]xHLF DFZ_Ӡ#?'xڂ <Ӳ's?vPӕ?z<}] ރ.룟RD+sf3-6- 8VJ o5׎d( bJ~-*$/Yn2l4vsq[$-jNB⪠o5{;:>P)B w9Q{cb=*2hu?$>T.*ҫlQ.=~ 'p GITyPHG_^pBlrx"EfqC~(E';d>V .ܐ C&@+!GG[{9? fAGo]+6I޾n5q+2a ~݉#̩q^NRieO11)z~ \%H"3*L e7.II -9PA z0^&';[^VkG( iN7! =^@VC (?gcOc?mRZV P*U.%,Y-7[!1&Jl2'fQoFIrh,h$)1o-2@"X9 {PēϮ4~[ż}wm;V7nI൹~os&u> ic/5m[Ƿ3_O, ӄO-ޡ\mI'soɖX.:G"hxVX+wi9=Y,pik:ާ""Xt6Zw_bwI?j<'`w luގ@S%YҍT<:pj/i.9X4rz?w%r6[\;ŕɫF?~aLNn;(* @API#iϽ'foĭC#/Mj*~GC͇=9N^wk6UK.WyRLmƪՓ@4YM CkO8]p3^nM,Υ.h5SI鎏ӳWx7NNN-h(Rnqxk8$@_;&Ԍ 쥂l.{4kpi4UD@ 抎1Vtr~U"`+!KqI1}$#.7 Vq~XS:*涓_%&6(m𞦷WRSy]Wપ9Ɨ.d[z].m_'?qrW Ӯ#We]]Yw뿹x%R>> l z2( Ł0wc4㹇Qɣvo ߰( I>lFXiNoOMNJ7쬇v_Xs_͖BŇ L8aP˖8]򃗧vD3A\7$1,n 7_Rf=+S:uS}=_zLth%=!IF1(N܁u6`^n_{ ^O7"Oyi9!HYqS[\H}{r̙_k1K@:QO"#|?!g{K_{7tg~SAX$9@6Qcx<"d&:7/=% E׺:5Ah["O>t y H"GxjZ\?u#cڝ1 ڮ H|5w_sRi`oalь) /m7'Z  h06cCxO8*W{ B_/ f˼tZ] ]c=;GǵO^6)((.|g|TI=~dUdlUth QEĪV[E@wCRf,1f$+\dZUZ{ :˓UW͐imc_m?;:C}{E^Vw{G(.8֘!L$ƥH+,SP;;{űkd?B'cd*K 'Je%@k}_y"mD`%aB@CDM A ;hӧ}ίO"-쾺ߡ>@~a?ɥ?_o52Vawc\iOM늮fVaJ_)6OW>U}Lz/8Mg OmN Nh\rdkWlS҃<ØN:½10[3!O Kѐ*L"+ !W~#Y:L߈lUxry'޽s׃yu)ų/z[1 䫪2qrYHWsgQ[߲o|9 Uo(D).}L-.}k2“E a9$UЬKR9H(h0hUjaăA;(46 `[4A na- ͠;51aܲƥahyVd@D1p@H4 ȣ L'؇d`,?[E'$COes@Oo>=N*@`~Α64<:\Ȉ°r(\uw1%㰒J鳚%3LJ{ҊUB2_zNN.1p33/:G]wu?#l>O h8'#Y>z~ܽpv:}{^6p3D)D_Ѐ3-QZ:05;:5Kծe\J;?}L< GHC;WR;j{M8|jxj@^^ P?l5"lh #""hbFL 4AvJGA{Oy Ta}`q[m|z{FNJx;woqo3F@/[v~Mw\Z'9%($b)pTG5cKv\\ 2i o *eB$ϧ!I?a?RMNJˁ7]L Ex/y=A)5*+fFq%U,TEMPLUUDU&sw#}֧DC͟.Yw: Lܓ^Ę8 EF_yg{oiS}=V|phŮIꦊ`pNc(d$!4 e e(iѥz#`6kT{f?f%Ӛ})JtT ʄ^@}o~>'Up`B҃@&Dj#+{ cg\wᗱI@~dg>4~t|d Z#fH.2Xܐ{Щ叨=_ʙKXd={ '̕o͒+nG7_rL2 XIl̉f]w_fb T$&Ƅ H]d $'Xe@K[z|؛{)@,q H\%|Ɋξ-czl6j>#>3ʩGȏ\Cuws'i]YLixnplng +hى)'>[n\M K mVY+!Wevӽ~S_ܸwT5NrwC'_LSvޱjޛs4r?Ź^aO?GemۺRv!G7w53%-vyE_(Գ?UmSc ֭|-5ZWIlWD'c.8d@/$M-)[:A\ Zs4-1L̪# ?WpБ}7!\:PX:t*{TS;cHub[^&[RWjuN ʮ[j]ۿr7-lMW Ȟynסi?2e?Ҿ_5T+Hމqje-q.e&mThdYj?M5݋sy YZd95.6VzoR:'v.j\#LG#!ԭBpjLGfF2Nsj|fNaw"Gg`b }~ۓUR_ SjX^gD<]Ğ{RVQ4)jTM>~mb3Z{'5U-,п0G8%ZNAV Zv^]ja[n>86ţ7CoB"[gY3u3S )߳)A:t%ֺ,q.v fz%I+M; w0|mX~Iy7>o4In%FdT *ULt%8AO(oN|o7?sޒƖwN74aAL2c!.oyޤfo~oe+/M?r (7 !)DӚ *5+o6 eR' 4ԣ<2Jډ}0R>L &)",غjT0$rMv?̲%=X]q3'oJu/?ڼVƘn)8՛0yHP.lWV56TNػGSp s=U˧n*NOT1(= ]&\ſꃥ}ΕMH[L0ˆLaN^V*HMbnqRrZ mg"bR I@U 0FS;̧Y3xR2:#%1r QDn}3ŷ g|]b<[^חT[݊<L3q]H&> =OOg#cy7^ty'@6b`dD na$=jd/)=d ]LSI2h&f8;'1GƪgVA?iW,E^;"6P@Y^55*DŽt_wH=i͸0JOJ(qzUq0~童W`2s7;~<Y+>)Nl><*S1a.gᜥ|hzmm_E_%~Wȹ&8z:3G}Fܒq&OOrB)d5G.`AwjiS"޿/}w8;3JYfNB(yP ?&|{Ghi@ _J;Q.ei>,Pۄ{?mnk ?RaX|5=̇A$>-8X)4DkJ~OaGvJ݆tbN6T#_ϸ֣WXU=2[oyl̜)i&2<`{ x"3 H/y'Rt<5$D/.hNNP/U02@wW~N[{p>&+-DR_GՓ^([3G93Nr8Q3߉r<A9t:րH 4SWg$~$q#2Op=Z7wbk憀_^?Dog]Vp(P _T^΄PN2{(pҾ4<0mļH& lkrXhp)*mZܪBSՐ]AEYGV~9^3)N;L2D@R Hնƈe/2c-er )U$SW g/Sls7=vjJ$ĽnddwK\$hlx\u{bm͐'Hm@K0;c/B'€2,x^ne +&)dxu6dp vjMqXSP1 3u}nMӅb{=]BFh?2Q/Ϥ 9NdVңe2LwwPVݪPڤ:xc%T.1h{PqJqN*|S}R &m\p%-O{d'{5L,=)5$ F}ߋm`r7n>Ƥ[5. UTR/(T#Vo&qsFϋ,\: -k`^>ʼq|^nCr/ DfW͒̄8I)B:Q12@ }OJD4KC$G.8&^El\ >GX1TG-few9oKEsxD C2oG7hqqJvb{xBE$ns+Ge\JñuSanLn`L|mD[kW-Xד*o3X,}h\mH2iz`MHt7N"S }mQ3SeP$AjG)+fj=nɾ5&`JGJ ݪUJQP 3yBrp"KNPxѷN%v8 Ž-~u-998tSҰR<⡸a* %*'˹p*s3.٭gzV%MqD:_"l!0El1mL;pH=DH!lCBhɎZZVFS% D~pt'xnY[+s{a*ӿ+՞uNA3rh+&Z s<+=b3m#7? ;fu O /DT*!ǐW3'MjZZAا~wYiTLvvb&})mc8M $ՏiPґhLPi%% ܚg,Pt9C-ZGsQXOBI!qXȯ\r3g HoL:~S\Es5zWǏEV@jy]9I3Jz;S0(!Ψ09x ▰/ؐn׼QkA_ӕH{4Ys<)}ӳ.HRT'NC {Z?oSvG3 Se5]t7\@"'.<7M>D(ؔ(eůwaԙ3B/ytJ"xc*b1TnO!튂;*gl[%hv^pP#q_^ӫrΧ JWfZ,*)#Q kݚg$+_ٝq|iGLo _yq2]ک#}\#50(SS{#nVNWֹ"s]r FKEr(?'0 sv L/SXd?!%GըTf#TWj*kJ7Kebˤljzm6&„[7+:`1mV]boJrJi t3*=wJ}| IY`N2sX)9I z^=uz8']ԟbwOԱ)gb7,rI2^2h+ewIb9]:xKDJnh?~yg&m|WBlD$[Z'}N`3ȟKˮXH'OϰX^ea GrǝV({:|D~yo*NĚ%RKu7mH&ԉy.*)H%T?s6߯0W\Oc?.9w/oT+ͣ/_W_H螳p@'y0,<Xӯ{'s+o%a d()@* (_O<*%_r ?$\iC'U\.Ѹ2 \=f* -u=![Sɼa2|I X"WGwƸ"?TߘDbFHA +@]N-Gsu?"瑖]+jpi`Yv%D R$7,9$Od/sR`2 =J4$/$\G2.p p|ܷ]ܮmyT` &|^-VJ4:KU2\C^s޲@j].d 5oy ̏a<)S0㿛];%C=t,KkMlͶvKO{3M< ?Ӆ7!OqLMBq Y*ߺzj&9̑Jh:7'-o璼_Up,AuF1kV2\VLSXU Ulw2՞JGr/(WN"QtG c d*"a{k]IYK^> +a"?$!me2ZUGӂm+w=$~U "^Cge"#TsSTe4iO$7#6}.X}{,euRIaڸNX -;2̎vJ+Ocǖ_7jTue\OOpXw`d+vV5>C=؃t~%ɂOWﺩ_ˌ s*rvGT&P7iApDn`1㍮WB2}yk\0 5N>crT̨|}ωn_v%*, Ck|͞K>j.7jY'WW2cޞ.l0.!Q2cr$? gxg9fwZ j1^'?.-qנ1`Y+~S^)_ Dg'J4]_nu?u{mOMI v8cHd3)H(1u~ޮiT oJ { OmJ< %vNf{Vס~t]Ēn@ƷA@I`q=7m0c CAZo>>G;W^ .h #'l7}{}csb*9G Sj cV׮3F@)]2h^6[GCNiQ`dhP%E`$塘SG geQ^ (oǚPΧ^s^k-bPi(9pӺxk3c gM0BU$EJI߶#YqIĠ?R[jjoJ/VLmAKD<V!G' ͓B7 (1kۓ͚d_ F: H50'L~WqKP*aկE=_mB3hP9_]=Tov xo~Ce5+4"4~ 9Y/s͙&d@2~ҙ@vԆN2 oQcx^?}R>nLef bduep5'x}?/OaI&.b/y;Ъ@UPE$m{)donpbmwv ~LkYY1§X'J^3L{b/Ԕ(QԐƧ'DUUPR* Ċ RL4hT# S,G)B`bA*AZZKB4ucNZU3FİK_{قj=nl(Q# Kh|%fY K=z`|=E'ウ'b" YEsx88з9YJ3^B7$#"T>[ EdPNdZ1ZL6$9u^9LnŤ(0y\gZċJЫ #&`sfoe7fzQR94Nd9|lpG A{S `+TMq~l 4_O`HJ1f^)W0ʡ[[+Z( ffo@_^L~4Wyc {ʛN?OY~ۇlQVm.קh[ο}+8w'O>R@8LtҸ_I}rr7$p%AudI^b`G4ѺyZ_X6. C).qoW rqQd?.ׇ+>!OO]7߆=tLfh?a}(YJLY K;/MKzAoẍ́QIWv ~9ܫŒ[Gc!l_C񰩂sz Mr g%fM P/=b޺6>ubMce]JFrOǗk,!_bUTAGHt5pdc,op V\\iRؓ DZ6]Sj6xi&P߉|Q.t{/Itq Q!*W窥Wn}Xt(W|1œR;3p)\)5z9IV;JLO iɨ_Y%`<>9q J݂NꬴKpunpTH 5~hWP\]:}Ev;xBy`'1 dL(*}9a5qܡ,R d?vx wOWD*8gKĵ&=oW_!DdTHu`%&KjnCϧOgn&<1Ͽ#[q[k H gd"K/S>n%>Bc{Ic9ֹιMp`|LI3N 3*<3G?$GPzt{lx.MW =3d^{1ncVl]s,TSN': DD᜵aWm#fGV̇hUzX%rQ !kX/\;ieW-. _sbևg]0 ۬ 9UIV>UЧZ9Sf%n@|rmy3Ӣ~qauf>Uae1?\]}pׅi>v_kٟ'P\Se?Svj]MjٯqLt5OlO_2͞UϷ! 2fOS1:Pԑsy<i=Yj#O9{2s,Y}q^8. gguK[=}V{B|'+*DdDixjUXNk|ޙtL 2Bqn#T_TjRYvb—09ӳQT?\t14yvjJC?{M/7U4e-{x+>c^)%KcϽӛS/afCI{[3Jy$qҧʢ>qCv U$;j[ظw%weg60YE< [K83;6IoW Xޣ?k흃 ͋vY"|`_c7s3G%k%t,N||?AV}" 'S|,nȘaY$O/']hkm51U `2XX_W_4S~A40NFŬ;7{J.`68u|@ުjܡ8$Io]^:0P ѴCd>OBƯzJRͩ:d!%!$ J {0 VL_e`*_t{[^ޭ Se>$Aj 3x/$abJAo>eV,iS}=B2.ȃs!~8Ȃr! C'@"n2A_$cs@O*;On?b:n ϣ% ''P:DR3ɟ~V "PL\ZBxzBiAR55/r$_:#B9}BȖ0rPWj~]P% ;" gL!wS phҘ7 Qm P&E0z)8MDg3L?.8:Qh"O Iy烴y7 yh28dxy{+z=y??=dD[%bh)Qݍ7ʇ $"5EBt7 uۡ}Sq6#f8: m(a)`Pj~lSޮ>\Cwz lwe4 sF؟w>ץw&L 3j6L-PSYoO#]pyu_V+=桒C_SK/hURbu2U+)1OLBe Fh#zDxiM\+jt8 #ҪGaLZIUV !D )jEIpytϫ< 0Y-kesON+1 TA$@3gW͞xXy+ Z"JK"*ǏN_% qޜi ˼}uO;R$>5OqGrpVͩe+<me zW̭wn]Ә1h=s뷮cp5 c2FKauw΄@&=jfL0&( T`kt>u rnmn8;,2 5y:E7p`PA&SN שRäv`铆aC:l?^k̵s2CQ1PQ o.d ; rIS\N<ܤ<6J֢?:&=Lۓ)HGXXɌ J`մf3mjb6b|&M^UE,%, /zYLRϣkJ"G 贾d0]˲6(e39uѝh<™M_?{XY e In@%M$<(iP.%*%ZX: a6{O-[^E8HF53AX[3>oA9+6NNn=DT$/iE֍[ԪPw yQN; ۛ#±@ А=W&pbAj!"4P4&7Cos"eJ/q;]!MyF;: )fϵ ySҵ m71oR_9)2~%\t7n`?|"l!K쮌)l4Y[v Wb=0m/?~~=4,"H$=ʌR}Ϧ2J#B9jM\X.<8s[7b7J|S֥7h@>% ^Ǔ!:m$X xTY@G>p$Vso @N/pz[`ʬLp)T *Aw^F{P/^2x Mo|ε+OIA]OKe6?N'6Z ZfޥIjFv.g0U/RvRTMZzU`p1y]Oȯ>YN}Q>o;3Լ2I>M+LJ_bS T4rb\u8bC4 Ӄ)cށ(;6۽{{#Rjv'|RXK4DӶx0%Շs,`_s:x%:ePASB?9s\x&{f ]>ͦqZ|jTVGLTU`'+9u}D{KOX:bi|sT-;V]%Ҧh!\IHTt܍SgףiQe ΚdCp]qqj˸^ϰԧ܏cv.w 1y.c& ߓ޷nb \g_qS9hP7:f8UIQ|fq/qH>*(\rNh4@x5}1;ӭrƖ2Nߍ:;XN*]TtC[zO\s2pb(9IG4W=U)V] J=?ǯ'oHF$w<+M?I\HCG@sn5evvRm.]!I sw;[޿Eܽ2?Үa ddH#q7~Q(_!$] 6'ϿܩB,=cG]!Hl?)*}tƵ1%)(TLh95zCg _ȤX ''4֌eb*$X 'MNm7cg#Y8=57N2 HP$\JA0 \ `!C{__oSMmƔ9687jqÌSZ*f"TT^v}OџsN]URJx0 hJ) Bڄ͓Dtz~f^Qʒ*Asi*|>\&gu`0:IR_'/7W&-IS`ι>}= E7@+pTBLWq KLƛx %Eȱ&^ g(s8;Z~m›M7u0j1#0ӯW,E#$崖$BDyU8"86D!/Yo>NZ٩6CG}qĈ]s4i 0iҚ銔CJj+ O;8TՠP±bԨT1eOt}~.ޯ?^9)y?jBȉ@z!H#oe NGtsp/6U\DAIG.zEN  *e5޾_ELfP:~DrA!@^rT i @$(h%N4 ZJVZQJwEuq8<>DԺh.AJPf6ì~ľocbz""*wyA@^k#;m( \551 F{8=@ɰYN#J3ϧ4tr4u;t"B9]wz6}F>9,"h)[Rv)fE P.VkwL3èQ.`S*J"BA~ux9&ڦ}?n[ã[M]fl3jFbD?_uV VH]+>}1䔮'Ku$m>iG<@SBE!2n'%ɴR?XAdEa x3 ֵ :ҟ2EB2@ @1+kB$ho+FQJs6HhvhB P BPB"ltIu啟fAOЬRfF/\̓l:]/ZE+mbI$Jp3| }"+ێF0]Y}]_5y52n_C SDmy9Hx, c!U8a*TB >gSpeA@SR 3( G@& #プW]P $3䧋\\ڿ^qK=޿O=~4}6݅¢L=HQ0d /vjy]X}&|~{`s?C\HL3Cuhb.Zj6r/DJ6)zw!R6֖z0y1^4C;TT%ےUgayŋh![BζM<# e+C0~|ډ0l~U=Ʋ.]D%ɋc&U:OeVU磿32;>-6oJx*Y$6F/s>Ks Z'Oa-;eyDg7Yb{qG =n/d']d<^3dr8M&;s`=`r)?e[[0iymp֩jɤj<ޞ{g`>M2*~rByyk ͷeQU.%z W5(y^3rhv'vgwM$ KS2a)VfŜEyxwbmpj Sh#l}A-?wB2 M7{3 tt󴯐+7zw.Bc=&y/v}̯ @ w@gs#BqHPg;sz/#TLofQoA^[ 9ZX=nEDz&ݹjޗ9k}sw$w zQP]Sz~pjCHEY=eLN_eCe鹞j4o:2H}Kq͛v }I}qѳ٭wt ,B}Bٝ+{ Y>WM bKJg1'u3OKw5 A݇VoU2+<-?7~hS7OBrm'M4J52XrAL LU11P*[җ&h* +q7Q审W~`΁Zx(vNfퟻJM- ZO8nl ͚i%y.#XM؂n sx3-2_+ YDk*$;qVS^w4ZKic+M7^jڑ(6%q*]|W#Zϸ(4BBӮ~<:zJd# NrusfY[׮;'bQ(*f%%^qDSoéXt+?[;̖(6ғYHE:fCdvڨ=fbʸBe! ^JdQ5-llq0ma7CU?uDڨoK3C@#omzL{ʿjgn]1s`d'Hvon %vL[dԡQyL&H0 tm'`聁D:B~k͒AQzR;@@NHbk>b08b#8!?yFDAx AO[=Tx 0órN:1`sR*]!kʸYmV3: m)\&Aj)'?YG bғ 0ZYHKlQPMy1ar̈Vv9VAr͔x象J5i*Xl{.3W!W/4VN)2=9ZiStgg dȠC'&mS9|vWCe*-Z#VP;J%)-^\|Js| ] K^YqW3{3SF ;X>%\IGERp{(c:I,߻><ŵ=QUdL3o:ld]o^cc~Kb:ޗnl/n?ve ~Xl?@|O}1L Q(}cb^n(;ę ϪPATҬU ep7|>Oܑ'No;JlS■Tmw[ix}\I5\1DٵT//%fke^NvɶV26MSzxȣٚ7~Ӹt.NdaJzgo^cD.s25/jyӇٲJչ%XtGku9Z1m<_MՋ<9 Wo< 놁pe7:(⚎<6no{.P幹S|-x]7V*uNv:3$Whyy} W\"{QejOnY6Oc0ƞ]2 nM܁t*-FoBEuswW]eq]t*Zy2_:IVjbL4E*&!5GF朙Wf}Tښw׋{10b.ZÉ9qZm99` MZ}=haL~MԺΊ,>V߶QM](s\U$?9}js/N \i+\n^#ս-j})0st$&O?}k!' Wr o)+n;Yĉr,/4jG`чK@>Ɏ97xH_"Ր$ Ƞ<^Y;}ߗȧ2ʰ#]sN/@)h:?x:9ɿ;k:p^a$yL[ʟ 8;P_{}΅9w>ݘH\O/H̠dh1x4o E~q #p͙އ#C+Q[8rb}m":)Sd4Bȥ9H cp|>_LcPTQPohAh $g&=`0]%npH2Sri3AB&|'@"D* *ЈHxli@Fc,$RMq?x 7 #Y:Eb2Aq 7A!$I|a5췸% 8EdGnkuE~+aa)PCw舸0)s=>:\nP3‚*2Z|;snz>{}XƀD v魊PQt:]-syz,I] :4%ղf_V~wLش/qH}h:>B'let}q1VL)0%۔@Ջ7ah~"hrD0| ̴pIT+.#͈oBEE]rZbVc&U%>{<Z>iUxbLĔ/mYC(u{k_> Nҥ&")*JI:?UZhbͳ4zY Ot> L~7:PEQ<w2-2{iC\8"$E/ܠ AIdHǎER e|$D-XOM}$Z%@D% ss~sۊ֛z/4#dS)< Q$lGޗŚヽ_Ѥ!GBĠ1CR|_6s\)OeJf |$IGȮ6) h iaaᴻDP rMHVcV´4fZXDXZ>}kg̳ʦbDMTc$C슧[}nX&8`y3seꛢWQ ~[ސ@=o*}掓#]=S~)vW=+q0:'[k8>)m Ӽb29$cy>j=S. tE~Z%֨olTruK'nymc 1QsᒴPiPA?7kj;粗DĈ)p{CA Hp g7̑s[[vpRwa_n/ A`CEB7,`̈d (_XSe_zTJDβze_ϾgOc=lZte,KCQi754jUUgNu73vعO"bdy@}+rRIXuOO_58⹹:J8i:IP~/UUH$Nt_u55:SRUAY% 0H~i}322I?cI4(ӚȈPhN1Әϰ4F@IFԛNQ]L(IF>7CxE0D_ "!T~ED=^qfvd0v'֮9o5z5m]Wןl`i (Piiov^ p>pYZ|~]anpQ-R_|-'OKd l[9Kͬ(2K1Bȩ979Եѩ>lip, 6T^d8 d4L!5&t[γMէ+/nYRڮ&i˔ YAX.TγGJ eTy)"z~J&t_fsu/ª>`fE0+&{bȮӓ>ex. ji/.[i@Y=H R*|Q#/~\.ie*y3^ץ%U)– 6;p$LM,6qFO]F D H}O/@^U @߬2dՂa`4@V@L Gf@܈D$ւ5ut|}FբX76K? .iJōǣW7.i@!s, ̺2[=H[BIh@)S włTp{S5&HM]^ב_Ղ?nɻpP(~26W9DB8ݥ;ҭ^5U_Mm̅.kxSL I֞> *s1T_W$qz͟o[SwniyW.ԩ$_-4uw}6IőE4L U-y.;.O;K1$ > V>zas.Q* W8Of̂ gw bhϵKU&nPX74oISoGٻ_kQl<>[HPeÂD.UNnuރ0izOnArɯDA_.ȥuq_Ο@l/4@b0}>G&<D2˽䯴{nǥ*QʙMek 4z 0M6e M(=WeIx5#"a"2j]^YFs2.YmfaaSio4GLnm?ָɦ/<{`Bw/3tng7s{!jYӏw Zuꗘl ^^ݥIw̭n|]Ǣ+]mM pBFTǼ/{j-2-LH1^an HgޣjEw)p4xcŷܓNêpHgnIw[TQ9'?~]|:}Oϼ|q,E.d=x` 뎎ySP=¡|׷;v -|:Yrw͚S։"ɤ}._2&򘼢q 3q_ti_;}K E|_5;]2pݻEB2Qw Te Ai7=Ee`z~ϟê}ͲPh$'6 SL21`wdJzJpRKn%ºvt4Rɭ5HU,: ,Ҭ FGrn]DS/7ָ ZF5c_1x]|67 F1݅<\F"Q~9^Z;<0(i@C9bտ n/yr+֕1v1vY_^\8ę@8 >b% 1xJmtڣ/:+An('|{NU~GYBOfG!C9DXZ7O;d1(+.C7/<}9uPͲPh$l S ҡv'Atr <鷎O!Y4/Ri &}w|͂VLQ0"7 /gϙ9nE˩˅u)=5 I7x&z0G"2$Q| VtQXE,M'!ΔT(y6g7lgA3 @*Fb>zaغe{zҥ쐻_:C0EMa74;9)Ȉr8o#zz0슦;[/YIK}+h:!_ؽq6*c]\%\esk"cm)ϖ-s7=яu5SUwMI'y/d'w]炊+%骐ֽ6{:q·9}N ^QHd!7)!|k6 6BffѸBʬaXxx[k-/;mI= ˜ ,M/h]YY%QrbbW8\h첀0bG(S$0hPE/(eUk,Va{g Lf/*ݐ͆eK)k3]DdsAu-sVr2rã}zgge%Jx s`܉1VdFI+}rpvttE)B% H PTa8iToZ>M>1d.msa/"&j€A"4K!f5@p 2̆P5;io5_A^5EzX3oqhhsרvGq-[fLP^QrĜNG[$A!ق_ 0.}m2QBu%@槞hih& zO=)W?z (옄i Cf`7=e$ٿ|+A>s9:cO`_hR4Zco+)O=95xup>K̥>Oj Զ.m%} 9Is Y݄:šY`g!I>mĆ+_|Wk4 37x8\\>u>eͺZ} /;XNxܡ'?ͼNbtW,iEm+s)r"VBUy:}W˸ҷ[aZ-OU3zr+=l&GZ 1T철x?wָ0UPpy@7H˫O&{tug ,>47}sF ,.1)'ݺ=ݙ/0_ncdGIruԗFiLcCİÄqoYys<~Y'n:Qghs~ x(a ,홄2߁:tos ȉ@OOP=Q|$ ؜ iE\ Ӌw<.ٯl[G0G޺nWc >2lYԠ!Y5 ޒz#7 4@Lہd.tt"ruJ"gU|ֻ, |qi X$uK8k7PnL6!$svSyG'DU|[T=Duo? _ [nȦ%0L#0P;$Y}퍰M RܖU:N(dA!bh4(Ab%Pwa 1{3Jk`lHgP~s͚.`M6q[ȣ }w'O9rJIs~ze+A bsC&EpOda(CbWM@d!Jy/'[uY-6ߍ?w2RuotNRiMeҶ+3d`^I! ц7bA7e3Q.8ZO0WkYgd• G D] @@Fѭj9S ݌ā$\сPBdqE"geIH7_ ev tЮQͲ5WfE @ ф)#!(/f ;J!R85as#w8[,ƶ\!kVa48&+n`VXk0֠\gk=)8|U#(j0 FnIgLJnSi Di[v_Ռ]8x^{yz^jaK>gGiYA-بVb 4+IPwEyZ3)89DK*8) a{)`ٰ];G͌ "o !k!ol5gxR&[%,QrG")D!erH Sq`G>!6Q|,seʰ&8!&8|2dC$ d LL2Dr4Lqq10qqL  L&8޷|I2$&iDCDI!!'!)D(0hB("y; $@fв I $&EXBYՔ=HՄ@k_Ql kŋ  ŜV&",QG_b)Z,dhuԢ>5𷽡k[f ]GR8i7]E4U6VjZU3D@A/6^$)+֦dO3! -j RYJXJZO'! vLg`C(ʕ]L-vDIҞhr`Q*X 9av[u`2"-|e ERԘ͍@/ S,jA(/DB)UFHc x("/yy.*_FzTRtlBWV`M lnlʮ'e%& cD4^]o5~G(NRYZqZ]Z• 8s® M]֔pʪUTxzW9E ȥ=`kFDɗ tX.P K2r66_F 9 T< KTтl݇C)c1N6fB&$;T?COb6`TI|MoOg&ZZ!Lٞ8U|~8_8GL ~w)sXݖBS3Z ~QCQ(WPoäkiˁ*p^PJi@ͅ/zsCDz-psC5HSbM `@b)ƽъ8vrlClxz܈z*p^xKI_60bHH` vKs QʐO%%7E}s0s̨:"aN}a8o(n]c*YX*A q7UűgٽnW0  Mleϸuۓ *YĚBЄnxg!Á߇WP\l$+V:opZ&w[qpASw?)؅ p!@4AUrgU'3PE{Rܐo`JBsffML<3Ҁr}#Hw^J܇ @ӒD =/_0  S+v4vE3gK~fS܄' u1,IIlQ4O˫(y]D!=E'v 6"44nr82jgV!!7UH2&-0L0%&b}FSwj:T́>(k7 (oU/c=\WEa 5EaevSPfu5H#.E$:OP+`@ SIc6sˋarC1G2uRS҅dt:^fmErZ5Kܡ: ǎĎ㭽n^S4^OՁx6 ((=D~3AꀲP2 Gx7{ܶm;UPLn#^9vvts T9Sܲqy;l;/~qX]mj[^Bq@(1 t|댯ե$8j]Ɏ{X>`:;62f iL k~Y>РI5~e38yrA+i| c X2Cf(~ΌstjotT`3gya25 62PEXV0|n5GHY;6h o$4#5af,DuC~fT2شxw-M~K9M(ޒ{w~wͿ[lxy6K:<)DLy.A ]}fʮZ 0)gSզvi?s~˒+N()4kJDq0wWjS ǀ u|$..2N[ctrԄ1II!9{/G -fe bB +e JߧyW7e]̒Pb w,c(T3hg3t#K LT!L~|aK@nj)Pb PI]1xWJ脠D|l-K=!.fU  eAOu%DQC.FHx>T֧JKrq/V >£wE/#oʤבq9 u]Z!Ua4*)s=7v{?8$|lVN@ qx7\,(OS\sԋbwP;#Di8P*Iӳ8d5*Zj̵Pz$t,/GjU BUBYӲt3 hhْ{}.vpε5Iex/Bt-ˢpD  8@-0 xCKӌR-~XT{rݧ#}".5~ҶqTfja,k9ZmJA* N v«ZV+(KA_!ak""t{*ZTǹ|E~Y:]ޡ *2æ4Stk;ay=hgv;@R# zhя{_?ԑkjY1;immwqQHq%_`ͽҭ(s> g\Qt%{|.iWx8,;Lu[ޓNjrvjx\U-*BsFUEHin4D™V)+*S.]u7??AK*wGlN\pM9}tkVW5Lpplqpjbeinc?IX㞫VaϸkP>zj=s 4~ 3 &@3# qoS.v{OKUF{Sxo-+dfVKwSK]V釋2ieWU=xc\>*?Ë|HM2%5~ Ng_o鼧c3w) )LCA\ Ѫs.ȥ?uݲg: (,vH#dm}'㮤3k/쏮onr7E~- oDc4u[ZN$(d@5XO/46GRN5Gbtم1Rĕ0F^2AS{}vϧne~Oqkq9hʒ7|Xe/:S4Itt f8%VSs_LuUwޔ?ܓ/[i1ǠzN=O]5fj@ܘ;Dq&_/^,ES8!vT'h~*Ll4 ulE,j%vR四L 2oPS+*+Y˄ KK/_r,-v" [}61 oJW1YrÚWwʿMĆAPʆ>h̆Q5FN<نPڦKݽ&VwaW/Rdm:WK~Kp6EMllt&IclgF (J6pY^w&F_ ?J#>{˳LY gGd%L{m`D#Y7z}U\,zox:t}D5Xgl}3, X{/HSV :) 1yGEs:.[unC.#r>$DT/%G}VcC@SpI3C+'s{^Wyu?GZuĐ:_c1*.pc/E:}鳗=U $׶ ## ["TweI;J$(Kz Ɵ\Zi/f}X_yrާ)އlOY\plow7M{켮4kLye_ѱ@5 Xx Ai٣MoJ{Oz?_w!S)vF=\_:2Pِ\Qj5t\m')0{DhJUUv_L@"~zY,>օ=No}#2b ap;l-z[:uAi:TY<5L$~RmOEE=n@2N^{] (m_?˯δuj>ꥤ?U_y|0f>OizY7NMZ{f~c כWFz.#03٣'XA@Kz^w.$kǸ2Z^_ws=w7s[ uک+pY\ T+e~Z?fQMS{\ 's~6KVFɫ/Bg.ˬdS ޲NA)u|swS! C.;? cwu:Y1⵫@isw_#tgeA0 q[0̄"Q TBk=֤PgH͟n qf|/ےUA@5Ej_| ~\A$󒗠􏉰FHKoI"fvD[m*U߄t>zl h"J68&11" 'q$-H:O9r~0H15t*#1"Jr_+=* 6 5Q]OܙR 4aMVaqXB/$ Xzr(^u>Q>GlVJ 9(ѩ_c@=u3u =#p ;k>#L-m k$$ qXpJl@3juAPGSk$3TP 0%sm(r K[3zQ rWLI)~bo/x=q1e03ObhFIOUU+skߟ+%I/GZrJ Q7pDÌ㬨~nl[N^W7yvnDqHyXFwX#W-]_c7Z!J~#0(Z\9[:;m 2\}(M[{"Ƹ9ԩ UW';-7Mt{]RoX7Qu1YY3r]rwOpً9|*O&/<ȫXCs`P0m,HYh Jaع-Կ~X.I}c/0Mݑ(g_X(K.LL(T1 ydDE ȁ\@Xsk'Kaw#ouJuL GO\sRInDlq3tB&a;* y hډXKP{r R>U/WA ڂ<U9A HHIb"V%)% I{ 1ET+9(P #FCAs\3gx=μJ(Ye"Vbk @JK6UB$P@d(D8T @5$޷rWK<;|[LR(RL2l@yL5q:^(!@ H B2 +J @ 2 }tW eijcmBu%hJ!"ԐM7<$4i7HQR+$5ʗ$EÉўe445a;d?/\ڗW{ݏMh ;:4`׳γj>G0oI S]`0Q?{~{=dN.2?/X+]<"a)G]dqԈ ُ1i2E R$ؿ771ΩCc6 i3H+?T#d2[H[X 3V;|3k Ίa.H*#Bg]Mԓ_!3˹/T?Q3v7P `Fk ʹHTrQPwrgؚ+JWTSh(μ0)>U5E^&#`TPJ_ȞBԾ8ŭi<݈?|8O\<:.6:/-m5Tx J>O}RXwZg3_bޒr1v7q!3Bw5:nn=N.9AaTA~/kӽϖ>eS"\/.3i?ΨDb^5O;_oes}?o\Cظh~% H4$3@8 _M줹"/XZ_#3β.S/dѥkd݊(gD2ХH$| ?a| UFL2"ۃBLT?I.)}d' 璓Q!ο]T_M667kYۃc CwY!AV ͎J aiKUֹI1~;=\ )s:{wt?ӥ@A` ]Wnn;VBrymw=,2侰G$iI(l 6w$+VY B\hr#|4@p.Y Ŵ Ĭ@>S,-78qA|S@~͵WF3 xOwU7Lb-AUOL@`6PWs{G=U6F9$ͅyfͩIDژ>vG=;n/5Q qt^g(JAN UV])WU m?q26R-g@XE n_1*|M*=3hm]/w# E:6a{Y>&SGL\"&*c8*tGK\y87~Ě%&hBGi, x4zh4lJj#`n|vx*~DڭXWsZ[bVj4[qJĞЪ5`6 l`ThM41%WD(#C)3+6S]g-VxM*v3&} W ʢv'QQ<6oku f՛qH p:fsF͏Z?YRP LE*уEaQc+# ڞ2eJ>k~Ft7hGf)iubŢϳ0=+w baNAo+,}qYe+i>FY} hC[{&0Y^x@yա 9p~bؒ?&:ro}V= )O_p KB}NfTH*+l̐@GZ,V}O+:qd *Uu1EH/Ӷz]|K7/@,g%P%&-JFM75$ts܊#kzxiw5ÊoW?`}j!]!nF.UeE`Wg@ v`'Cuj}2[ ?Rb6 ]8r;o`wLdw)уC.poRG> ܚ 'Zguɰ J:2=c}U5vD8$2Dڳh2=7m/7}B*WM?WU.fɧ^ n&- 62~HbehZRk51I\@@-Cb_]NOc{JV1PE(Rh *fin1Z֪ιKJ% _ хʐXj6FBҤ 6gnYƫ,5<0vZn.zI|vצoPBt  Ÿ"9<]Vx / &8z/Kf4 ~H72K Z_#3y9T)V+&C㭔Q"mVi N/bHRgj\shMR6Ό&@}+ A:HDǦ6%QDğQrjߙ^]^ش M_T炔OmTzc_Xؐ>I[už[c'̭7?Hy_GO #LIk421<u)q TFoe XBWH-OI}]nc`F[M86zXO5+3SasC~Fq{]5W )|ۉx2\7M=VAP]W+nغC]KM)Y5־+ `&KYZr,<4|ڦJ0s. 1Ē$w8-ECq>}^_$ f 8n!B!o*Zr;={/ul; A3L@ˤhlMRZ׃MN5%42(Y~f̀J>[.Jc=:;0<.8d?e8K{B $Sl702lb)R\YHf{N'^cߣM+k6کGzvwwB ZA^[XVD}PnP"ZX6^30_b pkw -y)/,|9תtdotxw9$e|Lnn,mBfIIs;m'灱ip ^|QzT"-oA+%~dHLW dhl\vkA#d V6{=f<.*Cɮq4 F!\iş]f^ q6@AS-`ef pF_#hRh-D0̮rij|ۋ&P u"m3!e1}B$ %vc!I0kvB.}"G#gsQU3iSȑ'IcC8$X7~Bρa+.DVmUT8 B=š\NPo&jfw'ی%KlJ;ֽB׳↜N/(RS,+A+8tSxZ-ʤ6lAl-Ғ=Dٰ0@I@k^Ğk?؈yc^^`@ZRy;0o&?W0 {{Q oO?qjE*ۍeD)?2z*_~Wܷ;@񴋺TD'w"xLc`7):`7'swYT-kAi,MYr JᤲEU5-#7;vjQF*~K8y9jGmW Ƌ[ p$σbE](j/Wv`2DO > jRx R2ys| ~!Q7?R|ou?ܤ,+H_a~@dBfm.Yж&֟H̘oQkCצ2վDP)^{qM?oT(o#ճD}]>c Ctd_#\ة t5K=4HaU>Tphρ^T,qWq^;ܹgwJ[<3.DCm;_κ0Z<ӥ_"5E ̈́>j,D(^oQc;/YwtAa6 d_id褮o mD(l94/hd@¦;KSB!(^T@*\V?5;`o@+NHqtCq9 mLexq-a_SHYrJ0Մ4# XǢcmz T|&dה'm%/1U;`>zr!I+~$p_ˏy3J5iP٤j3jyͯPo(<͡E[s@+Ѭ ]PRyLnrN2lȝM4)%k4G.'_?ENճJ`anGxtdmkP'K aۃa렌$vh'́"U=əRLɭ<&fqy~lz?g,. CJW,]OXrq7Պ5C֟ uCT1J&" :N8jjSҖCW+G Ip6[k%5dd* _OݧЛdyywO;eBc oBMs3@K%~c'#X{T.u-dOTڋ.4||^x2gUuu1^l3B:=kPw4]+0pg2.ht-p'vk֦ J6%j5#ڑWݙ8dMS,:Θєc:_uməLWˬޣ0 UȠM0.z)jd>ݴꪻD%K 7^?vU/DV_LȞ} -BʲחT1en"Ccj&ҝ΄Ĭ̘e'.Cm2rUxf[ U*N߱QhyB3_JGYbڒn KU8!4܀BRɕBHrWzR0^#=VoR?5!D H~t9C HD-#7Qix!A.#j  HN;m6vE5~ȗ+YFxϨ!l ]I?3i>֎;a4+d OL??+v)9p}ZW!Qfz#ni\OӺXK/];@v(|O&^{.sMFXn(Ÿ 5CBj_wԵ HЂCϜrCwT6c7Զa*qSځ~ jxQ J,ىw{`t<ʇ-JU#38QȰ AGQ C_8 9HIʳ)GPzz~Rmu1py8J?-űE;OL-awu@&@;rT։hLDK ַ@HgXI/_4L:ɈX@ܕYУ\"Q䤽~3"sl(ܻ5J8 bz#Ee?#K P; o:AhۆR2A^si"Áay2 is3L0ObAԭ j d\]Q^JҌwhܕkȽZoz5#ZY֟0 5 u&`/N`#6Gv[.e޹?$܊"p[fQx[Qq"uwbMS*h,Aܜ9d|<<w>2^Fw:SRhp> - >Ti-ҾT*x<{:AƯ):f=R },=73z|]z8Ɲe Y"g \Pt|.hxN$%庈jb}XWܞ'9a# P=߿UɡMOEIfES% <&dǐy'q&Fz2B!(Bi[A:9|B3a$Հ7&e6R72t[dKZYQAA[X^t Aņ"cphVL2_hJ@z~O iʢp?І#.WA5!;;C&0 Aq׬N03Fd U8XxC[CS vq3-׻} 1utWKUXѽӤIZNxj3Ux֦D331W&|raTU&ӱ9OZno &7oкn,Fl>SIw_5%i\Z] 9y[7$?Fl1+`^C'ࡖS-o/` GqzKF%Oh8iN)[*ҁ?QoN1n٠MN'|7^ɠl8php4qT:TQ.2PΨ!wMscEO -ջ6QNwavyΖߌðaG0yr5<EzLd:";QmJ-85*#t;UO?P &e!F)Bam ;nSzh:;ˀG3EX *!f#$+=M}` OY r.d+6?:n\iࢺ@v)a񕽜}D;Jwg+v΄A7(l~ 꿇J{x\ $v[~-ݟuNm!Ӿm57>~irƚهGsFNӮif ­.!$V keY25+'C \!@+h.sqB;-KmD=Qw&Moq+ Zpz!%}gw DN>@I{J>R|;OzLD|]{  ~q DJ'{P^]E~% VAA!iHh#l)^ a2UF7eԓ2EO"H@K?8+hZVR:O/5pYw}ū; lOY \q 8VGda_.yyN5 -DJ8"Xdי ψnj<͇|fI&6F^U0k.TLU¥\#D`#(pݒ J5I; r$ Ҷc T~J'qv _EKPeg/k ˑ$' nwIɍ?HYSy3O> XnR3n]Uˁ%ݎ xo*kaZ2/#n!A2RѤɦZ gap9PͮdB 6UtlO}h* ν: *͖zB 8%&GsgJuԪOlYV7GS:aɳmO1\5`-\dO9\¿?gR:J"{4(='\ÓIzDynHoc0_=>h_9h,KHyakS\PMwJ(pg0Hڅ$eLGyͻ]s#0a&9c.`~'͡/&^,S["ӧ*yVDVd+YBMs!>YkDbn'Ja/48~:8Br'?_Bc6D'^Ӎ.8-xŠQUr52\R/ݚyM=.%\·ZuN ]RO}2x2oE<銱@ŠJK ,ІfPU|FXNH\뷜CcA2LEoj{&BlI>Tz~`z6>C"EaA23ɍvBwvEYΰyI0!2kT ?j&*ux۪Vڦ5$$~Z-߶"+a1_(?^ YXn6i- 8vmLc?oѵ&2?69vw'}emfCLj{ w}:lAPE ʝ&ΰZ7^5[g'luY3Л :tlUY-=y eqHcMOҭ M)8K*^y%}%R揯zǛ3^oWxky*$ZJ0&w3KJ:3#;|oP%A>IcKUkQ~b$Mҧ+3 *9+?PrxQmu–ň^V  TN{U.syN&^ U#WqÞHdU7}O WƒYr̽5XD|X-cu٨RM9m}͜"No)D. ڧNKF )Q!MbcWՄvHBHT42H(`2xtBlVK&[*h6p]JucuLD)!a`җd00a) ӅYvMv`BP-n:E ]yj/* F xUM+"|{Rq8|J3TfQP$tNç$Q.t'ox{y|\vL9؞o/Y*0~=Q^Cp `@o%ިL&4'9~$E/1 /;P`T_Polf=}M#Uܦxol1X9}t;3Ξo B#w1!~]B{m_g'NFXPI_LK1)Pvn?6*%1[C%Lˈ\2#bIۛۘU}brӤ.CUK>\pES"yȵ$l`i~nղ "}ʑ0TmO8 *L `%RUs\4Ik߇er_tD\LktMnv`?CvN&y f4¥[ diZf=D=\J=4~5vQ VB FDn4aha42MѽO2TnnU@_m^!K55>f0w?5k0>7KHյY8@9⛈[䕽 ?gtfBx(uFm']HUiz-(2뿴oHo EJ$A+}N a;#T}alYL'q:O\ c2Yxއ&:BSz *LOT3U[,L_ޢc[i Qm%g9vNJK d ,z}]h \vj` ^EF'm*ۃJ]7u]*R}90] tȾV[F噱G}ĤX4 .7u 3+)ۭ ءB`}S 6橗0Q%v&,P"rgWI_o)K?1ła*aL zdsS!5He'iU;S'H>K f//C.F Sfs]\  L襉v"ʬ\ުFkZwSN)tJ]އ 9ql]fm Sfj!Ij܋Br]?!,F˻yQZdtC ?ncyxً7b'P2 *k4*̀ K xCWR~5rU`^'- \ 'zav3/1DEX8Z<' l؜rH6?FS\0Z]{-~Fj odÇaXU'^"uϯ4۰;!]?kH,m7|T,r1}.0K"hm#wY9BSjMуR?0ձپ RE 4&ѕŢ"qW0]FSma)-G u?'AC!aeƭTc^?Et^iޚ;\ (0^h%RL::}ø;x{96qFJΏoUe B6U3sDxu?Omֳ A?9i/:dV緛}]XyCxIy;]?4]VRxoߵF #kYV/ᗅRw ]Yќ2o~T6qShH7?6{\R8/Er]vڒFtD^7d :ش u-#QK[~;tx[ ;2L([(s81- XG$ s?5< s29FC)zUF_n`$̫Knb.r#pߣjU{)yI|VF'CӦ+>Q_Q3=9|wi%eI;bV }ꥉV7-pm=@k%qH wT@|mn<p;^@˿C#Cq8M%auNkQa2 ~R~Q*Nm#9^ M zCSdY3\BQȣqC$Ч7]̪l;h􍯖zhw77PA"D#bw踹Zl o\`s_62_"oh>; N cbɃT<$2o_;`~ *9c|%NhY*8dMe\N MpxdrVo*-0s-=LDW-Z)k);oJt bv}`Gm1REؑhd)t3G g-)Q|CIhP\G덖R\cT"$vrB}NLe]Qk>BXRz#Oڎ!cA*/^a6(m̾ėGSH49_/7/Q h_\ӀJ^iK9v`}Y"O$K~*aY7஬Eo]{.E%&&8qeϵWin.l+B %swV֯` .$Y(ɤ + '(mѬUtcZ ovVf*juzvFsJ!萴`Kg^MSPJ'/ d5Uګ ivp?HU|gx8`Ҁjx|dz/,#qBWt)fjN}΢O|N ǦwښY?2CXA#Z89:4wg?jܿ-~\Z,LswBLuWAK#3[re_/j"ձHs# j'4D=`9Lu>< 6b9by0t޸Ǟo(3T0"@'xa^_bH֧9?uzzr&)> eA9wN++g6Ac?5?ma6esԣ' -4TGUgz&Sr#æ5ˣ3 -.-9UgK(TDRqVD4=$)/-bk&WXBa%yeY&ѫÞʚ׌')2 V:S,/9loP{D bqa2<["7jwG-%\9xc,=yVBYGsܹH'd ࢳV$BB{R:M{P,mg#`i)5)[' 1 5TYk-jGqY?iKi}g"gfG08vQۭ^ٜc]dʣH<$9,Ǽ߭eT y$Z:ly8^rD`hl99;P}SӻL̝}N v+hI׻1 >vDҫIA- 8/yFTTe9 PwhxJPJ'5|L4`f3^ w1l3S@k[0Io*-J.lXUM,g3/ƒ3B\4;= d.(SM(p@GZWV=D`W+<) tZg\zQ8܌[ -o׳WZ=mY"0 גxN "CC26)P6 nRY5y< F]aj l?PbydA"'r ݪL_]@92׻BF]U V @/>r EpB'ȤE.#pC N} ߽C:ˆNU+x,Q {B}jJ}1U fHqVs\K!|?;1sUd3y,aUe?LHmpc9L;sZ^Xr_X*+͉7$ij} /;"Sk/ke#SJ":`cctmXXo1CXڽ}񺖧I]-fvsu!-H,r ^V)HVD TܵQ!,֧ ,@}mύnXnJʠF߳w"apʽFaTa1-- :Q4%ziJ->UJH.UDŰ)BT/jMn9%H*0??\5noYPD|"Vx@~NthaɫyV$ѰBJ7^_$<F=o8EHW<)~pXn svˍwP 8T!E}fqO:|SO* ͯt13+kPdGo@t%@j;v6}&9C{ړsV's{ޫ-.H{)8^_<\r#IQ:tEqԨ~/bg^^nlY3C#oޚYf$Q@w]ZDڻ^ھ-y pMQ։otC.ʩB9X{o+ך.&/o3%n^Aa܄xi'̖b ;s-#Zdxe\3DaYnjpc` !zINᣈHN&񷴔x+ `F'aF0s ?3E[dH(V+.JQJ`bg *x8Ck SCos?PF-ʺ@fe,u'W[Klvgĵ'ſYFlh=XF|QQ$h%jW Ss͎{ىٔB@7ͅKFyvӱ@6.c=Wm).2ZRsn8ӿV7vFhO.wd>| z$1Kz$pTtȘ?pً9^Dgn*2-LXUoDǟe-!`\Jt0֚'!|뙫J 荶6{fGiYufh*xC@IS yzw•T;??p_,m]t R9̒|@.^͕c*ZfSL;YIdVӓzƖ۶SRW{ qBG׷-7w-Ǥl}dtlf VyAse|v?׆̎"*b $lǩS(Ai;2W8IŶ_/,Ydћyv: ;`R| "Ai~;mhL)e,xb?SPcC=L8n?3mxc_fqî$a$EYi) æ"jrxPn=1tQ*|f4' B'q!LEHA9[\G/U !l8SlXpYb  "L Kۗ3 X՜‰mg1}O\$gl4[]fG@;`r({ԋmMaz.͸-S rbm66PxPߖ݂ *WE`N O붾aJd.oeվ !4] +.~}~InfvSﻰ {2^Un{ɇ|/(gC SҚ|%nj lxbb2*mi.n]}Ҍ*#坋Г@&y%@R^Ha<(0),TJup6@WZ239̡p: "ʴ ^S >ŏVG;WmȓűXSI+|>9`.J9|Zt޷/5~6߄{uX8;# qjчY^D"̎O1ܬvD]Yn2e.WӌS_zzQ8i4}پJ=pML3Miz?WFDΝ uB`ȯ'^bؔLV:2TJso#Y` 8 4_opr6JO*YqPWӤqIo W+ M{^cs]$8 TEI$2[ߠmAփr_)% S_QécK6VWR(c3`r]M'j"ؖ"-VǙual RFUؔ}JF( M`Jw`Z'Լ -&ٟ+$x* ^P 䭟} DWco|N_$vѸn[dR̼cXʍ"c˙F9_4'_m j }Q5ɚr#E!!Y$15'0Fک#7j[oadvsAVhb+EI9wđ91##[4{%rL@)Ǘ%Qi-2'="Ϥ u2v1kڇPN%aGkIlxpc4  68||\,:B{Sx 4Dq<}M::Qz_:B}L@e zdiH4}f w`K%3db: ! A}m JW6K`m墷R$$))t|J~jX :mR^0I=ä`w L9weLAყҭIg(vl&⿱ CeT۝v0%"K`ֽ]i7{RsjO(+ aef͋FjyEߵ]`4; Ϛjǒ23FW4ojN%=L=Gk<0DҼMX/GM"t#sq_ MRIR^a$#t!_9%N#p^3]hM缌D}NԲtF.ns.ɢLcV&L' ߟ҄sY j5Eucd\m{&>RݡץV4`뼀JJXW͓՘7~T:l_g@@Zl:Lv=jHʳ{&ZZ$B%WKL.}[9BZFHGC&&H)t5?Ϻws"a<qezj?LKB8PT#li<㸵3\b'O5YެY!U~]ȟ`O7O㔽gI#\e*m|{8vۛ"2OYpPT 4e6e6巃8ʪQ{ C1DX?v/}1Gl^~BTP>!ϯ/016C՛Ou}!AtJ5!LOkN^ jRMF Huq p'ZY+ -?)#,i)_89F6!Hp$M:bq> |H$5jϳKtagk*~IGu8'q9jܟ w:!vhz Myʡhy]^oot8^6*zgu8/ij={8wh:lN.=rF*שqj0|x<ke}Ɡ֧1Ogud`nx+#ŴQUZt Qm-Ur;JNi.Կk)y;FwZꏙͤy-6dOI!W N,_sƩjqe%j|*v9 #D͚)' F `u"p,c{{.3'ndֶEj/}æ5$ӄ ޶WhVҎ]a@ ~6!{Ռכ7>FTxEpp^;,x>ٮC9.1t&asbLәѐ$jݴ(ߌ YV6?Y4l&<i)3aMCY ˭vf{4G<pe'O2|BFW#jȔ( KhuOy}ٵ`ɤOl@tRXUܼ]Ҭ$,jK2y; M@|xUDW{SlAWAv&IJpgjz&9Mv0CLb16@Ƨ5#U?^ـ(nV5Jԉ)L󠣏] 1Gc3?TW " F:HAkJ BRݔ /nXҞʏs_x5ɸ aaVq:]Xst<{4l`E>c6BN:g7M*9RLl;pId9g]~ʉ)f`+O/bs| RI6ss mJ~Y؄_R[1֣5<,- Yh:M;)9 G$:L=sv\g|K:mʀk.2JSgKnҐbF.` HY](p 5T<"{ jNC ^#\T%"n@[0%2B$݉{͸&OQ;/_zٖߣN1޲e;Cs7Z4 #Pɘcv@OIJBrrԃ>a?ÉUN3b^!n(J]!FlLLG߯!ÿ1sAc'smpn;|;c{`w2–G/۪%ZNЏ 4X;e ۿꝓhڸWݩq,PUX#ct9ȚƉ*UhHNnR^+v'~5T e?fb3N%Of17^ r]7(@ %xR>qcc }Vꖪ-jh;a0Χ8Xƹb15N>kZ,wl |vZm"d~꿦LFݧ F`N~*CW%s="|$ؖr c; hȤ-%.AV;g'oI1bD=BjgβЗt+^bS^h"p P՟N,36|H._K#W[i9~ةE:š$}̴|`b;Pe58{rw _qch).` - R\y[I< Պ V3XKXom > | V]:#m[ԓvDW@uy[~%w,|@:oZ do*"*u M-!MlJbJZ#^חIګ&efk rk;3U@Tu^8ǮW8%2VEp Ƕ[Y %siB/UMZ~ y~lV{BpсX"PmtZw h7t Y{8ʓ&kڋ Rm4oi$k-E[;"9e +|>=+j=灠q6}]On1ɱ@yڀ)茇-K٠ѥjKYV}K4OV+ mQa0p]SVhludk k~;GsE. 4DqC$#c؂r#}01\7<*XB/4*UQǷs}fm%9?`]'sq??1KV8zՋsfKiU#b9fwj}QDKQ#d.i2 QT4nQDvBH TG @}ACo%d&mwU%ŤI;sBjM tߍ&&|bޅҟZ zM&$e,ɍ9-_spC'˶&A0H73@ƽDD!A8w=ߐv.+[bKIAD#z1a ʦQ~(E?~bsʂǣSYuT*qVIH nSl϶ YZ