bouncycastle-mail-1.73-150200.3.18.1 >  A dpBp9|]>-E)Pr+9/o"2!鼝U,̻+̩VILyV;w "+ԻJSqAH\ݯ-Pۀ[ud1˵cDfcc12a4fef7ed6e78d47b3ed8e69bc0c111253b175537cb7397f0d8e4ef919798d8c4b8830571fa346e72d1627605b5f2f7a2d41cDdpBp9|S;S9\N֒wwS[po$ }gGMVƬЂcnAtқ!jv$4/4d45v۸ĠmmAgqaaDk}gվݭp>@?0d ' @LPX\u      4 9 @Tm   (M8T9: FkGHIXY\@]T^b cdPeUfXlZulvw`xtyz,Cbouncycastle-mail1.73150200.3.18.1Bouncy Castle S/MIME APIThe Bouncy Castle Java S/MIME APIs for handling S/MIME protocols. The APIs can be used in conjunction with a JCE/JCA provider such as the one provided with the Bouncy Castle Cryptography APIs. The JavaMail API and the Java activation framework will also be needed.dpsheep53SUSE Linux Enterprise 15SUSE LLC MIThttps://www.suse.com/Development/Libraries/Javahttps://www.bouncycastle.orglinuxnoarchCA큤dp|dpdp0dp|dG235e28f826679efbd9c0c95828552acfc682448f9bd97479a40fb6ada6b433faedbbb10380b1271998b867a2e36b1cbee226e03d438726e1a91f80c5dde11849f524f17b235a0647e9c5c15741e7f43493dc538ac53618d3ee4beee27c646c571fa96301bc6d3109d257afdf84bd4c573483a1ec905b05479a581820afd23899rootrootrootrootrootrootrootrootrootrootbouncycastle-1.73-150200.3.18.1.src.rpmbouncycastle-mailmvn(org.bouncycastle:bcmail-jdk15)mvn(org.bouncycastle:bcmail-jdk15:pom:)mvn(org.bouncycastle:bcmail-jdk15on)mvn(org.bouncycastle:bcmail-jdk15on:pom:)mvn(org.bouncycastle:bcmail-jdk15to18)mvn(org.bouncycastle:bcmail-jdk15to18:pom:)mvn(org.bouncycastle:bcmail-jdk16)mvn(org.bouncycastle:bcmail-jdk16:pom:)mvn(org.bouncycastle:bcmail-jdk18)mvn(org.bouncycastle:bcmail-jdk18:pom:)mvn(org.bouncycastle:bcmail-jdk18on)mvn(org.bouncycastle:bcmail-jdk18on:pom:)osgi(bcmail)@@@@@    bouncycastlebouncycastle-pkixbouncycastle-utiljava-headlessjavapackages-filesystemmvn(org.bouncycastle:bcpkix-jdk18on)mvn(org.bouncycastle:bcprov-jdk18on)mvn(org.bouncycastle:bcutil-jdk18on)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.731.731.731.731.731.733.0.4-14.6.0-14.0-15.2-14.14.1dGdGcObbbDF@b4t@b3"`@`__@_ @^l@^{G]µ]@]@]@]@[P}@[d@ZYY4Y@VU@V*!@U hT!Tpmonreal@suse.compmonreal@suse.compmonreal@suse.comshvetz.anton@gmail.comfstrba@suse.comfstrba@suse.comfstrba@suse.comfstrba@suse.compmonreal@suse.comfstrba@suse.compmonreal@suse.compmonreal@suse.compmonrealgonzalez@suse.comfstrba@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.comfstrba@suse.comtchvatal@suse.comabergmann@suse.comfstrba@suse.comfstrba@suse.comfstrba@suse.compcervinka@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.com- Update to version 1.73: * Defects Fixed: - BCJSSE: Instantiating a JSSE provider in some contexts could cause an AccessControl exception. - The EC key pair generator can generate out of range private keys when used with SM2. A specific SM2KeyPairGenerator has been added to the low-level API and is used by KeyPairGenerator.getInstance("SM2", "BC"). The SM2 signer has been updated to check for out of range keys as well.. - The attached signature type byte was still present in Falcon signatures as well as the detached signature byte. - There was an off-by-one error in engineGetOutputSize() for ECIES. - The method for invoking read() internally in BCPGInputStream could result in inconsistent behaviour if the class was extended. - Fixed a rounding issue with FF1 Format Preserving Encryption algorithm for certain radices. - Fixed RFC3394WrapEngine handling of 64 bit keys. - Internal buffer for blake2sp was too small and could result in an ArrayIndexOutOfBoundsException. - JCA PSS Signatures using SHAKE128 and SHAKE256 now support encoding of algorithm parameters. - PKCS10CertificationRequest now checks for empty extension parameters. - Parsing errors in the processing of PGP Armored Data now throw an explicit exception ArmoredInputException. - PGP AEAD streams could occassionally be truncated. - The ESTService class now supports processing of chunked HTTP data. - A constructed ASN.1 OCTET STRING with a single member would sometimes be re-encoded as a definite-length OCTET STRING. The encoding has been adjusted to preserve the BER status of the object. - PKIXCertPathReviewer could fail if the trust anchor was also included in the certificate store being used for path analysis. - UTF-8 parsing of an array range ignored the provided length. - IPAddress has been written to provide stricter checking and avoid the use of Integer.parseInt(). - A Java 7 class snuck into the Java 5 to Java 8 build. * Additional Features and Functionality: - The Rainbow NIST Post Quantum Round-3 Candidate has been added to the low-level API and the BCPQC provider (level 3 and level 5 parameter sets only). - The GeMSS NIST Post Quantum Round-3 Candidate has been added to the low-level API. - The org.bouncycastle.rsa.max_mr_tests property check has been added to allow capping of MR tests done on RSA moduli. - Significant performance improvements in PQC algorithms, especially BIKE, CMCE, Frodo, HQC, Picnic. - EdDSA verification now conforms to the recommendations of Taming the many EdDSAs, in particular cofactored verification. As a side benefit, Pornin's basis reduction is now used for EdDSA verification, giving a significant performance boost. - Major performance improvements for Anomalous Binary (Koblitz) Curves. - The lightweight Cryptography finalists Ascon, ISAP, Elephant, PhotonBeetle, Sparkle, and Xoodyak have been added to the light-weight cryptography API. - BLAKE2bp and BLAKE2sp have been added to the light-weight cryptography API. - Support has been added for X.509, Section 9.8, hybrid certificates and CRLs using alternate public keys and alternate signatures. - The property "org.bouncycastle.emulate.oracle" has been added to signal the provider should return algorithm names on some algorithms in the same manner as the Oracle JCE provider. - An extra replaceSigners method has been added to CMSSignedData which allows for specifying the digest algorithm IDs to be used in the new CMSSignedData object. - Parsing and re-encoding of ASN.1 PEM data has been further optimized to prevent unecessary conversions between basic encoding, definite length, and DER. - Support has been added for KEM ciphers in CMS in accordance with draft-ietf-lamps-cms-kemri - Support has been added for certEncr in CRMF to allow issuing of certificates for KEM public keys. - Further speedups have been made to CRC24. - GCMParameterSpec constructor caching has been added to improve performance for JVMs that have the class available. - The PGPEncrytedDataGenerator now supports injecting the session key to be used for PGP PBE encrypted data. - The CRMF CertificateRequestMessageBuilder now supports optional attributes. - Improvements to the s calculation in JPAKE. - A general purpose PQCOtherInfoGenerator has been added which supports all Kyber and NTRU. - An implementation of HPKE (RFC 9180 - Hybrid Public Key Encryption) has been added to the light-weight cryptography API. * Security Advisories: - The PQC implementations have now been subject to formal review for secret leakage and side channels, there were issues in BIKE, Falcon, Frodo, HQC which have now been fixed. Some weak positives also showed up in Rainbow, Picnic, SIKE, and GeMSS - for now this last set has been ignored as the algorithms will either be updated if they reappear in the Signature Round, or deleted, as is already the case for SIKE (it is now in the legacy package). Details on the group responsible for the testing can be found in the CONTRIBUTORS file. - For at least some ECIES variants (e.g. when using CBC) there is an issue with potential malleability of a nonce (implying silent malleability of the plaintext) that must be sent alongside the ciphertext but is outside the IES integrity check. For this reason the automatic generation of nonces with IED is now disabled and they have to be passed in using an IESParameterSpec. The current advice is to agree on a nonce between parties and then rely on the use of the ephemeral key component to allow the nonce (rather the so called nonce) usage to be extended.- Update to version 1.73: [jsc#PED-3756] * Defects Fixed: - BCJSSE: Instantiating a JSSE provider in some contexts could cause an AccessControl exception. - The EC key pair generator can generate out of range private keys when used with SM2. A specific SM2KeyPairGenerator has been added to the low-level API and is used by KeyPairGenerator.getInstance("SM2", "BC"). The SM2 signer has been updated to check for out of range keys as well.. - The attached signature type byte was still present in Falcon signatures as well as the detached signature byte. - There was an off-by-one error in engineGetOutputSize() for ECIES. - The method for invoking read() internally in BCPGInputStream could result in inconsistent behaviour if the class was extended. - Fixed a rounding issue with FF1 Format Preserving Encryption algorithm for certain radices. - Fixed RFC3394WrapEngine handling of 64 bit keys. - Internal buffer for blake2sp was too small and could result in an ArrayIndexOutOfBoundsException. - JCA PSS Signatures using SHAKE128 and SHAKE256 now support encoding of algorithm parameters. - PKCS10CertificationRequest now checks for empty extension parameters. - Parsing errors in the processing of PGP Armored Data now throw an explicit exception ArmoredInputException. - PGP AEAD streams could occassionally be truncated. - The ESTService class now supports processing of chunked HTTP data. - A constructed ASN.1 OCTET STRING with a single member would sometimes be re-encoded as a definite-length OCTET STRING. The encoding has been adjusted to preserve the BER status of the object. - PKIXCertPathReviewer could fail if the trust anchor was also included in the certificate store being used for path analysis. - UTF-8 parsing of an array range ignored the provided length. - IPAddress has been written to provide stricter checking and avoid the use of Integer.parseInt(). - A Java 7 class snuck into the Java 5 to Java 8 build. * Additional Features and Functionality: - The Rainbow NIST Post Quantum Round-3 Candidate has been added to the low-level API and the BCPQC provider (level 3 and level 5 parameter sets only). - The GeMSS NIST Post Quantum Round-3 Candidate has been added to the low-level API. - The org.bouncycastle.rsa.max_mr_tests property check has been added to allow capping of MR tests done on RSA moduli. - Significant performance improvements in PQC algorithms, especially BIKE, CMCE, Frodo, HQC, Picnic. - EdDSA verification now conforms to the recommendations of Taming the many EdDSAs, in particular cofactored verification. As a side benefit, Pornin's basis reduction is now used for EdDSA verification, giving a significant performance boost. - Major performance improvements for Anomalous Binary (Koblitz) Curves. - The lightweight Cryptography finalists Ascon, ISAP, Elephant, PhotonBeetle, Sparkle, and Xoodyak have been added to the light-weight cryptography API. - BLAKE2bp and BLAKE2sp have been added to the light-weight cryptography API. - Support has been added for X.509, Section 9.8, hybrid certificates and CRLs using alternate public keys and alternate signatures. - The property "org.bouncycastle.emulate.oracle" has been added to signal the provider should return algorithm names on some algorithms in the same manner as the Oracle JCE provider. - An extra replaceSigners method has been added to CMSSignedData which allows for specifying the digest algorithm IDs to be used in the new CMSSignedData object. - Parsing and re-encoding of ASN.1 PEM data has been further optimized to prevent unecessary conversions between basic encoding, definite length, and DER. - Support has been added for KEM ciphers in CMS in accordance with draft-ietf-lamps-cms-kemri - Support has been added for certEncr in CRMF to allow issuing of certificates for KEM public keys. - Further speedups have been made to CRC24. - GCMParameterSpec constructor caching has been added to improve performance for JVMs that have the class available. - The PGPEncrytedDataGenerator now supports injecting the session key to be used for PGP PBE encrypted data. - The CRMF CertificateRequestMessageBuilder now supports optional attributes. - Improvements to the s calculation in JPAKE. - A general purpose PQCOtherInfoGenerator has been added which supports all Kyber and NTRU. - An implementation of HPKE (RFC 9180 - Hybrid Public Key Encryption) has been added to the light-weight cryptography API. * Security Advisories: - The PQC implementations have now been subject to formal review for secret leakage and side channels, there were issues in BIKE, Falcon, Frodo, HQC which have now been fixed. Some weak positives also showed up in Rainbow, Picnic, SIKE, and GeMSS - for now this last set has been ignored as the algorithms will either be updated if they reappear in the Signature Round, or deleted, as is already the case for SIKE (it is now in the legacy package). Details on the group responsible for the testing can be found in the CONTRIBUTORS file. - For at least some ECIES variants (e.g. when using CBC) there is an issue with potential malleability of a nonce (implying silent malleability of the plaintext) that must be sent alongside the ciphertext but is outside the IES integrity check. For this reason the automatic generation of nonces with IED is now disabled and they have to be passed in using an IESParameterSpec. The current advice is to agree on a nonce between parties and then rely on the use of the ephemeral key component to allow the nonce (rather the so called nonce) usage to be extended.- Update to version 1.72: * Defects Fixed: - There were parameter errors in XMSS^MT OIDs for XMSSMT_SHA2_40/4_256 and XMSSMT_SHA2_60/3_256. These have been fixed. - There was an error in Merkle tree construction for the Evidence Records (ERS) implementation which could result in invalid roots been timestamped. ERS now produces an ArchiveTimeStamp for each data object/group with an associated reduced hash tree. The reduced hash tree is now calculated as a simple path to the root of the tree for each record. - OpenPGP will now ignore signatures marked as non-exportable on encoding. - A tagging calculation error in GCMSIV which could result in incorrect tags has been fixed. - Issues around Java 17 which could result in failing tests have been addressed. * Additional Features and Functionality: - BCJSSE: TLS 1.3 is now enabled by default where no explicit protocols are supplied (e.g. "TLS" or "Default" SSLContext algorithms, or SSLContext.getDefault() method). - BCJSSE: Rewrite SSLEngine implementation to improve compatibility with SunJSSE. - BCJSSE: Support export of keying material via extension API. - (D)TLS: Add support for 'tls-exporter' channel binding per RFC 9266. - (D)TLS (low-level API): By default, only (D)TLS 1.2 and TLS 1.3 are offered now. Earlier versions are still supported if explicitly enabled. Users may need to check they are offering suitable cipher suites for TLS 1.3. - (D)TLS (low-level API): Add support for raw public keys per RFC 7250. - CryptoServicesRegistrar now has a setServicesConstraints() method on it which can be used to selectively turn off algorithms. - The NIST PQC Alternate Candidate, Picnic, has been added to the low level API and the BCPQC provider. - SPHINCS+ has been upgraded to the latest submission, SPHINCS+ 3.1 and support for Haraka has been added. - Evidence records now support timestamp renewal and hash renewal. - The SIKE Alternative Candidate NIST Post Quantum Algorithm has been added to the low-level PQC API. - The NTRU Round 3 Finalist Candidate NIST Post Quantum Algorithm has been added to the low-level API and the BCPQC provider. - The Falcon Finalist NIST Post Quantum Algorithm has been added to the low-level API and the BCPQC provider. - The CRYSTALS-Kyber Finalist NIST Post Quantum Algorithm has been added to the low-level API and the BCPQC provider. - Argon2 Support has been added to the OpenPGP API. - XDH IES has now been added to the BC provider. - The OpenPGP API now supports AEAD encryption and decryption. - The NTRU Prime Alternative Candidate NIST Post Quantum Algorithms have been added to the low-level API and the BCPQC provider. - The CRYSTALS-Dilithium Finalist NIST Post Quantum Algorithm has been added to the low-level API and the BCPQC provider. - The BIKE NIST Post Quantum Alternative/Round-4 Candidate has been added to the low-level API and the BCPQC provider. - The HQC NIST Post Quantum Alternative/Round-4 Candidate has been added to the low-level API and the BCPQC provider. - Grain128AEAD has been added to the lightweight API. - A fast version of CRC24 has been added for use with the PGP API. - Some additional methods and fields have been exposed in the PGPOnePassSignature class to (hopefully) make it easier to deal with nested signatures. - CMP support classes have been updated to reflect the latest editions to the the draft RFC "Lightweight Certificate Management Protocol (CMP) Profile". - Support has been added to the PKCS#12 implementation for the Oracle trusted certificate attribute. - Performance of our BZIP2 classes has been improved. * Notes: - Keep in mind the PQC algorithms are still under development and we are still at least a year and a half away from published standards. This means the algorithms may still change so by all means experiment, but do not use the PQC algoritms for anything long term. - The legacy "Rainbow" and "McEliece" implementations have been removed from the BCPQC provider. The underlying classes are still present if required. Other legacy algorithm implementations can be found under the org.bouncycastle.pqc.legacy package. * Security Notes: - The PQC SIKE algorithm is provided for research purposes only. It should now be regarded as broken. The SIKE implementation will be withdrawn in BC 1.73. * Rebase bouncycastle-javadoc.patch- Version update to 1.71 * Defects Fixed - In line with GPG the PGP API now attempts to preserve comments containing non-ascii UTF8 characters. - An accidental partial dependency on Java 1.7 has been removed from the TLS API. - JcaPKIXIdentityBuilder would fail to process File objects correctly. This is now fixed. - Some byte[] parameters to the CMP API were not being defensively cloned to prevent accidental changes. Extra defensive cloning has been added. - CMS primitives would sometimes convert ASN.1 definite-length encodings into indefinite-length encodings. The primitives will now try and preserve the original encoding where possible. - CMSSignedData.getAttributeCertificates() now properly restricts the tag values checked to just 1 (the obsolete v1 tag) and 2 (for the more current v2 certificates). - BCJSSE now tries to validate a custom KeyManager selection in order to catch errors around a key manager ignoring key type early. - Compressed streams in PGP ending with zero length partial packets could cause failure on parsing the OpenPGP API. This has been fixed. - The fallback mode for JceAsymmetricKeyWrapper/Unwrapper would lose track of any algorithm parameters generated in the initial attempt. The algorithm parameters are now propagated. - An accidental regression introduced by a fix for another issue in PKIXCertPathReviewer around use of the AuthorityKeyIdentifier extension and it failing to match a certificate uniquely when the serial number field is missing has been fixed. - An error was found in the creation of TLS 1.3 Export Keying Material which could cause compatibility issues. This has been fixed. * Additional Features and Functionality - Support has been added for OpenPGP regular expression signature packets. - Support has been added for OpenPGP PolicyURI signature packets. - A utility method has been added to PGPSecretKeyRing to allow for inserting or replacing a PGPPublicKey. - The NIST PQC Finalist, Classic McEliece has been added to the low level API and the BCPQC provider. - The NIST PQC Alternate Candidate, SPHINCS+ has been added to the BCPQC provider. - The NIST PQC Alternate Candidate, FrodoKEM has been added to the low level API and the BCPQC provider. - The NIST PQC Finalist, SABER has been added to the low level API and the BCPQC provider. - KMAC128, KMAC256 has been added to the BC provider (empty customization string). - TupleHash128, TupleHash256 has been added to the BC provider (empty customization string). - ParallelHash128, ParallelHash256 has been added to the BC provider (empty customization string, block size 1024 bits). - Two new properties: "org.bouncycastle.rsa.max_size" (default 15360) and "org.bouncycastle.ec.fp_max_size" (default 1042) have been added to cap the maximum size of RSA and EC keys. - RSA modulus are now checked to be provably composite using the enhanced MR probable prime test. - Imported EC Fp basis values are now validated against the MR prime number test before use. The certainty level of the prime test can be determined by "org.bouncycastle.ec.fp_certainty" (default 100). - The BC entropy thread now has a specific name: "BC-ENTROPY-GATHERER". - Utility methods have been added for joining/merging PGP public keys and signatures. - Blake3-256 has been added to the BC provider. - DTLS: optimisation to delayed handshake hash. - Further additions to the ETSI 102 941 support in the ETSI/ITS package: certification request, signed message generation and verification now supported. - CMSSignedDataGenerator now supports the direct generation of definite-length data. - The NetscapeCertType class now has a hasUsages() method on it for querying usage settings on its bit string. - Support for additional input has been added for deterministic (EC)DSA. - The OpenPGP API provides better support for subkey generation. - BCJSSE: Added boolean system properties "org.bouncycastle.jsse.client.dh.disableDefaultSuites" and "org.bouncycastle.jsse.server.dh.disableDefaultSuites". Default "false". Set to "true" to disable inclusion of DH cipher suites in the default cipher suites for client/server respectively. * Notes - The deprecated QTESLA implementation has been removed from the BCPQC provider. - The submission update to SPHINCS+ has been added. This changes the generation of signatures - particularly deterministic ones. - Version update to 1.70 * Defects Fixed - Blake 3 output limit is enforced. - The PKCS12 KeyStore was relying on default precedence for its key Cipher implementation so was sometimes failing if used from the keytool. The KeyStore class now makes sure it uses the correct Cipher implementation. - Fixed bzip2 compression for empty contents (GH #993). - ASN.1: More robust handling of high tag numbers and definite-length forms. - BCJSSE: Fix a concurrent modification issue in session contexts (GH#968). - BCJSSE: Don't log sensitive system property values (GH#976). - BCJSSE: Fixed a priority issue amongst imperfect-match credentials in KeyManager classes. - The IES AlgorithmParameters object has been re-written to properly support all the variations of IESParameterSpec. - getOutputSize() for ECIES has been corrected to avoid occassional underestimates. - The lack of close() in the ASN.1 Dump command line utility was triggering false positives in some code analysis tools. A close() call has been added. - PGPPublicKey.getBitStrength() now properly recognises EdDSA keys. * Additional Features and Functionality - Missing PGP CRC checksums can now be optionally ignored using setDetectMissingCRC() (default false) on ArmoredInputStream. - PGPSecretKey.copyWithNewPassword() now has a variant which uses USAGE_SHA1 for key protection if a PGPDigestCalculator is passed in. - PGP ASCII armored data now skips "\t", "\v", and "\f". - PKCS12 files with duplicate localKeyId attributes on certificates will now have the incorrect attributes filtered out, rather than the duplicate causing an exception. - PGPObjectFactory will now ignore packets representing unrecognised signature versions in the input stream. - The X.509 extension generator will now accumulate some duplicate X.509 extensions into a single extension where it is possible to do so. - Removed support for maxXofLen in Kangaroo digest. - Ignore marker packets in PGP Public and Secret key ring collection. - An implementation of LEA has been added to the low-level API. - Access, recovery, and direct use for PGP session keys has been added to the OpenPGP API for processing encrypted data. - A PGPCanonicalizedDataGenerator has been added which converts input into canonicalized literal data for text and UTF-8 mode. - A getUserKeyingMaterial() method has been added to the KeyAgreeRecipientInformation class. - ASN.1: Tagged objects (and parsers) now support all tag classes. Special code for ApplicationSpecific has been deprecated and re-implemented in terms of TaggedObject. - ASN.1: Improved support for nested tagging. - ASN.1: Added support for GraphicString, ObjectDescriptor, RelativeOID. - ASN.1: Added support for constructed BitString encodings, including efficient parsing for large values. - TLS: Added support for external PSK handshakes. - TLS: Check policy restrictions on key size when determining cipher suite support. - A performance issue in KeccakDigest due to left over debug code has been identified and dealt with. - BKS key stores can now be used for collecting protected keys (note: any attempt to store such a store will cause an exception). - A method for recovering user keying material has been added to KeyAgreeRecipientInformation. - Support has been added to the CMS API for SHA-3 based PLAIN-ECDSA. - The low level BcDefaultDigestProvider now supports the SHAKE family of algorithms and the SM3 alogirthm. - PGPKeyRingGenerator now supports creation of key-rings with direct-key identified keys. - The PQC NIST candidate, signature algorithm SPHINCS+ has been added to the low-level API. - ArmoredInputStream now explicitly checks for a '\n' if in crLF mode. - Direct support for NotationDataOccurances, Exportable, Revocable, IntendedRecipientFingerPrints, and AEAD algorithm preferences has been added to PGPSignatureSubpacketVector. - Further support has been added for keys described using S-Expressions in GPG 2.2.X. - Support for OpenPGP Session Keys from the (draft) Stateless OpenPGP CLI has been added. - Additional checks have been added for PGP marker packets in the parsing of PGP objects. - A CMSSignedData.addDigestAlgorithm() has been added to allow for adding additional digest algorithm identifiers to CMS SignedData structures when required. - Support has been added to CMS for the LMS/HSS signature algorithm. - The system property "org.bouncycastle.jsse.client.assumeOriginalHostName" (default false) has been added for dealing with SNI problems related to the host name not being propagate by the JVM. - The JcePKCSPBEOutputEncryptorBuilder now supports SCRYPT with ciphers that do not have algorithm parameters (e.g. AESKWP). - Support is now added for certificates using ETSI TS 103 097, "Intelligent Transport Systems (ITS)" in the bcpkix package. * Notes. - While this release should maintain source code compatibility, developers making use of some parts of the ASN.1 library will find that some classes need recompiling. Apologies for the inconvenience. - Version update to 1.69 * Defects Fixed - Lightweight and JCA conversion of Ed25519 keys in the PGP API could drop the leading byte as it was zero. This has been fixed. - Marker packets appearing at the start of PGP public key rings could cause parsing failure. This has been fixed. - ESTService could fail for some valid Content-Type headers. This has been fixed. - Originator key algorithm parameters were being passed as NULL in key agreement recipients. The parameters now reflect the value of the parameters in the key's SubjectPublicKeyInfo. - ContentType on encapsulated data was not been passed through correctly for authenticated and enveloped data. This has been fixed. - NTRUEncryptionParameters and NTRUEncryptionKeyGenerationParameters were not correctly cloning the contained message digest. This has been fixed. - CertificateFactory.generateCertificates()/generateCRLs() would throw an exception if extra data was found at the end of a PEM file even if valid objects had been found. Extra data is now ignored providing at least one object found. - Internal class PKIXCRLUtil could throw a NullPointerException for CRLs with an absent nextUpdate field. This has been fixed. - PGP ArmoredInputStream now fails earlier on malformed headers. - The McElieceKobaraImaiCipher was randomly throwing "Bad Padding: invalid ciphertext" exception while decrypting due to leading zeroes been missed during processing of the cipher text. This has been fixed. - Ed25519 keys being passed in via OpenSSH key spec are now validated in the KeyFactory. - Blowfish keys are now range checked on cipher construction. - In some cases PGPSecretKeyRing was failing to search its extraPubKeys list when searching for public keys. - The BasicConstraintsValidation class in the BC cert path validation tools has improved conformance to RFC 5280. - AlgorithmIdentifiers involving message digests now attempt to follow the latest conventions for the parameters field (basically DER NULL appears less). - Fix various conversions and interoperability for XDH and EdDSA between BC and SunEC providers. - TLS: Prevent attempts to use KeyUpdate mechanism in versions before TLS 1.3. * Additional Features and Functionality - GCM-SIV has been added to the lightweight API and the provider. - Blake3 has been added to the lightweight API. - The OpenSSL PEMParser can now be extended to add specialised parsers. - Base32 encoding has now been added, the default alphabet is from RFC 4648. - The KangarooTwelve message digest has been added to the lightweight API. - An implementation of the two FPE algorithms, FF1 and FF3-1 in SP 800-38G has been added to the lightweight API and the JCE provider. - An implementation of ParallelHash has been added to the lightweight API. - An implementation of TupleHash has been added to the lightweight API. - RSA-PSS now supports the use of SHAKE128 and SHAKE256 as the mask generation function and digest. - ECDSA now supports the use of SHAKE128 and SHAKE256. - PGPPBEEncryptedData will now reset the stream if the initial checksum fails so another password can be tried. - Iterators on public and secret key ring collections in PGP now reflect the original order of the public/secret key rings they contain. - KeyAgreeRecipientInformation now has a getOriginator() method for retrieving the underlying orginator information. - PGPSignature now has a getDigestPrefix() method for people wanting exposure to the signature finger print details. - The old BKS-V1 format keystore is now disabled by default. If you need to use BKS-V1 for legacy reasons, it can be re-enabled by adding: org.bouncycastle.bks.enable_v1=true to the java.security file. We would be interested in hearing from anyone that needs to do this. - PLAIN-ECDSA now supports the SHA3 digests. - Some highlevel support for RFC 4998 ERS has been added for ArchiveTimeStamp and EvidenceRecord. The new classes are in the org.bouncycastle.tsp.ers package. - ECIES has now also support SHA256, SHA384, and SHA512. - digestAlgorithms filed in CMS SignedData now includes counter signature digest algorithms where possible. - A new property "org.bouncycastle.jsse.config" has been added which can be used to configure the BCJSSE provider when it is created using the no-args constructor. - In line with changes in OpenSSL 1.1.0, OpenSSLPBEParametersGenerator can now be configured with a digest. - PGPKeyRingGenerator now includes a method for adding a subkey with a primary key binding signature. - Support for ASN.1 PRIVATE tags has been added. - Performance enhancements to Nokeon, AES, GCM, and SICBlockCipher. - Support for ecoding/decoding McElieceCCA2 keys has been added to the PQC API - BCJSSE: Added support for jdk.tls.maxCertificateChainLength system property (default is 10). - BCJSSE: Added support for jdk.tls.maxHandshakeMessageSize system property (default is 32768). - BCJSSE: Added support for jdk.tls.client.enableCAExtension (default is 'false'). - BCJSSE: Added support for jdk.tls.client.cipherSuites system property. - BCJSSE: Added support for jdk.tls.server.cipherSuites system property. - BCJSSE: Extended ALPN support via standard JSSE API to JDK 8 versions after u251/u252. - BCJSSE: Key managers now support EC credentials for use with TLS 1.3 ECDSA signature schemes (including brainpool). - TLS: Add TLS 1.3 support for brainpool curves per RFC 8734. * Notes - There is a small API change in the PKIX package to the DigestAlgorithmIdentifierFinder interface as a find() method that takes an ASN1ObjectIdentifier has been added to it. For people wishing to extend their own implementations, see DefaultDigestAlgorithmIdentifierFinder for a sample implementation. - A version of the bcmail API supporting Jakarta Mail has now been added (see bcjmail jar). - Some work has been done on moving out code that does not need to be in the provider jar. This has reduced the size of the provider jar and should also make it easier for developers to patch the classes involved as they no longer need to be signed. bcpkix and bctls are both dependent on the new bcutil jar. - Add build dependencies on mvn(jakarta.activation:jakarta.activation-api) and mvn(jakarta.mail:jakarta.mail-api) - Remove unneeded script bouncycastle_getpoms.sh from sources- Build against the standalone JavaEE modules unconditionally- Build with source/target levels 8- Add glassfish-activation-api dependency so that we can build with JDK that does not contain the JavaEE modules- Directory core/docs does not exist- Add bouncycastle_getpoms.sh to get pom files from Maven repos- Version update to 1.68 * Defects Fixed: - Some BigIntegers utility methods would fail for BigInteger.ZERO. This has been fixed. - PGPUtil.isKeyRing() was not detecting secret sub-keys in its input. This has been fixed. - The ASN.1 class, ArchiveTimeStamp was insisting on a value for the optional reducedHashTree field. This has been fixed. - BCJSSE: Lock against multiple writers - a possible synchronization issue has been removed. * Additional Features and Functionality - BCJSSE: Added support for system property com.sun.net.ssl.requireCloseNotify. Note that we are using a default value of 'true'. - BCJSSE: 'TLSv1.3' is now a supported protocol for both client and server. For this release it is only enabled by default for the 'TLSv1.3' SSLContext, but can be explicitly enabled using 'setEnabledProtocols' on an SSLSocket or SSLEngine, or via SSLParameters. - BCJSSE: Session resumption is now also supported for servers in TLS 1.2 and earlier. For this release it is disabled by default, and can be enabled by setting the boolean system property org.bouncycastle.jsse.server.enableSessionResumption to 'true'. - The provider RSA-PSS signature names that follow the JCA naming convention. - FIPS mode for the BCJSSE now enforces namedCurves for any presented certificates. - PGPSignatureSubpacketGenerator now supports editing of a pre-existing sub-packet list.- Version update to 1.67 [bsc#1180215, CVE-2020-28052] * CVE-2020-28052: OpenBSDBCrypt.checkPassword utility method compared incorrect data when checking the password * Defects Fixed: - BCJSSE: SunJSSE compatibility fix - override of getChannel() removed and 'urgent data' behaviour should now conform to what the SunJSSE expects - Nested BER data could sometimes cause issues in octet strings - Certificates/CRLs with short signatures could cause an exception in toString() in the BC X509 Certificate implmentation - In line with latest changes in the JVM, SignatureSpis which don't require parameters now return null on engineGetParameters() - The RSA KeyFactory now always preferentially produces RSAPrivateCrtKey where it can on requests for a KeySpec based on an RSAPrivateKey - CMSTypedStream$FullReaderStream now handles zero length reads correctly - Unecessary padding was added on KMAC when the key string was block aligned - Zero length data would cause an unexpected exception from RFC5649WrapEngine - OpenBSDBcrypt was failing to handle some valid prefixes * Additional Features and Functionality - Performance improvement of Argon2 and Noekeon - A setSessionKeyObfuscation() method has been added to PublicKeyKeyEncryptionMethodGenerator to allow turning off of session key obfuscation (default is on, method primarily to get around early version GPG issues with AES-128 keys) - Implemented 'safegcd' constant-time modular inversion (as well as a variable-time variant). It has replaced Fermat inversion in all our EC code, and BigInteger.modInverse in several other places, particularly signers. This improves side-channel protection, and also gives a significant performance boost - Performance of custom binary ECC curves and Edwards Curves has been improved - BCJSSE: New boolean system property 'org.bouncycastle.jsse.keyManager.checkEKU' allows to disable ExtendedKeyUsage restrictions when selecting credentials (although the peer may still complain) - Initial support has been added for "Composite Keys and Signatures For Use In Internet PKI" using the test OID. Please note there will be further refinements to this as the draft is standardised - The BC EdDSA signature API now supports keys implementing all methods on the EdECKey and XECKey interfaces directly - Work has begun on classes to support the ETSI TS 103 097, Intelligent Transport Systems (ITS) in the bcpkix package - Further optimization work has been done on GCM - A NewHope based processor, similar to the one for Key Agreement has been added for trying to "quantum hard" KEM algorithms - PGP clear signed signatures now support SHA-224 - Treating absent vs NULL as equivalent can now be configured by a system property. By default this is not enabled - Mode name checks in Cipher strings should now make sure an improper mode name always results in a NoSuchAlgorithmException - In line with changes in OpenSSL, the OpenSSLPBKDF now uses UTF8 encoding- Version update to 1.66 [bsc#1186328, CVE-2020-15522] * Defects Fixed: - EdDSA verifiers now reset correctly after rejecting overly long signatures. - BCJSSE: SSLSession.getPeerCertificateChain could throw NullPointerException. - qTESLA-I verifier would reject some valid signatures. - qTESLA verifiers now reject overly long signatures. - PGP regression caused failure to preserve existing version header when headers were reset. - PKIXNameConstraintValidator had a bad cast preventing use of multiple OtherName constraints. - Serialisation of the non-CRT RSA Private Key could cause a NullPointerException. - An extra 4 bytes was included in the start of HSS public key encodings. - CMS with Ed448 using a direct signature was using id-shake256-len rather than id-shake256. - Use of GCMParameterSpec could cause an AccessControlException under some circumstances. - DTLS: Fixed high-latency HelloVerifyRequest handshakes. - An encoding bug for rightEncoded() in KMAC has been fixed. - For a few values the cSHAKE implementation would add unnecessary pad bytes where the N and S strings produced encoded data that was block aligned. - There were a few circumstances where Argon2BytesGenerator might hit an unexpected null. These have been removed. * Additional Features and Functionality - The qTESLA signature algorithm has been updated to v2.8 (20191108). - BCJSSE: Client-side OCSP stapling now supports status_request_v2 extension. - Support has been added for "ocsp.enable", "ocsp.responderURL" and PKIXRevocationChecker for users of Java 8 and later. - Support has been added for "org.bouncycastle.x509.enableCRLDP" to the PKIX validator. - BCJSSE: Now supports system property 'jsse.enableFFDHE' - BCJSSE: Now supports system properties 'jdk.tls.client.SignatureSchemes' and 'jdk.tls.server.SignatureSchemes'. - Multi-release support has been added for Java 11 XECKeys. - Multi-release support has been added for Java 15 EdECKeys. - The MiscPEMGenerator will now output general PrivateKeyInfo structures. - A new property "org.bouncycastle.pkcs8.v1_info_only" has been added to make the provider only produce version 1 PKCS8 PrivateKeyInfo structures. - The PKIX CertPathBuilder will now take the target certificate from the target constraints if a specific certificate is given to the selector. - BCJSSE: A range of ARIA and CAMELLIA cipher suites added to supported list. - BCJSSE: Now supports the PSS signature schemes from RFC 8446 (TLS 1.2 onwards). - Performance of the Base64 encoder has been improved. - The PGPPublicKey class will now include direct key signatures when checking for key expiry times. * NOTES: - The qTESLA update breaks compatibility with previous versions. Private keys now include a hash of the public key at the end, and signatures are no longer interoperable with previous versions.- Version update to 1.65 * Defects Fixed: - DLExternal would encode using DER encoding for tagged SETs. - ChaCha20Poly1305 could fail for large (>~2GB) files. - ChaCha20Poly1305 could fail for small updates when used via the provider. - Properties.getPropertyValue could ignore system property when other local overrides set. - The entropy gathering thread was not running in daemon mode, meaning there could be a delay in an application shutting down due to it. - A recent change in Java 11 could cause an exception with the BC Provider's implementation of PSS. - BCJSSE: TrustManager now tolerates having no trusted certificates. - BCJSSE: Choice of credentials and signing algorithm now respect the peer's signature_algorithms extension properly. - BCJSSE: KeyManager for KeyStoreBuilderParameters no longer leaks memory. * Additional Features and Functionality: - LMS and HSS (RFC 8554) support has been added to the low level library and the PQC provider. - SipHash128 support has been added to the low level library and the JCE provider. - BCJSSE: BC API now supports explicitly specifying the session to resume. - BCJSSE: Ed25519, Ed448 are now supported when TLS 1.2 or higher is negotiated (except in FIPS mode). - BCJSSE: Added support for extended_master_secret system properties: jdk.tls.allowLegacyMasterSecret, jdk.tls.allowLegacyResumption, jdk.tls.useExtendedMasterSecret . - BCJSSE: Ed25519, Ed448 are now supported when TLS 1.2 or higher is negotiated (except in FIPS mode). - BCJSSE: KeyManager and TrustManager now check algorithm constraints for keys and certificate chains. - BCJSSE: KeyManager selection of server credentials now prefers matching SNI hostname (if any). - BCJSSE: KeyManager may now fallback to imperfect credentials (expired, SNI mismatch). - BCJSSE: Client-side OCSP stapling support (beta version: via status_request extension only, provides jdk.tls.client.enableStatusRequestExtension, and requires CertPathBuilder support). - TLS: DSA in JcaTlsCrypto now falls back to stream signing to work around NoneWithDSA limitations in default provider.- Added patch: * bouncycastle-osgi.patch + Add OSGi manifests to the distributed jars so that they can be used from eclipse- Fix arch dependent macros in noarch package [bsc#1109539]- Update pom files with those from Maven repository.- Version update to 1.64 [bsc#1153385, CVE-2019-17359] [bsc#1096291, CVE-2018-1000180][bsc#1100694, CVE-2018-1000613] * Security Advisory: - CVE-2019-17359: A change to the ASN.1 parser in 1.63 introduced a regression that can cause an OutOfMemoryError to occur on parsing ASN.1 data. * Defects Fixed: - OpenSSH: Fixed padding in generated Ed25519 private keys. - GOST3410-2012-512 now uses the GOST3411-2012-256 as its KDF digest. - Validation of headers in PemReader now looks for tailing dashes in header. - Some compatibility issues around the signature encryption algorithm field in CMS SignedData and the GOST algorithms have been addressed. * Additional Features and Functionality: - PKCS12 key stores containing only certificates can now be created without the need to provide passwords. - BCJSSE: Initial support for AlgorithmConstraints; protocol versions and cipher suites. - BCJSSE: Initial support for 'jdk.tls.disabledAlgorithms'; protocol versions and cipher suites. - BCJSSE: Add SecurityManager check to access session context. - BCJSSE: Improved SunJSSE compatibility of the NULL_SESSION. - BCJSSE: SSLContext algorithms updated for SunJSSE compatibility (default enabled protocols). - The digest functions Haraka-256 and Haraka-512 have been added to the provider and the light-weight API - XMSS/XMSS^MT key management now allows for allocating subsets of the private key space using the extraKeyShard() method. Use of StateAwareSignature is now deprecated. - Support for Java 11's NamedParameterSpec class has been added (using reflection) to the EC and EdEC KeyPairGenerator implementations.- Version update to 1.63 * Defects Fixed: - The ASN.1 parser would throw a large object exception for some objects which could be safely parsed. - GOST3412-2015 CTR mode was unusable at the JCE level. - The DSTU MACs were failing to reset fully on doFinal(). - The DSTU MACs would throw an exception if the key was a multiple of the size as the MAC's underlying buffer size. - EdEC and QTESLA were not previously usable with the post Java 9 module structure. - ECNR was not correctly bounds checking the input and could produce invalid signatures. - ASN.1: Enforce no leading zeroes in OID branches (longer than 1 character). - TLS: Fix X448 support in JcaTlsCrypto. - Fixed field reduction for secp128r1 custom curve. - Fixed unsigned multiplications in X448 field squaring. - Some issues over subset Name Constraint validation in the CertPath analyser - TimeStampResponse.getEncoded() could throw an exception if the TimeStampToken was null. - Unnecessary memory usage in the ARGON2 implementation has been removed. - Param-Z in the GOST-28147 algorithm was not resolving correctly. - It is now possible to specify different S-Box parameters for the GOST 28147-89 MAC. * Additional Features and Functionality: - QTESLA is now updated with the round 2 changes. Note: the security catergories, and in some cases key generation and signatures, have changed. The round 1 version is now moved to org.bouncycastle.pqc.crypto.qteslarnd1, this package will be deleted in 1.64. Please keep in mind that QTESLA may continue to evolve. - Support has been added for generating Ed25519/Ed448 signed certificates. - A method for recovering the message/digest value from an ECNR signature has been added. - Support for the ZUC-128 and ZUC-256 ciphers and MACs has been added to the provider and the lightweight API. - Support has been added for ChaCha20-Poly1305 AEAD mode from RFC 7539. - Improved performance for multiple ECDSA verifications using same public key. - Support for PBKDF2withHmacSM3 has been added to the BC provider. - The S/MIME API has been fixed to avoid unnecessary delays due to DNS resolution of a hosts name in internal MimeMessage preparation. - The valid path for EST services has been updated to cope with the characters used in the Aruba clearpass EST implementation. - Version update to 1.62 * Defects Fixed: - DTLS: Fixed infinite loop on IO exceptions. - DTLS: Retransmission timers now properly apply to flights monolithically. - BCJSSE: setEnabledCipherSuites ignores unsupported cipher suites. - BCJSSE: SSLSocket implementations store passed-in 'host' before connecting. - BCJSSE: Handle SSLEngine closure prior to handshake. - BCJSSE: Provider now configurable using security config under Java 11 and later. - EdDSA verifiers now reject overly long signatures. - XMSS/XMSS^MT OIDs now using the values defined in RFC 8391. - XMSS/XMSS^MT keys now encoded with OID at start. - An error causing valid paths to be rejected due to DN based name constraints has been fixed in the CertPath API. - Name constraint resolution now includes special handling of serial numbers. - Cipher implementations now handle ByteBuffer usage where the ByteBuffer has no backing array. - CertificateFactory now enforces presence of PEM headers when required. - A performance issue with RSA key pair generation that was introduced in 1.61 has been mostly eliminated. * Additional Features and Functionality: - Builders for X509 certificates and CRLs now support replace and remove extension methods. - DTLS: Added server-side support for HelloVerifyRequest. - DTLS: Added support for an overall handshake timeout. - DTLS: Added support for the heartbeat extension (RFC 6520). - DTLS: Improve record seq. behaviour in HelloVerifyRequest scenarios. - TLS: BasicTlsPSKIdentity now reusable (returns cloned array from getPSK). - BCJSSE: Improved ALPN support, including selectors from Java 9. - Lightweight RSADigestSigner now support use of NullDigest. - SM2Engine now supports C1C3C2 mode. - SHA256withSM2 now added to provider. - BCJSSE: Added support for ALPN selectors (including in BC extension API for earlier JDKs). - BCJSSE: Support 'SSL' algorithm for SSLContext (alias for 'TLS'). - The BLAKE2xs XOF has been added to the lightweight API. - Utility classes added to support journaling of SecureRandom and algorithms to allow persistance and later resumption. - PGP SexprParser now handles some unprotected key types. - NONEwithRSA support added to lightweight RSADigestSigner. - Support for the Ethereum flavor of IES has been added to the lightweight API. - Version update to 1.61 * Defects Fixed: - Use of EC named curves could be lost if keys were constructed. via a key factory and algorithm parameters. - RFC3211WrapEngine would not properly handle messages longer than 127 bytes. - The JCE implementations for RFC3211 would not return null AlgorithmParameters. - TLS: Don't check CCS status for hello_request. - TLS: Tolerate unrecognized hash algorithms. - TLS: Tolerate unrecognized SNI types. - Incompatibility issue in ECIES-KEM encryption in cofactor fixed. - Issue with XMSS/XMSSMT private key loading which could result in invalid signatures fixed. - StateAwareSignature.isSigningCapable() now returns false when the key has reached it's maximum number of signatures. - The McEliece KeyPairGenerator was failing to initialize the underlying class if a SecureRandom was explicitly passed. - The McEliece cipher would sometimes report the wrong value on a call to Cipher.getOutputSize(int). - CSHAKEDigest.leftEncode() was using the wrong endianness for multi byte values. - Some ciphers, such as CAST6, were missing AlgorithmParameters implementations. - An issue with the default "m" parameter for 1024 bit Diffie-Hellman keys which could result in an exception on key pair generation has been fixed. - The SPHINCS256 implementation is now more tolerant of parameters wrapped with a SecureRandom and will not throw an exception if it receives one. - A regression in PGPUtil.writeFileToLiteralData() which could cause corrupted literal data has been fixed. - Several parsing issues related to the processing of CMP PKIPublicationInfo. - The ECGOST curves for id-tc26-gost-3410-12-256-paramSetA and id-tc26-gost-3410-12-512-paramSetC had incorrect co-factors. * Additional Features and Functionality: - The qTESLA signature algorithm has been added to PQC light-weight API and the PQC provider. - The password hashing function, Argon2 has been added to the lightweight API. - BCJSSE: Added support for endpoint ID validation (HTTPS, LDAP, LDAPS). - BCJSSE: Added support for 'useCipherSuitesOrder' parameter. - BCJSSE: Added support for ALPN. - BCJSSE: Various changes for improved compatibility with SunJSSE. - BCJSSE: Provide default extended key/trust managers. - TLS: Added support for TLS 1.2 features from RFC 8446. - TLS: Removed support for EC point compression. - TLS: Removed support for record compression. - TLS: Updated to RFC 7627 from draft-ietf-tls-session-hash-04. - TLS: Improved certificate sig. alg. checks. - TLS: Finalised support for RFC 8442 cipher suites. - Support has been added to the main Provider for the Ed25519 and Ed448 signature algorithms. - Support has been added to the main Provider for the X25519 and X448 key agreement algorithms. - Utility classes have been added for handling OpenSSH keys. - Support for processing messages built using GPG and Curve25519 has been added to the OpenPGP API. - The provider now recognises the standard SM3 OID. - A new API for directly parsing and creating S/MIME documents has been added to the PKIX API. - SM2 in public key cipher mode has been added to the provider API. - The BCFKSLoadStoreParameter has been extended to allow the use of certificates and digital signatures for verifying the integrity of BCFKS key stores.- Package also the bcpkix bcpg bcmail bctls artifacts in separate sub-packages - Revert to building with source/target 6, since it is still possible - Added patch: * bouncycastle-javadoc.patch + fix javadoc build- Version update to 1.60 bsc#1100694: * CVE-2018-1000613 Use of Externally-ControlledInput to Select Classes or Code * CVE-2018-1000180: issue around primality tests for RSA key pair generation if done using only the low-level API [bsc#1096291] * Release notes: http://www.bouncycastle.org/releasenotes.html- Version update to 1.59: * CVE-2017-13098: Fix against Bleichenbacher oracle when not using the lightweight APIs (boo#1072697). * CVE-2016-1000338: Fix DSA ASN.1 validation during encoding of signature on verification (boo#1095722). * CVE-2016-1000339: Fix AESEngine key information leak via lookup table accesses (boo#1095853). * CVE-2016-1000340: Fix carry propagation bugs in the implementation of squaring for several raw math classes (boo#1095854). * CVE-2016-1000341: Fix DSA signature generation vulnerability to timing attack (boo#1095852). * CVE-2016-1000342: Fix ECDSA ASN.1 validation during encoding of signature on verification (boo#1095850). * CVE-2016-1000343: Fix week default settings for private DSA key pair generation (boo#1095849). * CVE-2016-1000344: Remove DHIES from the provider to disable the unsafe usage of ECB mode (boo#1096026). * CVE-2016-1000345: Fix DHIES/ECIES CBC mode padding oracle attack (boo#1096025). * CVE-2016-1000346: Fix other party DH public key validation (boo#1096024). * CVE-2016-1000352: Remove ECIES from the provider to disable the unsafe usage of ECB mode (boo#1096022). * Release notes: http://www.bouncycastle.org/releasenotes.html - Removed patch: * ambiguous-reseed.patch- Build with source and target 8 to prepare for a possible removal of 1.6 compatibility- Version update to 1.58 - Added patch: * ambiguous-reseed.patch + Upstream fix for an ambiguous overload- Set java source and target to 1.6 to allow building with jdk9- New build dependency: javapackages-local - Fixed requires - Spec file cleaned- Version update to 1.54: * No obvious changelog to be found * Fixes bnc#967521 CVE-2015-7575- Version update to 1.53 (latest upstream) * No obvious changelog * Fixes bnc#951727 CVE-2015-7940- Fix build with new javapackages-tools- Disable tests on obs as they hang- Version bump to 1.50 to match Fedora - Cleanup with spec-cleanersheep53 16850950711.73-150200.3.18.11.731.731.731.731.731.731.731.731.731.731.731.731.73.0bcmail.jarbouncycastle-mailLICENSE.htmlbouncycastle-bcmail.xmlbcmail.pom/usr/share/java//usr/share/licenses//usr/share/licenses/bouncycastle-mail//usr/share/maven-metadata//usr/share/maven-poms/-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:29135/SUSE_SLE-15-SP2_Update/27a8d993594bc20f984a949b162c0efb-bouncycastle.SUSE_SLE-15-SP2_Updatecpioxz5noarch-suse-linuxgzip ERROR: Stdin has more than one entry--rest ignored (Zip archive data, at least v1.0 to extract Java archive data (JAR))directoryHTML document, ASCII textASCII textXML 1.0 document, ASCII text, with very long linesP P PPPP PP PP PPPRRRRR~JT gS>\`utf-80db76cbe17cc172b00731854c3ef108448cbdd257c7dfdd9634808d4bb8a4eec? 7zXZ !t/] crv(vX0LEFQ̪jrxiE_7k']!!9rC0w~Ŵ ˶)p=~L)ꚫh6٤ +팆ʋ%I&~}*sD%@X d\Ȫ'fBտ v27a D9pHY߅N6| wHGoM)+j14nnh3擗VBnK~M xeI,$c{nZ2:&&V#`9YXJ>*wrvhynkƠt<+`~>웑eCUe֦Ғs2<\'džD4hxuFEY%oS7 mr C^bm9s+d]nļ98[Uf°R-msf&I&NHm|1KBY&/T|(3wBm}3 4מKVՇG0{ߤ"iIyzNjvI5\|7vD*R%`c^YANYsh}V -ZVXOxy*J1H^YWBp6%32ib2$U+M=NU( ^#a6\LA B+QӑDj7Aޙ- &a(@~ke`Ex2)u/ٵm %cSSf:[jhYC&qxOQ+BŲVNAvD#x_<.$UmbP z*Pf=7j-3$̬Fꩻe!)bg?f`GSR5rKz+PGPi$4_*Yh&3s X2 2+td$ Ɨfv.ϝHx$ۻ6.flEEe4?JKyԄS|'X0cch{Qy$-~ |˳+rbJɳ?%_ϝ8>[xv[://]Ɛkoz|,*z"jFd%elJ">@ _ ;8x Ob+ t&բD%&iY١D, R{ܟ(Ƽ#N 0 h*MgjBʏz_" w#i`Vkm'8=t]6BWzQk:%S\N?VgL"O6i{KQ"_]֑}dnWjh=o]io-VA0ON_`&tDPyYi .ﬧk#TZpX \J EQtDị̄ i6eKyQBZmZ8AM8ڪ=x3Vj<[k"<Nи++K9&H[=6 CI78{qeV'znBMl".XOnQF8e5;4y)˷wٹ곐T:^@7HW,/i,x.- Ri>d 4Kz̢0Dk4I8 rcm\cTK{pFA;V^QAW'*c1gtu'}y͂tCR/hErLѢ'-Y83]4S S%CކuBOwսO=xӇdUA7@f&E!CO+}4M0ZZ'g\nwt05,g"ϓʍZgD9ťR9 _f CtQ#p0~pi,YeAP*R'uzmAXa6rKĶw. cmE h~Ov7<},9ԡ8q[!|]7"\R|m{t m@ޤBGΎ6>"U}>1~ ͹zߪVoi[Őڀ-B) N9mgW1ӑY ]j-f聒qc*&jn"m\5ޤȮT|ƑLzzCFG8( P?b;CX qeu2X$3E@M L#.xZHmdzk,F .}t1"!S9-i"v7z:2HԥD<YAJiEl 5z`%`A[TY7|yxd@5lqXjނxdK:ї^5ųq WcA #|=Ș`6G(aaj"O"`AX#?l5 쓣TT*C?o|IJ JY`ؖE}ݗڴ,&}R**jw2Q`=3$fMK~@^ڤ_\Eh@d|KJO/SsGԳ'Qf(RѤWMg\S^GvW[juLSK-ɺc1mʮ?!h>eH{cY&iZf1=T}jcgߊKAR 7Ga}1KʘPskgN3a{ DroLBpP9rYj83d! {^$rʱZiy-jnz?e"Kc5Ͼ[H7LQa62xK}pMђa|kA vl T3_hMj^l!*m}OLrhQ3I$0J?fIJrˠ ܡlo^+ռCzz=ny* ~kbDt~ˣUV(IiVʨ!h AT0^R"9I&8)rgt A(*~kzn!*Œ~/p8ך&)4/UH٫ӳQyz$Ν˸DxgKdW_:Jb.(U==L C5(rprkݨDO}lJmZۮoKYFn*KiNM[&5FSt~2IhS]JFe1twꃫO%,xkRc bZqJWm??#RswdeSKUP܂ڮ8~^۠uO6PDJ,xMםJTg/1⤔g(co:5G-{ީ,٩1WL>)CSGg4(|H2C~v?,!8L:1*MҲcT=why(@vt˂ߠjuyw#H_wmxޔn>3nRlV_PImUY1{%ئ=g0|MRUaw={ !OxIVL*%sT sf`acc𼦺ߍA\$p.-8̈́efdFxG9-f\z6t$4ec,"K]Uî"zбYxQig@%M=.NAqcn-Te&@d-"ޣ/~zqZ̙3H^1O6h`HZP(,2!Du|rնGPzL\;0E_ iP7S1CƜ878N n}JnA!2_fJ-(* ΁_ Ip xIKCBMVtʒ5{"nkTd{ l|$_:0tLkQ4]͎oWBƒ\F0v_Ik>lw|bP)Z` p>2;ji!Rƞn3` I}8l"ԍkN}[8B!zsc[] ٝHM{*WC4} .1fo@f9-@Fj9~*'w|ؖ䚖%t X{([e)7?ؕU35Xe#]PN}t?\ٔ㗓(@eYP|D*&B^j_rEuUS:)0i bI]zQjAsRQ@ŏ+:T QGTC[/ \ļ(gB xM FdUs-=ʢd':Pҡ)lfdԤ#$=D6w!N*y,;icr Ds0Aۅb#b@vp!ɔv*Zw^|> t} Jxx]jܺKF#tM)>Tt_nZl>6J\mEbb'3-Q]87ί? mrK+ \JA$&CUH } Z\'ڃTH) ݌"^:WOj+A}Q5L+%qMjxM+w._=k'U|\k):نb8 td^`j$9@9wwhAMC*s؞ ?$e63tze3HϽzYS\~uXTxL|oHLVT!`xÕ(1py68JulM '`ycăڰF_ K-VێSR^haLJINzI5.Uf$UyR]>Pߨh? pA֦F)~cE@P﹄MLf8g,.w}-8&V!V{TG)2\Q튍O|9P](4Yt$a^PJ֐1TUrr F_Or{e鯌a!ŕO8Bӿe)DC =GN}"k% }USˊ=Y(mTbSӌVq%Sૈ LF؛("{W\Yf` NfF_OGW[eZg6:qHӚl'!-V%T$B[Y%散7td^dwR+n5$OZ* 3:pDH J^J/0H>@,ӢkXtwilnW>4#A학 :sܹt:< "7r}aENR*ֿ;~=RXx:S3?Kʜ c B0[ON1ՌpQZ"QDH_R7X8sh2j[qLr%L'uS aUwqw2}qS߻DwHBW׬}ޞe>y07IQӲkP /B+VťL)I $mlrB )hv^GQ5Ŭ_э})Th%6jk_Ԉ~pZflRU`AcNUl4SݰS/>^뭁S<>,nIOd.G _(XfzX! EwCfQUرeO9u8yB6ӭ|"kE6HЄw܉u W[8 #/KOB޷#ᅢTHl dF^g^?Sgn~x}o8-^"^:@.2669X+,cs?Ë,k "xgU8AǶ˳5tm!cE`*[`H;]ߺ$hdBߖ0tu#/!-Xmf@Qw3b];Y{ڕD|5[w^#_J˲}ߔ?eDzxJK u?i0l`hiB_M1q;Q4ðc`ٮFu+p$7sP|M.XJ)i4qk*]]R+y&0"aKPoY"!{M7~~5LH0)jPRt%?;/Ң̘+jD>۷|8'"\(qXb@$u$7%C3G4BI/Yr&\P'i?GnI&3dp=),6xDL5JV|zb?)m4)0-[OS-s@MtG2 pZ (Pϼ*9aĤ[Ҕ2K&ѝ#>I8x)]୵Z'P| 3{}r@˓Cpռ`#Ljav?ftmuFYX!lRKK[x|`0Su6sa~0q-\_ ʞ;zm_4r9]>9++|%S9UP 礻ӾOU'$ ف(+~ h(LYtr!_?kTbyG=Lxj(Z728ib@ҁy`BU #qީ菻t0+3*9瓽a tgR .(>e26Bvx^vA_? вGPa\7젣X(y{iT*+ؠXϖdEoYrt`K搩)R4eUғ_xL:Ѓ1MCogyevdNܴ!Q߿ϡ]'VbM3=~9F'GM%b8i oN肎0@R qpUrm߆ Oj 7%b nՃ&̼{y0{J"ۋ*;;V3Sje B "?_-5WTU;.m Wxn:/|4sy&h&[nxyY.yMX%9gtQ9x'tx&,҉`z&S"97!= N/<=k/4r,CxZw[u7:y^?7B́e B/\G!d\d*/?ty²p|A<2ؔ'%=GAx;o*& x6db|Rwxc4I :EtXot] .M NuV\a2h@ 8 èr §@agzyrܒ˥Kg? ֨8oI_g!'2j%p6QiѮXHGSl`ݵv3E5B+UR)5` QߟKZQK.:G_RJynPvc y9-+b)'%uy(K+t `^8J<հ+nm-?dǢZl ý:fܱۿbJf*HA1nw"}3Si@}P5+e"ޘyx~ܦ7@Hǔc=N•Ocjs|^\oduywZV +ŌRr  Xz͘ޖn4-87uZ 8&R4Q#dt cGS3(w2ͽ | r*<)MʘJl^M(o+CzO.n t7NK`R=.4b*2ٰhڹ ܃#G*!G+5ݫ+~{z?Ѳӝ}Kã8Kg eRdKC"|yNjƕIRKQK M(Z'b/;Y`\`8J(J%,RMeC;yԞ0c)AYVhc0m*dJt Ì@ 6G'8E*>G^I2i@q6o97xJ8Aq:W\ mXN`'[Tw` `vv VViXfH6ߌxSVCB*Fc_Cqsec|iLubabȐc#McSUUtނ&qS#or4`L?&e}*Mf]RY7;)51MY|P jYe:QMCkud.T}stؙ)ѱ&;}UO0y)ȥلUp}ǍWvt/IYKv&uE w"萧Ig L )JpFۜJ1w#ݫ^E^օ#r~2O&9Hcəw*cSY6 $"W>jq^~梛x`idP>]!T?U%a"ܵ$gcZ?Š~η 庚/Teڻn!h=C;; lPfb%1)u8INOz&SONx 3%c4Z>ws*v)y]ߞ_vK/<6 Y'q4H̀Z[W0PK`N:%<~STe EyW/{1\JK>ͰP1*aN[1L0ɍ/1kTRWwfm&K8hwT<ṁEѻ7򠿈B"hlݝ؟vIgԦF [;s[D!]Zy9 Ol(2R^ī>0nrcIdeU܊8C&Ĺά^+_a%*hb3>[eGKu w]"2$jsrt Hݗ]X!k& v69(#[5$[)'>I+6[>ZuL[Ž Vhn6_<<(6qřōA{zTP`d0@CɖB.6kmTNpP;|םr hQU+'YĵUy,cqhۆX.FELtrxf8~`F!B3lm}4l58S̾T Q ]f \;Gr`2)E?)h9#>nJ/n$}x@|qvxb7:)X^r [>B<;ì=gj3eA%F?IDp>oGSӴ7 3;5 / Kȧ["ж ԴIOSIB-IXu(|Gԍ]YIF'~èwZb@mWLG_w9,me"TO\az^G'R4N香VyZtG 1G)*Foqst)ꢔʹid[[}(ydn)+a=221Eq19[/FbbSw>\E$RM y@j0*F'>Gpz*n rX7Z;{tpm~ȓŧ0E#jd`jWdWk/;nAz&% ,h6yy:R5_N`3 vH}IhbB;Ȕ/s-w[GrN֎,hy;͉3F )vdKԫ-L>EF7 2B\$^Srz=P|*Ff\4Xy꥔8[I&;A3){GOBocDEؤ> ?-OR 3}>xQYM- SQ_Jmde7o% nw 7T珆/Fi GYsyTkcZJ"͏[\1OӁHQ|sMZ.Laq1:8t~l6>qނ4p9>(._*iM?UTβo(KT_QKXfV縖*(l¡UeWhԟj(_kG?ɢ1 [H::ĩJv 0%~Lk@7L.DQ)q]b׼Cx>\ |=.__ʞ+=4(f7G15^ֺ5̓\Eӟ6n5Vd -^lkAIBKe3nS-mƻ¬ͷo1Wq uHK[},%^{O}SpLt[n*V5\T0A26P7Q[(r╊ZbʄzKPu]U ya^1bl35`6`+c2+ջg&B:{YnYz_K`|󮮄5>4r XJ{``08:T2 R,ET"Z]2R4E-m>a-V_G>MQ#|X?Ĺ#=QkyiDT2 gutl'._thUwVr]fp`Ppz>x'p2o7;+WM1ǴW{)!*e )c)|*@K,i:5aINW^qA]$ZҼ"<SR0er;25a4&Xkk_ 瘷\`qJm8߱x~љ%Mg)nGz`+p%N!slZaZ%uj'-InHq'OX4kcnL.m2biC⊌<:v {cu~Er[|ۮ}q)bB7E.ge.x`XƧ}aObvQŖ;rQ9b ϻY$ ()-jS<'*W'V[E]D͆I}3؆~q푪K߫  ^UPOԒlqGc]1&CN 4+~/⽎/G7}i^ם.UVY|Z@MzOadk.J& =ԸKT=.F $&uNh_ZNV6loEW0B})Ed6Qr#5͉gC ,؄֗Rk$Qw( (P|?qAi~Ga9U*Պ"ְ?J9%fy6J);o0iv%'O ;ĻL`aRHXVW97@&/70To"vgTm@ި!p |晜7e׊Ey<L̛ˌnWg6}uRnΤy_TX`k'wn(if8H dݞ inS!*g%S'ѳ̢Au>`7cE@MKJ %J؄sWh |09X'y&ޡ: )Q軎S[-78 n#V< P;5{cm6s>=q^&ڀ ]OtK8 GwAJɈ+Qj jӰ k8Sxׯjm{y` dx;_&H7uT5TxK 敂E_;ԧJ&m҅2K 3EPˍ7 d-ot{:'3cK " .g=~ HM~=4Z#9.G3(N{ntTf_n )"Y1>Xfӿ(?8XO~Yi 4^>BװLxv+_'VՕLׯ`}lݪ]ebkJߘr*jQ453͖t<?SJ/vե}+b-v9a ?6v;5ܾ7a^kN*--(?,V-nuk# hhb3.ƦU2n~x~ClF$v II״!{7%ϗb(BцҜ @1,樏9 މ/W,1pHڮ n  )~ĕk6("VoޘӱԠFʃ ~R ύ+7e&,(FW71$?.m,= 1Scޜ1l4<@(t9FA[#4Z]z(#)Y<\2[dV8A_!&v'yMÓe_<0!,##_?^+3A28$~JۑItOFO2^~BS]y7' q2պvcr90qEN!C[?nK\9h͍'bf\/m+j{`qD|reedQxSxlsK]ꗥU@$;K$\kE- "/&:'-{c<|6TaDclY]/,$F<B[-ܽYvf(UZ dPZ&g >:8ݒSCD{ 4L99(x^?[k*ͥR+V qlK3P"Q+Y~~EvvX3F OK>Jo {I f?qy!=/*&"HJyĽD7"YʥesTLe,]%]-Hu6t/Я5<%{Kz0x,#S"]j21+yrQ|5/>CpYOξv8a!w:^'ˡIdauMW5mne`H'd-9<4pc֑7!-Ƴ>G'`F^Pz/h3*M ki/[>kGi2~>2: YK6(L':⢷ @DؕJD&x˯{fYZMY0xQIt)̉<@8݂ Mfک{'5u*!WJn֐{iWcG!+/~lγv0u1y\a$Өn,R$J?03[wQx6!|_Yqʉ%bQ{Qq9(iRra/u?.GuXBސKCq!a GɯFviԅgdX;u'2_l[̪'0)B9INb]5գsr{*UdieoMWVV@n9G@QtI߳t5җZAWҜd2n'U5UZ+4dq ڑ,L+\ljJr8 =񋧚EiƆCqjn.#$LSrG!Myvp{X[fg`Ԅ47A!jEpVrHƪ|:@iq$^ 3~=#\rY_M/s4t#kl"0ݹ{j~'pə[}dD }B=)9{/Ҝo9W rb kXޛw_;&9ccu7҂~FҶm*pKj^ès['{ m%FRyõ{Љ5Aco?e.hX㦅:1j$?"7WzC۩;Q{3@U")M [Tr}nZǦ[FXÔ[W)=PVmS73dq2ZXL )𰻥4-g͑ZfJ5pZ ݁?}lxx"y`^i&&hb9e %@v$i{T=JT/kR{h#h(sp&Vv_Y?x 9 Vg+°YoE"0E_,2 7 fDy2VR1ߏ}jB/3Ӭ{S(isz#`QkxbB @57֢ԜJUgO|/IcxXa]ats."k?&LGd߳<:&B CW~X Z4@Q#P6KBl1ّٛ~)>aCYƀt-܏R^Fد1I +؋d;;WШ܎TiRn Ik1D`(0w#3cf`!g] sydU( 6ò]"h]ԗMu@\q?ޢ؂}XƘ6_.Gs>IOr15 @ 1# ŃXΈ+EXH ;7i_gI6FIΛ@紻|p 9oPWZ o$XBTlF|b7G;3y5V!C%-xX?Ho2G96WRњ?IV줐Aq*U.]8 | I_>~׻J@O\jԯo[*OvM{uVX2m{M8#Y:# U1O?qpX 1N u+ɵGJ%sQxJ]i奘ȵ?@?ȧ͗u?:'ⷠKx!\6,tU5ɳeo $uϝ S.bq]S`{h (ppz2))t"Rhb׶Yqd i*l-`cIP_GjuYvN fŽ?t*D11WPmU3D;T̽Ft7rI]@).H~j:VϊtHe$'eu Ƕ5F% 4|Z>ōV,vm-kƠ-%]P7"E~qLp)ui[Ddp[Sm N:`j6fX aG6Ύk7PTƵ2R09 dx6-{IK$Uq bS\M !F=sHJbIjv6"RpZ.n-6?%*C#?qiFYۃYQ7x~_\Ǒ2P;Ӳ=x6UR#˹Wx_P ,gݑ.%yB3(f { >Adm5&.̕r>"x/5ƨPh7B=S@% 6Hl'¼8OȄ|}A^%s^38Ϙ繖 if$p7`\S!Cu&ZՎ &jH~k=iD|a]ZdC`+i*WWje-ׁ)ފB(OE ))AԘ4 :6/rxemOcRóḵڙo:Cl?g˨՟s NU?( s8e'U]5ϹՌ,XC^g0MCW:)d|zAh 9FKm(x' b cYLB &3ocJ[X}DQv"Q\kUFlK0>hNrDGN>]p fO43) u=m8M|r-s\<'Ä (+DxCvDƈ)UBL>gaK輟ý5ࠋط M%ֆ|b oa4N&2|2+,_iةXXU7a852N.1s[ Adjk6o ?#N#`6|U)}1qHe{o}&m+;zSV A=/Oqعj}#ɣT_6ŧfc RN\mRew&\W|a@ 0ƈCw'zp,BiCj$w4ʷۮ<xtE}ѦDpkU(e۫Mb+ު=gωJFWҗq0ȼzӐۏaZ;^QAp?+Z`۴RFXTOa'X};2C~Ս5ƎGWil±"2'^(L i _S9mMJNuS';@jq-|%al6 L>(~lk`@Q{@ _djw&,mΠ>G ?-)]`n^'$,-#DY,IĘx鮊=BB^W CIK]"/@b@o)9T͛Tz&ysu-:0|Be־LGwp#쉂Kn(hrBWzx8bcRQ`LrV?v 'ODx-@[)vr=[B ȍyBnx($ {O'먓Z_L{Pf1rL 8!rmgQhc%K6i3iS*0TMaWuϾ%ßwwZskTZK+E򠺐;2AX&(}_g$ N>ӌ5mSΖpxO(~{|ٕ+TÎ$&zH\=/kD&L˯;W]CF`g&5՛>Ryj(y|AU6K72= yLL,Vڗ(p-Z--W֦ε3̓V#jq*-ש[hbiG1qT#cJfG">aط!.%<-}@'houi JB:n.ODX\WYrϭ++-);_'NJ&0z`NFjn٘~ 9Jc~~&BvQ?{Y7ͬOk#GRN Ef԰Quws'!!oEμU3m`gJfu1XSNMwTeUx"ObDb;y)D6g!ߋY,a=,*P+6gǟa|S&}^ $S NZhۜ`~Lq8{^<#`MDn[htwɮw/jnB[[溴,`Vx'zm6I,b?2ݱ v & j;[S_Sע4zUJPc< %/fL ŏ?*яTPIx%WH!eFW5!Ŭ gi;jWWiIj>V+۵/Y`d^  8 (٘CXkNJ<3L-_-$'8 \ж41]J{nY?OX2 XjXБAK\/in{5U 9_?H'!JDS4&5kFEԿD&tW=6Hp1~݃^Fdw/кK|]G}ɻzrVݝc=T ݄2:BXpja>fe%g|tsdiE3 6*E kfל[o'pL`Poq**[d>A9p8+}T_#` vh'oTpӃW73CToAWQ旸PzEu6)SDV^/}\L#>sޞY@󽞽>&ԅo4Hd Iޒy]4sTgC ();xzTγ4^o|Xd&aI|ǔw,p"@a KP)؀H2~o=D>T%KK#[,sm;N جl NvR{)2_G@<&|pgQm"2Uؘ+pNF2G7>³BBg04w$mm3$eTRXz .)^ *GeM'=ecaal_[!foqqRM,&z~ERj._éHܼhJFsLDLJK>L`(# lo`9ڶĥKaZ&,_XG^O}CcApBchӋb2юrhTd`(`EC0{ VO=Lzk~wVEֹ:hKh\2;AXb &؀Y ٦k3tnh F4𵯌K^P!;LZb?koEvcT_QH2,gߡMӼ3Xlpyb/慼U^F9)g8=imCJe'bBC@7zOjew9yRĴ~ 6>pdE"ї'%1KP $zaFo[QNhn\6aDЇ:J:,ʜg^rV gyÖAi?S4/n M/4r`͢J =^qjK#Uw)MPMG/MW+5ȁhtδJH8Hnڃ nRʈNX R9R^`lpK ^1Z憐=+CB=:|ټMq\-rh>C0=Ajߜ5ʼn-e6C6V0iu8BYk|T>xSg/^r͊d'npf+3?T=*aqHnҦ鷏<š."tR;F$&"ه)8 d6p!ꨭ _?X&EAD㕺Kp}lojTDdCl1A8⤄5Z*UfQi)ߡ c'YQ!O|'K&շ^GmP9q\IcRPQ[䵧+%H`UhD4CM3+ncJ2k̙Fjۯ_h'!+ .;=#BGV0].S?UV e<5jC;-) L\wgtS\CM&uʧs9ƀۣ-(b"/&<2RVtMHn_WƋţ*stg&ԙ6b4;uFtAf_N݄/+twCZU5g8b;G $94zebz6k0HuXFOLJh~wY1=wk"Ó'=N̫o`iz%tRP[Tyd cˑgJ4yuNfZ@N;[j_qTvy %huB?ؚ`! ׆^.a'7 -}qI=nJ6k/VA+[@锣3YFv: 5n|=O]7no"W/c!T+|seZ U"R^ 4$~[gTXvo jǤ-8"p4rL; A{ %*5EoAˡh#SB?t䋵(<8ձxmjWWX8?f7"#Uv̟ >X#vh>5sX}0dffO@/x4\TQМh :s~R7W0L'@J2s&~5?Aq+ؘR}n*CMumܴ@cCNrP]bB =@SX5r榑OOa&&k֧SssT 021z@ աY5;$͢襝e 6TG}M*ؼc>!6͗NAYJLf+P`zֻ9Gv|6^W9X&JsH'8+P*,H\:i$I#@suR"kHrCD_7XՂ&n l'U%$gŰs|kwN9ѹ(uLTU?DMH2%Hj&b)?AnH׋";?¶pZ݅j%gT . C 5iH"5KBIaBt͎ Zxxŷ+'o}1:Ӷ2k U}.6.* oXZki#P}@^n;U"~̝tH=d2Q+ 0l1 ЁKG/ͩx;KlgīFǡx`o^Yg/h{\.Eak[H7MN#;._m4?r Wɧ3/uҢXT4iT 1A0nІS.I O#X&d,?W*CTH: I~&d $ElS]b|Ki zc_nj'O`3Ç<3d]G\QR„h0![̾2lK=Hގ*(S(s?&X?6+@y3 $~wENae4h wR\ 04\nZYFd9J6{Աz$OJiq>㓙b*L%MK_P^N1hN?&PZOdh:g$?2)ŀ7|`Ǹچ}1rw벁75nƧ3t̘qemЪ!SC6[*9?HKQ`\4SD XXB<>#*[f[q y[AT3CO+!n]uzWwϕ`D%qk :1׻JQB˱7;gv'zxbӃI,0AsmztkByRaǑã $S:bvHGudGNb"*F͇Z)n*$ g]4NfMOI !_`%E#x+<.UURuu{3#Pi2z$_0mƼwn]~+qT8jT QlCA# ?\%Clm'|ҒqrsFz8ݎ!=DS =g[RheSR\dك`fe{TV)JMKKRa^x %x* uC3̫N N7(C9|}bj{f{"[; 3h0LYRٞI"Ai&N/ܴ$bxAq>r]^yUvH+Ԙ8)P1$Rj4b$g>޿VYؼF*1[(L1 9+ ]M-ύoqV&4wʆ|,D N]^@<&l.h\mHch4#>PESR x8Sdž8Aj(xU&TO!$O!i&sGfȡs@S]5{*o6Ղ> ,ӄ#K.AӁ㝄أ n.(#%-ŏfKHrg$rhjJJtϬp:GrKtF0Kl.>s*BO'-Jn]tjW}v,{` cգ|)/DD-ݚBIyi~.JŒzV(0 d4Og-ƣG >i8oWԬ 6̳ !md2uHP%v֝SiEqK>=`%GkVL JKZ:bl~˼)ޝ0xC}FJ[H]!5zˎԹ\&(FbݢLcm%#X9[Gdvf(S SW9-/7ꁢ8G!kvyLXpǼX1VL=[7kŽ*/*_j-k&'`ƒ3S+}V}-p|礈n pU? zU|K\0;0-4cV* bL0բB?`qܨ47/ooWtdz!),X+y__> G8vʍ-;;āIH],m5'HYf#St@q" Y]n(F"pW+I/PCY=\@#C]3C[inZŒ{Ӭ9Wke<շ,8f"">W\M(P8퉷^"yɟ˓i׳,ډ*k2yu@qcH|8! FzNLܻz^ҧh.$ ~%ClbQ[~3_ B6*APoYp / <og n. YNDҔrsu+#1KBJza>F\$Pqe?$z͓LyqT G=<atɄ2 O#_=ng>Tl-ոTN*P5_bw{jy.csm͢P<潎_RFVK5!tV aUxIkHH$TZX VH>9gva\O@,SCtu*Ky.^c)u$FƢc y~i7&r)5~Ls9X c!EZ_^1[ݔ?YсrչmȺGB*3+ 85r_Eq.NϮ/g݁5anů !A+KLQ_.ׂ2kc4 0NL[X^$x×ҩ Mj7Fdut”:G?`|1:7S˄3V3ZPe% .lӓ_ը-}?Tq&2b'W+VqY u7& 9c?'-tpxsooϊ:S" #zbgN>Ph>~Dh:8L4oƲGr 2Զg^8 .v"Sl?N8E]5'90=kޡh)2m1j>|{;uWs?/;7Q"{O-f#cq[ vNuVo9`N;J XDNxIyyfAӗWv@+r<lzl >!>}°Jˌ8I gٟyq)H5>4Oka9ȍɸ8y^ fo 3|k/ʽK׹J3yJ PSĝi2u}-Dж2J ~ljQϨl;gl[y:}jOK삽a9"$WPgNZ/^eKMh>09 omZnؖBmS 70꯶SU$mVP,-U Nf+ެ/ .k%4wO)GޗijسPWj5[jr81ڐ,|TN]1uCe6Ǫ^?=eԂĤvMZφΆi{fצ$aPy%M=e'\̓TZn3l; r.NTr}keS5u!ψC Y&3jWXg`+9v'nr_|ՕH![>Fo%_jt5DŽ"#T!  q/5}(`}@V1g8zw&z=L ,My,LcQmټ"X?P~O޼j^?%9` \6n=FDx @vlA|ȫ>( \5^Cm~} ߭['h{.e=(E\9hI7 N<b״? 7XvuJ@s1Y:^ffEXo` q[GǁDYTbgIS(iKݢ=dΐXն 3gGR}K:<y h(<#V|U]~#Zc2Σt#{,HcN+Cn"d.!vO( ^ \{d,7H$F.BZRGQKˬYyF܂M= DܡQBQ[vl@'SQd˾3>ƍF.W)ʸgxf[#`]șǓ4IojKt_e$Gat" WϏQ _/xJĻuNtB"?G)}N{/A6[}yM]V,8m]< zZlp7xW0*a{ [\Fnts7/J߄ƜeAPk֎zF|;'t&)dtB L"MaǾ–nQrl3byF삛1('U]!&"OI8ݹ*Vmee6h>T:4mWKJςkѺ)w!œn@OoH:\P!St 3ӟ8txtRث0؆v7v ۠zˡ>u4t1 znU J%bڋ)% W 05)( wx$R;7.q6ֻm<4O<HZժB_EzPBL~``yHt=`})a6]45#q8Ðkg ..vE=zĒr6BJUgLd/OiJ&_ ŷl[1uf>wCAt`~16dUgiujEEy팛.A-ʚG5t% v:$;˄2zpf?:+!Tx+^u"Ĥ<p@ÙbP4Eeb 1l(udUC}׮%ƲϪEFPq%pQj _ٞƢ,A0=SH c_ijJW@M.ѵ/d9ѓ.6),}HrR^cͪk`5 e8!ȼV/P\^3j* EmVrCwJw.qӇQgEA C z:>/ˌv%%%(ɉ{\ B!ç?ulR18${?pDV\]ƄL~M*1)`-.v  0t630Rm]إEL:ZN*?Uz-|'}x~^8¸hgLw/Z ݱxq$7ӓH.j3?I=aYj 6ϋhK(7 \"Џ4qʇ^"3Y򣗭jSr󤳪V XMh5+Ec)eS c7 u#|hrV`=vV<6w+>$|ˆ!ؿsA)؍Aosʆ $qtwr\" k\kSؒLQoFCXZtރZBsc_uq{K?\fx[ۛ􉂹Xּ2%{afVѻc}mF;KL|OC"cCGiՑsz1TIk"nԜzHX͸>9Țo-aCK]lCcl Ӎ N,=I?ЪCƃhhzkzbFNn& V+4 t.K;,DTip.ѧV9zSEh(;)Ys/Zp+ emVHt(q+5cB`7d\PHґ;C Gn*UbC7\r+C]rz mX 6\0p~JîmT]E]8+4NݼP\5alSuVӯ dzsSNu/W8xC2*q.x֚]M.YAk!|l&8l!{Fu{*M"a3\MbTpEB{p86U+DQ:@H0m͊}GCk;K̻F V wFra&NjDh}pJ`D+1I*t/+0撗)kqGȰ\zlj4쏯y4l @W;e8dDf`lYc/VqC4~!~x y+; ;L[aae`ۼ 4UYxJ-R5OFE!h*|1)Q$/ h[-/ptO_3d$?bK?$x2Y?q^q95J,v?[}MtEqWiyuyNv#K:ꖈ l§llp1L0$#ߑ(!9})`T~oYqX!i=1a'L=u.8O: Z)Z\ږtw^ډzW[wAA?>dm_7 -|6gA_PF2ȃ4HBjk ζJz@;bpܮZ2 <NoWeOjҖK1''p8a^4,:֎ͦ}WYd/䭗{1@NڛJ+ Cf.t=muq+@f]r+ z}# ̛Z韉P :9p[GWt_R_T.x3pj}PnDZ<9 9kf.Jx Z0S&Jq3@jWRKFE@p?'FrÒ'L(bA򟯼G^$mʅIv#箢7nǻQ-l>;fkN F˫wRpuwi:'D Gꔺ$S@Ү:lʹȝU&:l[D†dYsXQԽJ_7teRs &t#I?^@( Qetbadƕt{Vd`y/hiJ of8}pgc)jqMukKpx@`H?ۏeu:Za0a^Ԃb` Nnn^ރ@ep!-~U8wS?|X_)M&Z5hczAzC"@"HuʱƾذfY틥=Mp4;XZzǏ/Zcؘ5҇&@Ϛ UL`L5m4'Y3t/O:Z ֆ,*הsm`ʁiDN@w׾;ϳ{6 7S\]c,7k/kg <RxO! 1߿\Ek3zd 19Ej+V; k6OrN,GNfO "Q)g#[g>/y`+@t|XC#+]~2*;cZZ]E?vzn.zƮܦF41D)j2RYOϾǽy?6j~H[uʅP̗%<g5&3sƩF3ѹ0E^vAOk!¸ԫR*&EEdKڜ'jXm7pam\鳳 -z4=uwALcwzx/i|]~aQ3Q +jZFYR;Gyb$ǂ휧C ;B""|(LܼEXC؉=C`햠%Li=hj4[s3W/"W:_:&BE7Lv:0뱴9ꡕ7z%vpٻRءӖV؃ Ap'4%W@{PMg?|'8P3 &²+/۪brhkœ cga70Ramk o_ҙĝ pR/qgx@fWC ncnPsuߔ(7wɴ?Oi4'CmzDC虝pS~m_jě e#Jt|φ> TlQupܺkɦ/ ИيbzX(.ٲ'H&Wx8v|d/gdW 2w@!gApcW[([|%z>i`6(S%=#11cm#Xޙ MȲo?. jeKiy:̘`!lmtHioF|{PDc}ѦŘʋ!t5R|}E,gAa.W|hZ xdZv l͋phaJؾi&Ho'nk?zyƏOOFjM#QW1E?! dkv^@O YQEݡ>53)kMѬJT!|hu(|iR]E+"83$AfE`çBbt lx u*@IEt}DZŤIgZW4}ϻ m^J0ҏV]N;Ž!S]Hf22uL-WIb3h&k1@zb"e<\M%=/YXjW&Fߑ:3ԏQ&[.pzm/ r,S"Ds'JN[6~x!"&M6nm@f|x}M74\^3gV 6ƂBU#(m)`I(8ә[+e(¶,O_T:4f w-=(ZUr1I (:MPL"\K&%|=;+4a*yQK6QXQ03ϧNS^%B`$bghs=i_!fb8O`tL} (47脕o#@B98\d#纽]zyw]uE>yc X+\t_N.oN -ua^ZZaß[VBaၧXZg ';G(8r 4YT\h$p&)П K*Mn s!ȶM:X Cf\*,֘bͽW1@@X&! |';D_ mM@B9@mgI(0\B[Q&h+Y@+/T a@ᑵ ae6"Dc^X.mlrC&Wt 8O46;}z#fX$ g]{ nQ%׏! BoUK9Ŷo}-mQՇ2 @?e^ghqq2J1Wh wJ x-KC JS?ejҼaNO֠nuG<"cHXci[{lG  z -2䄲?0 &!Z<ϟl=[H4):32,9Ƒpgt: $h\?HּThEKDze& U|~0z-@?F]+lϱ 4~p G3 7?{K 3VݡR e 5^䌘/ Ӟ*ɟQ@img`pMJGBs12mrpPo;pN 4c(0g^D[2mh~Քqڸ{ s,422z#DW4QN4Vn@K(:dz8MM{9)`%i:^İNac`zOvd zuJw\Nmgf,ē) ]0\7y8䆭5X%]3ݠpX8c*F!&yBN\e<{;*1ѿku&wwmiat[Uhz`O>LiUT'Jvf)`{miak[\@]Ə ~#]נ#&Ap=} Teǒp-W7'T7£Tc/qsLC%E;=wG4]Kw(mM-I%5损J.<)`cGGR.Jx -ke,ffq20Yh\x-T|^/8s\T L jWi 27mrRwLml~"uSv[g %Z]ՖpF-LrfeLZ4ŞDVۉ>,*5Z1١;.'a5|jc"+DHфۿe&Zث  9&ٯde of`̑K#Q|UrηMqO~Zza­UJ8P PH5, R9ñ!_ws9dNAtbњf +l&B%1 zK{i@0 z/?~ 7csrۇ[6l|<P{l3z Ϭt7(d+,yOBEuXqGKb%ܖ:m~XN)Ǯ9lƬc"B>38# > T2\|Mo ֐'W GuWq}#}%m 6,_~uaU(9 }D涙!~v}\-ԂXPHT` 5żAua2 XXcw̴+xsODY&χ%?R#d}+bcF~MuLYh8581"zbvCBtSb^:+Mr0>E98yfrXS6-kcRɭ(z{3^k&%Ǜz|`%MA`C]J0 z.+#2 udy2$>8bc̿r{l]NUK."Եryn!sk>2$l_ J]}? Σs~hU2 ޫK :ZᣐsKaQsgn 6Oí@ ZdN`hͭsVr+(M[z[C͝B+)t"\"tw8piMI+Cv`vJJ_MiXpB9VOp.$%wCxu-0s_za:xDo ȡ5L0b1MRO,FEPtu~H, ǫX(3xiY8k=o wX6`EDK9#3}+JW7 Uޗ# ph<Аx^Bh[*Mҙw*=T9)1x,p}k|pgD./؞^22+l! ! / *Af+Zr}xf*lCgsX~8,"X$i$[B5b~oEc2i,u=Z ɴ1g'WP۩x'>@dц(AƑC)X\^/,ˆav彉\\BS,JIXh¥e'q/HX3huz;DiWNj_龦}}RyW!"?YhTC%!>H/<{ &[jHz*#܉^5/;2 ٶf_99gFHviwN0e%2s^wu>T5WibkUiVE9!ajHhic@~ )}t^Z!L ~91p#:r%)ЮDK7΋sZ9!:jJok6q_OUkMj(K׊ƕK'RYLD*0t;Apw"u7.6'Pɘ B! E+V4U`Q&`bbOarz6P `E Qa6enIQ;׺ok9(R] n0&*.3uoU !Ȑ/Hȍ'M 5E _d$vyv/;0Lsiw0,I6˵㖘.W0+oF{SM[g 28ޜ1"X# {s,7pHv|իzH|㒋^mo"ً'XByϟ8@KHd0Y*f 4AHDr)z;-~@7uw @+MwN5aO.5N(lT_P6Lfq8<ƸTX#MCxGZ2rR۸QD dQ*r'dzu q]έSl8Hwz1TNC52̕!Y L%~-sl7ei P3!<cspwI#~ɸ<=XYdͼIQ/y` D#t(Jq,27#^`{\4 jr[} O^1Z2{ZX2jT_ ˈb *}Ñ䐂|{Ll̐GGckuԘ}da'a1Mps3&&t+Z=V~˘x JVe|Q"8^lf#Wp&FQ =ע9I2ÞN=EAJ 2b35\ Kax2Q;e{&P$Ou`74>G|li}eou } ;ضM9&#A2(V;Sm7K qXsTh+l$D9OqI|r:DX65~EJ(]3p;4}R]'{,KP8#C7כn\Wsu4 ՞m+$jhVb%hhU(Z8X0I进\Z7 ?7>yn%VGk!.`;[BаwQPPVq))a OPP4U5g0ʐ _ҽv2r'Ψ?c"4 L!Jsysa{23&[ȨM3ܭݏQ ܙi:-?Yyw>yah*xhA')Ofqq@V&1(߃%t{^,u~aV\#D04u$U9i}JXbQ{ E Rو?H !iA7_8UA8l7ty{o|g;,3a `QU:/g@S 1jT-`|ޖ/%kGDW4K⼑Kڭ X0|CŌzF2idXC *)AEHJQU*1W;nn>'|N&~ذܵ%Y,e@p\y?jUS(1bvJ]\j* $O*kZQt!=5vP˕y}<#$=*pф7<CVqa1FX2SKHY^`W$H7YjwBKF{:! A"JMI3sCÇi|-Ŕa.AfU%m u"(F$| F5+9^72;kRe{,Ԃ״M@2=DT14tP!ax\ y>Qضܢ@_+u5kC+2J:į;\|!%haE0׌SWb_e&=H[`S`>=8BrpܘUQ34.i+A,vٞLo]-KIIU_ʣ%h@Nc]ׇ dpwlx4HA/9`e>U g^TQ?Hb$$ B"2'%ía$FzE$y1w˫Yiv~-6J31kY&d2PTn%‘k'-Һ>NL./S1 zBϽWשENfb@J<'ŖY*YJǕf;#|y&E܇12 f9Z% JKmTxGpuKl eK !7Hr 8wgz=Ii?{`K} IB+ZyK C"cʑ| ӻeN0Olr ׿(1 =j?P#(j,>ɦn \o^HATZKpn=}veʫ HkW"#8hK%ZuJKjVܟik=,vi=5>~ocN#dEb" 0hʚB} "kwFd,9L:3o`qW!O]с=QET-Yqrei##>\KӡN.K#6wv2cH\ORM~K\$t>+dNPF = $8Bn7ERX&|&LT@_\=k i—052B鈮ŰЇ5(54{'p 4"&X?`z=q -^E&?삺Jǎi׎qUD!gYBu(G"q~w&"S3mJ,_G_ML_2r]ykQNt9~-њ`l/ۇkU90FGp#;YҗģĮMc`S)2 S$BkHH] 5&wqA֍U?Gn[8V@ѻ|(svnYB*o^H9WS%a//ZiDܣ*)q'ThE.lZ3d\00W:T[q'X- RwK%z&>7ݕy= Yg [  \{B-?x:?VڳUr WftP;̠ n\#](-~x f7wp¾ta*cZ{7P ^/:"@i Ecb=­5b3͉{2 e|zgcYV (m|HԔy$&G,vh2!7QV-/pcJ{쩪$᫴7X']KeǰKāj\)C;y\I5%Np&r7.RNN+D>ij}RD1sܥ ,K=2o$57=Wd J *&OGz8[]'ҎN* }dF04 k(…kV&fkw% Y?ޕI7D|$AL2I(TZ>2{Nv1mQɁ'7& Lz7T3h^~j?Jcǖ\=8h;';Z#BE1Q%4i--*+gt8s"Kq쩿,!`r`6mY]4 1Mge^hC\ K&;M0M1͆J0MGvWXv%Hџ-y G>r=1~pn5s^G*`s2ӇGF:J ]#xK}0Zўsa*5{X1$]LTٌڂʊ̬4 Z]duTf&m^ 0Ymb-Ctǿ3I2z닠 η'h=yi/C4aGL.{ĉ{a-߯w8?X ѐˍ:&otSB#-jl"199Y(ȦBJm3\ə1Ϩ qj# 1GLcQ^IDI*11]TTs G%'?5..\*NS= GIQ9)RFEP.}uk-фq=2fk*K#$H8TVp2GnHlm @U(f[jb"h;RyK~s4`Z;&ycb'vܓp4_pٗIaB2 g:x%.]*(%eX Hm/%zX$.jV)?kEDrl2|MGYn#E1#wo/OӽSUM5,,㙳I7edEjiXaARW1l@1:1}֬Õw(w_ Q !|k_ Z,ZN,eO?Hg@`Sn8D+dL"hOy޼׾ 4V`p*M5B\0 %.8^Ru"Pg%֠^lh>!Up7A7r K^w^2]2Xp3i =K 32ގwAy)H:j/ "9POI#4zf clB~{z쥑``٥÷ŝx'&8"ΩJ` .~0k> 靿SER=Tqzū2a y] rB}O* i )@>_ 2:md6EDեa*tihc)|BÞcK潴潈},x`n6Of2H[c+La-nh s mx#f_HIςDr̾$&Jٶ-kI>,oDsWuO5 ](cM53jK3y4`u lܟ2'{04?g@~#,-s2KR/|dWdE֔cig

Qe3OLrx#!Ue2bc"I2QO Ӭ OmMk#1h/U1pp3t)e22$.]]M]oEfƌNvmIB2k=L} eYֿY٩|Tۖ\_!v"66ѽmŝ4Ho+VSc AL:ũC9ŅZ%qD^Uuؒ@ fcgdKr9jDX dTPgŨzֲOEY&w-,wUKQ!M8'#;-Z䭋W:[_Z;H~*HX^C)%0i̢zV Fē倵{SKcqVܗPV)+efP&|fyA5gˆtշh߸IEto⚰/T jLvk#+ EtUO~\D#W8=fw# 2{f̀5݆ k9R"ý{+bȹ<3ppd!6tYz+[8k\ex 0њe(7Br "pv=n `f@sgqD9X2@3TkHݮ%TkR IQHYjbKWdVo vݽ" H6czNis4^SAV1,NuMPX XuiC&j_pWGղc״F7KǓW91zp :>ĩ<VkPŹi>w"aF?[D^4 aUѬH19ry_|BP~Oh!,lתdw.^V8 ͚YV:|߰),0 ]a<ΨFJZg/j$`3,(CaNTeKZz3E]ǰvDJh##2O׊f\kS!v@y { P  tCj/DJ_3I%~Ȭ `e/=g1< |ݾ:YS+]-HuR@ BYC/NN9x`:_TZl1K\X` *x!2#h"Ӻ)z%w{RT[/+Q9e~ o@4dbJCڳ},>sF, 5F>*yY!Бz3Wi/[~7_wϽj)5u<{a_0)*Snv sDn [I֧c[V>FWZpzPu{~0g5 4Z+Xxq*w$!9͑-{lK[=L3NlBɉ~;Sq *3bHe5ZJmw.WS`kyQ>T֪r#O~6 N< {͚ }TiL2AB2VBjՆx]uŃ HlD[E=':Vv"q۱rmH2ZdG~yh| %d [ץS&WTÊߕ|i ^ԂsGtQ&78C)e|.7i$\Wq#;N8)n}X0 _QQƜ,dS4zK5z& b`9y4B&o.;2O7\~; %+e M"SA!)w@ȯ ip@cH)awy ?`e\3 /sZ K8 n\ntpJz ϳ%:: 6)l$P,q^4Z |QH`YckDcIa;q,Žh7;gxa'h,&P;KhXB0r5d#{/"s* l/\N280:Q/9Y`O$quV\|jR!@ 1с䗼.]utvM$?ȇ$DC H fWj?+a4I֗7Cx44)|df$UEMJe:`Rz-׼ZIj8ϊU3 Kgo ;Z@]eX Bs\Yz ([U&p݋_Rxͼ_ /~4sȶB_]~azԹbݱ3vF2q )xiF#UҴapTH!͔]8 Pr?m np.AO nqa2K.2S);f[¹2!~E<nMِ9;? yӸw2|2 aRR:נ%ߥMӁK 9̪WtU0 NPc` ǶT+'dqd [{fv4QlNF@[xRO+kg;ۣ32njœWCZ֬;ٻNE!͎$d?s  8oNW `ΫM`NLQ9vw|"zq4 YN|tGto!/W314zM Q[y8YOz~Xl)J"BցT5K 78ő/iѩ){hq.Dn/GWtZےLCכ˄r[k ~z-_bM;j:oOjFeRM)ޤ2D r ̟P^ El .(Dډ^a# WYgɯRkC5k>'#%}NEA҇أQ7mDhDQ2 JkVOY2`3M;p#jܥ} mTYHEOݓXQǗ_j;]_n5HF}eY#APuP眓L.I|A\0<:+BqjRK6]B=ħ5ݡ&v}ds># %ݙ֏D׫F T{jw{B]W*  F&̷⠯hԵ ze&JRݵVOip~T|>5<)шi53wuyyхȰ.%pHoe԰:O߄P.t|߷18='\(|wSx[2˘= MX𓚥 *Ju8<4jW SeFGS;!1:iW/xEj!oWxxu"!.ϓjNtbˌUo41qFR'+~ur!=%F~IO@HHnŴqo8Iޕ7ׂ8jĝL .\VKOpL|2ULL0, }|[I?0\T¯B' 0bp DMmb aR mgGtо%(o$Æ.D<on`] fy;З)4ܿ-+yDGU:1J'wb~_8 8 = ۶u" MnǁBs1fQ78^~i,W*{p`˶iC'' 2l^mNשzq2,gW kO!6ynjoj鳊7E`c(o|KlɿF+Fa)!>g4fCNRW)Y5Pa2;2A⢚3,I78hV $+bw9O-|҂>Eo^/<"M pjۡ7H^2޿ێ4()QxX$ U)9bHZ ˵4uOWה̣I P.,MX̏5 Ф~p_ɌqQs!^<y&'+VTDB%x$($:/uҏ2e0zGu-ztd>q]^:*Ȉl"'%6`LmT2wf?Ը_# U}!H){am_N3lx{_I"V>5\W=}e/ȔY]{@kb̊|+y~,F,|8vK8̂Y2؁ -:e&)j" ׄ~djk䖫:Xvv"Ա他cZ-чҷؑz\i-x2>VsDvo[&ha5It~Q2m"?h#\tEG~kIќŊ VyxO{vuxۧ%?rڨ!S nVTg#B!CkR:#z^+za;?ZGInn=/|BCMn-{Ej@r`gZ{tH_F\jL  |w, sVˢIz_M3oG^udn4Kl-rkH]< wk%,8̫Ps1ͦPui؇]#gogb+wZPO3ےg.뵙f+MCczyGMJ64|h3/:jShl_mћcA/["93/tZI3Ӣ΂-[4"K Q&B0s |`}W@0O0n߱t+4C-a- m ɕLyS!B}Z2v*,cUPJX.U}c 僙Qj6_[;79+u[<DBCgY6}l+ /zS&ax4d>i:Wv1lrM;<,A<滔\[vLla PՕ5nyg/+VI&y%ϼC\?rFbZ_LDhf6emzBM.1թ^ׯm'L\Dkc=Byѧ6[F+fL@O6mIT x3p:EGŰnZ,kx K D5QfyLqͅap71 @,5S+,*ovKu+P8᫻[ to"1}!?\bC?ļ"CR0 AN] -Wxfeƹ>UǏ-mr[ɨ7a: *% ):Xk̉džh2{٧MA|(մLCN'RvJمavop'.< ,ߪ>cLjdW<x_KqMA̓M2m-q,)?l^MAnԚ 1f_-,]5DT|DxsHD. SvhWu-@ZCh>wrxf<n N)Wс`o&ωtvc\ oՍ] 1mӾ,jQ"9lg󺦺Zꉢ}ɺ&nӁV CMn?3r4ޛSٝ.` ZZ''w1P|n]~Wkʝ RTJMM}ԤjU98.L88$:?z2f<,7´![3З g+V2)3fi-1ۗ'_.vgf3k)pM/#$V٣q}+J|I3m:S=9PS8*`=ŷ!]WQ2<ɯQ4{%Eº4yh>XI>n^fa֩܀_;v,|dYT|]Pz qm8[˚1Sku&6noWҳwź [y\E!AuvO b׵p%Mp:\S(xTBpqXRYq9 iS!~j"#[w~Lՠlq{,{j8c v*"1OՄm&[>n$4f\7+ v$<R2MI{Y'X9DU9~}vN'"z9$- WQBMrֻH7D'uA?ŠB)?A.޶ejAԞU\Z@Qi4GC$z43K\/49GƼēH؂gbkSnc+7R?o&[9K·' $̦ @ADUT뫧 Ю!P777Wv`B16>؇xoYm[ 0ړҷcZ٫.[Yڇ5`iS8(J"x2/|6%|ǥ?T~]wnƓ43m Q5V1[ɂV3x%=[ډ` bpRTV2F3TPGS-7UF_o>9VsnQ4$@AE ̝:g؞ȜG89&*LFVo%0 9 a@ ;\zvc|g-nh" I#Yɸ3yeåfq@0nP޺jVC!Cl^]\CJ!OW.U_60PdFmKRtQlM1'/ݏY*=}؛X@^|Ng`j'J})rQ2lI\ +4+ q{^lEuKCSƸ @)1/v }_%^Huzqz}Q)#31l1VXe(L{bvwcU&zUs֔/< t>;&F\p}=-/O$-s+=t1m K [Ą{ĵ `9m!J@ؠ@ <"[jB+= {|L`KȚ-T f`Ӂk@>:վPhz> ?{Ru zJ1LYqF~mr2p(OFVlbt9y`.r }LɽzU0qȉ Fw ϶uzyH}Q<qZ ͢tR(nlj%% \M_ /$3]j.D"w1 f\w{O2llV'JpW-'fL>>߮JˮihݰɊZA)׵1|bt^flbegOvR3h` zSyK|½[y˷fZSUu9W,.ַ'=LbMIOF:r:LeaJiڶLkx>W sPɚnZby3/tSnʔ+rV"4VX+܊Odd?9V |j:JM$PS@YheJp"zq.p<.qw\XX} z.oMv1L[!KؔDٰY-dW)x#4 Z7V~*κ!6>Ԏ RhzR# .8Vy-JBO9GRXԉęyet_'?kGM6H< _YU-3e wkVRu`LNL˩Y'C-m4K)Mߍئ{.T{hp9[m8%]mW0;ŨВR ?=98[b1mi\eou~K=\H<)c]Ccs>,k߀t&":gJRт\uH r31mX !AENtvI烑yk7\HN;}8y&bM (RP:\"PļZ "V&łK֝$W@0@,r5.Grn6;D@*B$RcJp_4l󭷸JqDO} q`ktQjP&t"Iu rJ]@H*6_fTVgL5_X$߉c-i~xata"xNq{46J#Dє Z!kkԟѸ/ kOUSCKqAOQĘ.rnI (kZMܸUk*V |Or1VKJn7D"  5.Ӭ#Xw_QuI'hP&W V]x*&JlxMKyTpZ!jUɰMۮMLUf?]A/fO?“&bM9UyIQe^:.q;]d zTgst A.A&ջR;ŕaT9<3ިRBI=]#G4J Vg6.B|A ct{Y.N++t9:(WIdUßT2>)XoSELzƅaOzŷdv+upZ?71X8H\* 8'׋Zyp(u5 @P6#s =T1k꧷2lkZ,E\5b_ȜFiM!6hɔD.\t[gHR(#u!'ޤ3Jy- І\o`|#$"cdSޕĎ hnI4TOB0]% :Gne^eqpYa!g9zT[#\Qp+;gys+ jADo=ύ_RDTZWjE4N3:_~j8.hwuz+9Wm==j(WF\9>ߚ:Bn<(YW~|[<XoHWۻJy_A>Λ+yD|\׾1vQhki=Tx88 e9;=z'np\0?U/;,[v+v@p"XA7]pVԊ&mrS  ڈ։"~68dQ$+>ƃpߐ(7}](/DY,҈LQrX,]N?Xh|h`h;qА`mSlϻ>\J@!AJ{;S^Ek̢V.fG˂6vyٸ|嘼^)s5!n! ( $aǤNw<8'1rWJތ}=zSw)Tsl %\]᧺U 䘰Sr( q@*9`Zd,~n J#*pA דcj ;p{A;wb]wQvp5ۿSxGß lcаy8nb|9ʒoɍ^HBmK+@6Zo0$-6mYxN)gU&齃WBés;M]b#qsᴷla ʬIQ",WKlj@lAz~?CX}VU-6#_sY"Exxts0 LްТMOfNqvuHNEZ%e^cWli;@v_ߕN%;kl{/1 N,K < 1Oz+[v_:M{6\︤XY:Leͧ6#TJ;oBYY%Aͦ#)J{3{KYeͪO8~^%~#O|Gоkpa-+=Ʀ~wL+;M,I<>Jdqc֕Gp{Q2] 滑BC̖ 8Ůq+(g#q4௓(^ {< h%lNX~$F%Cm]^pLF Qhifb$wK^ⰸ\K\̸gl$t ⭑=2:1 JcSo1B>\cMG`W^oSU[- Iﺭ>BD ^"Śix'&S\,b1FAp 6Vg6uf0iA`o3!zpEH%) N'iޫL5މ 0QQfiDf99YŶ]XQȘZ ~e?nxdW8)bCkwKXNeC6"rfJíd~LjZC4 mxc3?osL&U:@cF؝qhD}`8=I%$TAdj\9<u`f?7u QHmC:ʡVIV$4Qk#sS=8jKOu5+wbn;7ǙFsM8h ^ Y+̱p*j>nZɡ̮YdSVR>~1y%CdzU@yh`['b-ϗ4SS> #BHj9Q)zG{XoB\)"-y NsdAc Ӎ}e,'x׷xWp䑻(h~[6cgiN*+r4EbK,xbNAzZG&LF3b7~nh\Xm1NM_* I鈚B~{ ߀i,2B*@%ß6gmED=G)ti|/QaPE [NiHշ`˨lb:(`s~/_˻o%z4Y.Xm[9L䘫tWt*z6Vӽo~D7}ت"!h7"TTcJ9ћ)`hM2,@cGvw>%^1R@.DJ4iE /$uCϵVy>;AaH.4~uªW!n3B"G)\A2J;D %NG済>czUI0\=`d9a ?SPut\ @/R&!!BZW TUT E GY O߄sE <`WKZ i'XPyG坫͇{a+v&(hWP!I91*i+gYm:`H$ N4D|W@5b W ()΋cYWXfλ))fgj_@( /&DwI=q%GAobi>Xe1 s$%>dbR W"p,uL lרBb 2LJWU+Ɣ1S,^w6‘lY=DO|8WLU? ֶ%tǶ Mί9*` A桀p}fX?E)`,k5tdePKi.FwKht _|iS+8j`KCP 17)شqm j5eD,*sv[WDx[ (Gy~Ik(ױ9>A |I%BzuV;i-hP\ 5S;&݌nzg0-cԫ2_R ԪfYU@dߕt;)jCŋbTzTxⷳt ނ)빊P3(+%O2"k/$mԧ9Xo[ ?K?t{ԱCH7;A fFmFUir-L)tV@0@`5QK52rup?N7r`#cu<& XNk1Ki16!DieY6RfK#nI06K6ʸ$/HUZizF9eH.c4D.?\y9z4ZKS<ًW̶:Ii"2.tJ84!=#xv1̨ӫۛ1 x 춀F ,e3Dz+!||Bҫ/gN*A~LD~νOS,Nw k.|` 8wBH3z埻K%1[YA|gͦ>TUpՎuԱB0V8}׸E?dل $4BgZ&n5b}]43i> "Ӎ@"'8+AqTjhd (xm؍jZ^M?/}WW\Jc &|0 7E5槝Q/t8X( H[p(!&y4mCMSbnԚ5%SfT#^4-4Ĩ:d*;S+?p _?58$TZ_=#/C+U N;IH# dYoGj/v!KP?4Égi =h7i]ǤJK] A\Z˪ ]@᮫̾`; du5yX)@\f6SsN>|_M Jڄqěhm>/[iw$2#M W01JҜjM{1IsPnYI4N;LhDL&~ش pD\XBEYH)K\; Zi{ҎfWt2RS:o?O(UΆssB3!/ ,OIj m+8(Yऽ_%o+(^'?g.$NJ!+VF43WomQ2})xSMPC9=D#n8\tKʾXƏBNԣ][&z\|{uI)]e&@Ro`t,p{pqMOk9y&$v^:kų|f{8`6N٥ .צeĶa\=bfj(yaaʬ2XtO}>qBJ2Vwjcec0Om)v.ð 7kE!%kyLdmM?RHDjj-w:)TjL#T+`Ӳ~ri,)bћR==~>NWؚųA[''mϘ$IF cBx#c`.7bU7f% ϊ:Ee+QԽ2ϱbs=qDC l^t(T"v<AI* wpBPHvggCZ寓+>}2#Z75Eq(4Ү}-ശLwrӗM8NW8PJxwsqJ3e/ׯ3ak>cF)e-PB6ܥu eQ6f]5kC/Aɇp O܀ǯ̕'37J3D{m˪ͻ ë0-IO-dCBJU% =1+eIY¡ N"}#'eYa*ҁ 9@keJ6]딻,{-Ƴhé6C: ~sXǖw,PLd&{ SWMkFO7Fc )/ZI1F93DnHH>}uc"-ŭK*ՠ E>/Dp 9/W5,ާLؐۺ>pܖh.4^ã+xԗZ.#7wvͧ;YgZ,k;&Π,H9Q`xt+dH > q)8)5=XУ ,Ʊʫ_Jo:$M;g*7}m#ɏW#ņji?'$=kxGU[OOowފ1#z6ua56Z+rIwTYlma-_~Zogm[|Xk~eecƥ[zmy k٠95 <}LIϳ<ؽ:RDYYUm%K rO gb-`]BDZR,-7s֯ը"lso Faf ~xFZ\Ovq_ru+“J-2]#wB`=1vhlbp(*J rL[3q?iy,Mu^h)TƆߘyR kǔ6=|eicc\1u9sj |tw7>UlsS8(Gȵn&Y7Y=Ky "`Ec*+)ul+?)p0IQHerH%/I(.OQGL2"iRp0甏 P+S7oY|>yJbc*Wm[mb).N}"||z]܍-5+; jju*s[D(௒_ zNԯW-~j"^͙r$Q91s4ghREvuh{E࿎~xR=.ޭն˟NZ⁛s ׼(xv C\Nqf6kw->cC6vW>k o;=.ǂ [ (rmShS}HC:7&6a ܰ>?̒iW@X|IPBZQ[7n 5U.9֔&м4`L\ӛM6 2tC$~%faV X^u,Q'%My{_YyjP?[|y?ȱ:?؄4Spά-`:J8RySo?U;DH;H*c'P΢N0}b!vkǥk$f+ h 9=כ_ʍЄHbvT- J֌uƱ΀n8Pˤ5WT֢DzpF CCҍ/G{]q}3+Ȑ@M [;Us>*aрUMM|vaft~cАEܙ^4A'IF |$c. v~2'Xc&٣rE%B?![kB67ދ_TY*;$J:+ˈ/{&\H^lK.- 9&uB0>~j=qX*Var@Y*#諛-$ Qe+Lw )ǾT17ti:6:ßgZ.J %SY:-`j}l=t 7*5%*Ҳsňy@|),?$N5tk-STG^\ח'9~ia Z.jPT1@S1m9oi(R. [2uMh匰g ̺/ys yLW 24$r\>gA H xo@QEt+oHgq%k#mۢWhT>s:w9A(xN ?ŭ/)fbW<-&58dg$Ej0R՞z]urOoR"AV<so jjP>_ysd)|0 d'8.c;T.˭K7|5Ni<-ؓo:RT񀡠T/-TN;i& (?eeSQY 3EۮbMo&Z3m}QoT413(5XT0@*X`\[`o(n{9tWnOwҞoxm%&F5љ utP^AJ[>>pLT/Kj2 W`H ڻ&/M"f?]e$Ϥᇸ)5= }pU='@dlJ ڍ5ab5$u{);.im1K#AAŌ9h|5뜙`׿rDW!kؽ E9YY0Sg̮[J$FJ;b #wT\o{8Cq꣯>?#!4ۻpN͌_Ѷ~U/cm<1Vdr0t/ zzW'XQU_| N^xjW"cQ҆R5,Uf$6`'J4nm{ȽbU+ZPTx'zUD)*<9渣/9-+C^Q0P3 fqcRFeUXC4:2 ü& eAzyF)p.)F,JWb= %2PrZDUKa9ԶXd9A+ x|X)~s9*xL)1G>0nt^V,^llIt"(ݻ}@ }J_/ziJ;[Wo4ygb1`ځޡ\IrQ1K Ò@rl Pn* nۼv`];C.`\{IX)(RdI̛Ч)_\$:Y Fāy&ږziiep񿩯Sro6>&j F# m>%PhPnݺP4ON d4P86*t眖gTe0)3mw2Kɲb (m[_h(f^^bâaC0n( ػcSd"$f+%fOܹY2-ſ4#Me>'Щi3HIE>VI .Wbɨ9u@drCi.u ?Ic!8hmc[>;jHM*lgŲim€U/B1JNr_YY@< K 1\)6﹊JD\e`|fua{xB)5}x 8\jKm8j$7?9Z^ڹ. q)WpMIT=1+-xYĄn\o \d) n[F ɤ,l1t`4j7fnPbg4Jc.H*Zg򣪉ܷ+GwjRLAڐmBz9LՍS+BbYa+8WեYu4+&b'>^)`43L2H۱!Q$*R@@nrufy׺@{5.tA׬òPNe#m7~y eji*˖ciAspojh2D칸ӬBja.ό`FWV_}i`dT d9;`oȺ9`fWmjٛ=Bat$c*`fꪒS; ?u ]}+؃ tM[W;b294*Փ ZiFnL. !G'"V U|sD1GCjv$X] ?>f*0][X,?^z L6AwI`'@#)xH?(?.x71I [U`rGч1I {ZE 5#yܿ+X;I"h ^$UU?bΨ‹Xo2|J H՝t@Apʃ/)ԝCsE)'B: *l?0-k2Ջ vOΰuA$nG`B 䁤p>$rMv'xdȯڽu}0s CA)*JeFo8JV- KȈ#9G'\p>s~CW9uyeukWB؃X28ߋN P×f'q̴mV1{aՊ`HrcV_- ,>wԪ}ta`<1JtL'ݱ1Ɵc~ ^Ƞ T. E0UR])bַ]S-8+d6ʏG-4S묄4!xF@vB6 UG=\%zg' 2)bu=üyhwt€kr9.>MƞvԮrH= [VqRtaF 8eߟұ4Qɿ,%v!(b7D PqL[(J2ϠUg`(tk hDbFҵN ~N )F:Ϣ akh(Nx}ef7-FD6K#oTӖ~cDo,{(`xUycE@Oſ[N z =5ڵ,ޛ L/%nEظ&c3Nyt@g>V=tK3/|OW(&|K UWFYI=5q -)ΩwG`8WQ!% Өh1;Ԍ;M+#?Aqkl'GtTj0Ҋyv6*Gi A/PT|ڏ6~xU>uv}x+4k W%89 6s ZO˜*)‹v/X*_ 5QA )%>0 *QukxDwT#A:nICݦ8@cՄK (&gso*o͘bePg˾wBQ؄S U׻Ay8@&\i/ [oOȨwJThJBS%BN |+aĞOqiԒ𭚟5D{d'n4 b 2Rj#%a'wfy9ěXƊ<@reu0K^77~pxb ,u9jTA7}vZ>0S" c/ fLOI3:=96d@wY, ئl+wUse GLWOV'FmML1eD<ͱk,K&" mr Q3_37nJ=;Arl]Qё$7 tomqSS}ІlK,ƦZL:jւ 75\?d3(؈7UŪS W {,=9 |(a)f>c{úC`iWo,ܰ_ :"t!GlPգi#4ou O#:Bz{M ^ }X/AV~+"q?}!Fffv56`k/9M"so.m4+Mb pK)iު-_<=iE-,gGƥRҿ6Es׏ jU MWǗM@ XJ؊ S_%3<ӡΩFq%TiZ)+x~-:0 ZV 8uc"sU}xΌJ ZP L<:oꮌr7Rs ?͆Nd+!緵 5-x +wB$ff/jE d@0<,g2^=K^CMq$+^qwPUT:L 9nW a1!Gyi^Z@XeNA Ff^SS>*jlI`E<^)V >4?':1'SzƐǣc^3aEMkJϿF{YxrG7^QF[]x[.W'#ܝPvP[`,\&PA=nmɝ+|ᣥ'`U=WéUhTJ[I}h0̕?B'G*c#*. ہޛc!Yӿ:>9RYIaҥ+!9})|x$ګ?03?URy+p 9rq[S 'ءL&W~hr 9^oz I'ex[nZ,3NKj7Uy)lJt402MسI.T?F^EժXNS7ڃݣ55uIk zI-q K{_FxY7sn *#~\"S/K/NeF\0H.M*db/" is%\*b`ir}pT݉ nY>ϼ6N}\9mؓ 8{!xPo2F<'9w\s`>2kG܂&%aEVMKG~{=V O`jʴ/ҀrSzP>r/?K Q1Xl5t+Di&GO>ۃ><ǩMFh^jMNDW묂XނiJ]4?1ǶTK ȚxZr8-ӌY \to9.ɭ_vQ=,/IIbMa#,lҏY暢!HsamRDo 9R`ÓXfWcl3SEW2oelB/]mV,q ]mk KӺ"َ ` ,TԿL׉%}W ~ 8vB\}UŒ:7d3jg fOΛO 7P/8ڀ tsV'OjDGhћd4&Nʲ̮(~UWчsqcWsf5C cZqCOB2Q ]T [rxj _W-"~wymSo*bfg@y 莤N~l0K&5ॱ1Rz]`cOVRaPԿPB+0 *61 dH"d®.@3TO=WD:e 4${VU$LGCܴ*[p)dH2i!Dd額.׃D1z!t54{ ;ƾs1Q03EȽ~DcMHI`٢Y?0ޢ?ǢtySqJTrDQXܝ*y|^@u[H[,숙PL,Y>B7 ΓNDqyeGkZwSQ&dܞ`f E~@&YS7AI/bWVA6el䑽M3=_F)94_(X3z%DpNaZÆx|0GT|:(a A`hb9켇f,rC,=x@C;\N{ʤĜ{V$A>xq{ۦg(Z{Q #a>Afk-b1. ݪ:eUl O![}ʭ֭UҴۦpr[*C^zG6p_ "^v:h ?vn[(ޓ]O1-:YfEq4٫91#s4jsѢ>Vb3s\Ʌ Ml;= 3!ފ5{;iEp˼0F1b_h}MSV{cM:-VH'CVtl[7ɡDh&{z:5Ӂ6#fX\ ~ 7MCVa/Jgj᪤M ]?0tKq6ͨ=0(n}^i cen~ C[֤gKR[s)ւz1Zlz,&MJYd=3]E $Wg-暁u2G(vj֡m 2l9c0L~%zSiLJp8v>WMpJs+fQ(j }rMZ J| mWc ]5fyt i Z'w|rP"R=;9cF7Cx>hNh~q<k~[)b76Q߸dd m3'Y*X0$YLuRf,i8s>d]c խuHE ʛ4 D7XjvO#@~/MW xҧm*#vir#|U8= t{jZuXW*2(Nq%ֵyQ:+n{Cp/.0_"r)fh$>RH8,jh3,oHP@#$6Nd/|"y ʼni"vqSn6༲N?r}$l:zĄ[k:н  Պ]e@XwG(n_z sKfr+Z ϙ,ܖafVdu˭ojX8ǭ`r8\fJ YKٹ꽨qXiCK>L 򦏎6k? MG%',峡زőYI)U@Y&tb-#dfYVQ&u5w%_G1S᧔^nYqayqэN+٭;0 9Ha<3-#t'nىuƹdcL .elpt2.At[*Ky)Oτdx?|_3C'%JvlPZıU<8̪ru~w7 =4OvXv&P4}S;15'̆HrL!W/)ZMBнN6Zƶxt3s+b:]7`1mj.T?ub #[7eVI? AL= ]{;$#aĸbnWJVl[Ti aLO<6 2pM1/M I7:Ao_*I&/)4&{g`:#bɠ- yw@ΝB̥~gP8 Py=S[3~#a 1~*0G5"! ʜ㋒P^l|i{;jtEاlt@2*)`&:@]5nWay֖jnʨ~D+9SB]u]R Ҙ}|U8O5r֨ .B_͋֫^O$)d8#dosmyU2-I'ʞJQؓ]BԜ4b/O+ys#OhaDihֵcG*o {q={Wp݉ RϺE׼*ZߒU%'؜ߙ+q%ExMs ~<:zc۸ zuAn5l#vgIPr5Oi=iYqс0K9gBt5Uet1@  9~< wEVވD,4G-0L/[٩{2";߸@H[Q=sRI:}|y(-"ij@4GW` ӌY37,dw r3+aXg'h7l$P.% /WqˀLiD8!ЋsGVie!^em0D6.w.U6{wE]?WZn _*ߩ`m1 .*N[y`c;. K4am FiܬCi ` +c!4kzp %UѮG[sGUf"0÷B*} ?ܚ]U\?Ed-YqTBSL'y6O2ChR!4O@0[=QqV(s_7\>OQ8;9aU_UPTC?_F ${#<3 y\H$D:.Jĸ!5*H tv.ec`v͖Iʉ1S-"}߲i"-td.`Nfn(+´PoGK&#Ame9錹B|RA[s RޛZ.ͤ|WR@-'>sTZ )iػWsA/t",U=) u~2LSjZ4fj&bT'U#8֞a$: U lI=+͢b=. фs$>Nj(``V*aKjP 6W_im\d*jڅr[P'c{+E8m͖ =fQ,.+b1v'=qJ%#(lDc(z(d7bt3 0Z9} ?81cXجރrd_'4\RN2K:Pz|C&u3Ce=nm8MW۠5M7(߆XP LjC|+6b68HfiI8==QC8r_RBM"k}3'%p heF.)ͱ{#p'W<* ~uojSrۢBDUm4BdH8+,᩺}^_1}$ŇqC{OhrreM7U` ^|UudS(>:VbQk~Zw/&OPu?bmDjysbM GyIijv|7BhR LA A%k;엱}.es(Tz"eWAw$Ds54ݽ J#s6COZ3H-!nḩ'h-k|ۗe Afk _^(  8io.UĬ?Q8Xa.tEQvDwqcd3cDy3W":ߣ$y䤘$qNjGԉZREĩޔ^FYgXhv#n&d/-w Kk6pAmϙEm/. |d)\V]6j&L٘yG@o(3\cU72Mxs8RZxbg/a)m؞U` ㅝ#DV nODQO׀g VcGC.[Ͱ}d0vM6p:}rǿ,fc}fS/2jmwѽ#JdQj:~L=ܯlL/5Ł/وK;EI.4Bf\AZ+sA&geuGIOoCj˵Is]1pi?giYfy4=kQ%=;#pp(LsB8"ȅvu[ДGc!Y[)_GB݈w45Mrs1#F{5>AY[Fi.@ rmFpw=G1"VѢ)B21O'dcs!Yf$7?v1yT3:Kumv- !{zz/-]z9R d fWip"M!Ҷϔ-)t)<Rky)$F$$\m1~ 2:+^ؐ.Q,A*SYxq_Ƽ8 T.PU*Jaaw5+P0/'\4l8RyޙQMG@\S[RDQjzXKؑ:t>q&`93gm0ХdFiP .<:hͯW I8k2Bh^xvg;Eͽ$G t_bgEe0DHQ+D/Ol܄>x-diDC us"f'J* tیC֛"b֕N/o! uzi=Ҋ|Ie*gʼncija IEXԗL!&184.Mv Lω;5+p4v #r߼[JY*zf-f8M%y'31UT iGm)$;RVKbDXe񑚛SUyr,y+/z+Tp-ç+ƍ8ڴe7;D7fz毝.YKҼ /!jt,כHG4z'r;,Lfs+}}yjR" i$su{N3G2ЧW""Bd|//rݞb9mP'L)uwb+{P>4#"t"gJ-éDX|LANua,eN1Zq{eufI{@usatJ,د:** #Of#O+x3;S]X9oi~սiyXVSdfNUUҪZ=Р r}0]2Л;O& *D S8Om?)`A#"@kc'}^R(($~4}ksDgQMd aČxmtP=lXn]~{Wsۃn\>D5 +%Si`g*W\RƍUSA tQ2}Aq5y9O jt3Nٖԑ|P*OupmCHOK9fk:"!VHԔ+y&T@NIcthrԅj!@RbDLrfuP't ,T>-QC%t@ZZP\]oQ&Q&)+i[J6:)hא=S )̞z^d{O6MK%1}LF^Nے~%kVEջ6Uq7gEJ? 3zwqg8IJpft?LZe:D3>1y }>铣HG| bwv_ X/&FKA>Vc/u:~]yi)$Q"E r$=I#nylR>`/yx1l osxȟ5Zi82Zzw\>\JK}9R|Ia\dt~j̡Q hWJM`_ 7Cy3J 9:HѯTGPM(\Fjm VlEvR1## #-S]Dį\qDJ I\~Z9:t6%XpZ(}ӀBl.c׫Aڟ H7_+t(we"4)* Ḙ'$qo#W"AW[: pMϹf=:6Ws)څ#N  j&K(W8e45_wk z˧_3JH5|$ Ba[Anwغz8FId0R:SzfX?p(cX"LLitlpV lw8rѮ ʇCZڜeغI3}dڥL^H؝m@3~COȝWI_Crhmz萲fЏ2:Yfp<[N$ 5q;F,aoS3V,/,&(;) bzB1s玃Vp>9 Z0[o9@@$ƛ{#ǙD^ej.>j"CX[D#' Ce+6ꑿ\^볣]^o2>bnnJȕ/X4K}) Y_e-[_ |O<\ >ȥ):gI=c}yKDlף 9u}FmLu7y. ,Qj(f.nRfZu6^CZ^2Pi0QJe,1;^EfpZc՛#rTHGNG"L_֥8)UILфga#3ؿfzk} ) G7Mɏ20<;P6ѻZ-#\wtql0n x.؃;@{ 6N@L-z]K_FaqܣSHw>X\#k% ]B" 6IA0 } Ds{nL0+]T7Y8H^ΪDs 4bԞCpx#=n^$]-iMûЌ ]#jWfxD3{{iLf1gӸflxx p'ſōܑ$f KyRj#00mG̫!~#t Te ۈlҝ$tmeۘe>e` b@dK/'m>1T@jeJrLN1z3&$|Iѳ.3ލڈ'M\XP3`yuD£T\~:1{З\m0пqqT३B%djRNYzi {f伮Y@" P%D>Kp0x'bk@= #)ݗg-M>BS)BAhա.ul5r O\T'ߗtrZE["̱8*#> CnO3wH˒L7nLvOم+~Sڻ[$Ad/>huVsu=z{Du}{eO 5QVWyly6Y :UT;UZ4 <ȕh#A$*Q =m'm9 )O@ME&Uu;ۨw1p<#2uO5߃I/t`.C`K)eHbcW -䗛E&KX6$v1pX7ك4@УtݴYIU},b xaD4WO&FK.՟g-ɭBhj;A-P!>tP)t;3Oaxq|fiiAy(?)yʴ5?|)#kLp#ﶂbhh5-ks֮Ea0_5K`3t<SWz: 02fOaUv]k`ޘ'gZo>CvDϭQ3B,!0d\.?!9|2Nvڊg y0fsqmeXK[RR --}G f>-(LALìDԾ!ujys5l#֎=eU~q6̀kd X`;y{,UJܻtƺFP z&L;eoc@'W22LOϯ|9GXP-UZ~~)9Ib1/?rFhW!܇$ _ ϑ#!1Aq<͈= cc?IwN!տ(0oޗ*X)M |N 4+ϖ ;#<GYU>ϧIœZ*]g8q %y +ek'fիQP OǸkW lri,tAW-RO[c5gn vQQ#7B]tAx[IMWpjr6YXg#lsc,:PLlnu;U N캖0vᇷVEm{1~ e9 ?'DױC#TA29DA:2g'V8BBT6Қ.%6m':esdaL `-g30}!Q4M{JuW-O .g[w]= Hߧ|F} P}h~ݍu EZZ෷rhՋ?VVv55>Y1s~ csG|6X,_07r44Q8Ir Mu:bAA'b: HW:fˁ\( "S{5>UAeJ%p?"剨̨\zx cM,ZYf6bA<L z:?o EhXHo2X&`GL'"͡y >C"ފRb&c Utj;*TÕèc7#}pMuLݣ[W~, ~d^k3Sf̨]Q꒾9)؋?hP4}ЋT6N!6 O QMd1gp$[=<*F+ ^sKu;r#:js~yb]sQy1ּZ0`9OL AѸAi{;̆etYOƭVF[ Z48Xh[w_ 7 "Mv"R/?-6@ޮh0[:.!X ^cB1ȼ?vke1֚NR3o([f;AӃJ-ۚyLuۮN}-$%~J=HhNw΄Úq+92ا}6 G˭]"Y|rwhg]%{r (q;)Q_LV3IǷF9Wˆש%W*p0!#ѻ3 4_,iϳ!G8it׵T/00E#h NUzsQn^4ڸӮ LCcq|X+{𹀗٣BJ>I$ki( jQ ؂IH.ǂ:IXoiPaՌ(^nk*SȨQ^^o tA<%.x]Ir>Wa--R8>5c&{L"W>,e8X\◮Z 7yC[A96:op('硅膬Al,Sm |Ta)b=Gm! bO}͔;Nb@k hyIȡxo=4b66Z/q-?ёtʄ#!c@%΃]w hG?NOCTM8/,$blai"󕪮8hɦI]z/@f }57?_jU3 q[yΎDҒX' KSf`1%Df nt MPr@>5m Pڏ`*2;D~ָYו3tnHK6j(k;C{,®G"0Tj>[sΪ$40?e|g3gDmG(%o҄`PT h,mEϝ ٢E_4DCc.|CsGqV9 v.sO'?n|;rhGL۬!p޶B`j=áwMz9D{ٵ-c-*2xC@`.Տk>u;?N ݈i٨ˤIfЍ}ɉSN:!S'7%j Uڞ&&d@F_%(JsO醙1/4Eo4-(Q&C}yjzy<%35)HE\/IO6r1Y!ΥCُ mj&Ʌ0dgP)6?uE'XpTȔ;C`(M5g1Dڹh8♉v`؂U_gۗ]:Qxk6 nv$?ffejr}' %)dhD+miz}*^_IZ(wP)|6q;;kzaIzX ߽]rt-ScLY~ʒ][i rO<#NГd} kj=s:}0g=(ئjG!t9t!WBaMM<ؕXԢ26z!vSq 2vƚ ȣgOI:;C7D;M~ucsλRaqg`ijvGnsFL}.,nSqslɝitHjc,vf[d-ɱ=þ !{&Pq_;7߈W腡}$W\C)v落{Z7}i}*K_@ s)AT* "MkA|lTJ8ZyLGRYƹ}̱C)])хnI/tتփ(@iH,kd5h~I:_;-aKTZ>yϡCr3g!~'`$D8a34BZ ǀO,+ҲM"%V?M7x<,١*|zu44lZHk,k꣤tBdϬ`;N,D a51߭8BsJVYK8Op,*$*⌃G}Q'HrqW#@~}C66jxrnCToin3`.5#mky6\4 p2qh~”÷IsL=Q$BK7ܮvGfcu [LrY#!Դhxp&]4,&4+7x+J_ aqH1Bm$_#v,9K 4|NS <~J $,C 1S'\PZlEY# c-tU6;XR "PIEѠ,H-?riB9R8֥A>8Ѡ,a&ښhT+ d&*Am_f^ oh*"t㙅",yˌZgZ \'c}On4F)_u$ϊ-ň ~ f+9g#9}Øp n$.V.{WKhg[c)@z?` W1_=߷Lh t2G"<(?c[a9j7I7^a[]J.ڔy{In ۔0`⭶ah)St!TAgIq׈BZ l$U) E8GT]uFv/t`vză XlHXFE4h s1Da-e1Zj!hI+o {! Zvp,M+b~<~ݛo##HF,nME-.V|PzSe֪f 4 vێ o6b@Z{Z-jlݒ*VTLfܕ/uk m49Bf?!2.]δO2}ݤ`-r 4MM-Ω&χ؁Ĕd[A6z AT Z-H+.s_ ?CH#r,FbT\R6\JJ` ԔΛ@n59"jK~e,N•E9ZBۇ$ dTLaNC :PJUmceuQenhʙ8/iVFŮ,J{ݍB & n}0խ5yU籗: 5/b@ Pp&9 ցh-_99/❷fC?]uNqro7/qTэ( 9f?큦E%jdOl(yB ZS'Bl ǃ;հC^TƄ/`\Y,78nt83L7Fu 1n*sǞW 0y`t.䊖Ҽ(R&թuЯ\,㴁+G~'>;~__hB-\xtF{8ܷme 1T~KKNDc(heXL JѷS?>2OAP˰nEʠ܉K7(>d[>a.wLk+g2%r%Q.:[үվ\ۤ$%YMHP ǚ_-<*2.16YPcIuB34?x4_OuA_6=xBg^C`ǥ/>jw>*C芧`3x4=4ˑEfh'6 8{Pu"?wz;XlڃVV-s4x@FTfFۖ)jor1ch& G,^?0 Wi #T41DR.SDҙmws^f2Y-QsGjF-7?yk1=.X:\o/ jj?u%тaGnX2}|FWނxV^!>/kM OxI~ T qNպm⏧1DǺԚ(|;ƒd ǩ|!0uf,[ũW*\nχnt&yDF{'4x`0)w9 Ob{ Z|O΁uR,r gzh.k .hlo`jjN!8Znfzk\wSTb6imv&Q98vQɮ+Hk;ݾF%N[ xikhGa,,71퉇a[w t~E6iN#N9E" IiO1'Wo=GԜsΑPAHŃKqa݂ Y_硎yziB~{+-ePYܡl062@)N[x\:@YS m#gJSZo=&1Y*%eL SnCs #A-S4}[]),$|ԐCH !_\^tjNPuM!<ׄLSBj1">]4TtQ̔2'w6mEU]u'2=|]"=[U^]8+g +s >BlB U4eȑFS$XwTio .$umbm_ߘ7(~)bPXu왬YNy(4HGY}ژd2P3F\3Ó#=bjkD5A#흋KoOhGb!XA0@ JXڞݤl(é%k{KUMjimL.:%LCT_s*0]sdK .Ӥ' NvnOHRL#ltkkʐD.]F®n06v-i?xgy ]yw7"}Wk?pm/qC[ߪˉTlc_L]ukG-خWt!"/Ti8OgZPj-+3}P%#owVҴ\s N5Өhݐزߞ1/ɨ 6*2%-}K҉5]l0>; ݸQ `dH^̌ǰRBsQ|6˛]r뛺} :; 80I<1X%_|# 5B;G A2 aGQQ\:&9|ۏy[4˛?C,BY])22K$z}T{O^W$~nQFn<%xi+ ['_ $=ƯPuۯq%M6wvx|uGcQW˝6_TVo䅆I92gTK^"Gs:Gߍ * ni+/s)]L9w$y-+oۘaڼpj?ʛEUM,nAhO Ds,1?4v1YtǠN ЫdfqX ms%([*Jc[zQlQVV>(:}㑾ϐ L+}Jwsqaޙ%ZY$lVa}7^Ѱx$6#m@qD7 z4 \C>K~/ ro_յ+21pS^~tH4ǥ" ,W XΉ *^1ұ7NfyFH, ٴZ>` tI~xf<5}EڈIl'"n90I }Sr$ֈ6h179hu[C##{n 4#~iڃzfsrq)ND2.1@ \>d|_Zķ5s7>!BQV=P ʹ'~5r}M摸%UƇvU {Z1{dB׋1$ʘro,U#kzՇk['3I\]@yЌ_aZRߗGx:0rdSjj w)KΞOy؛;nfǪ߮В)P=Q3VyyEӔHsL98$!y•UtuՋU^ zdYV^[6=Bd9|(;Fksg YX>r~twD0.W&M~^Xtn4{PRẽ3@B d5K:Vx2Ъu>dN7V m942vON$yh{\8S :6 6/m)̏1i_X^VꨝPR+ޟͰ|A*p,m:n_br- B p~رP, h&7FY~j%f kЯI Ap}_x τ@."x;{8vMswj;um^G6ۉw\Z'Hz<>㔹(SL'q>EX..i3=}~bEhh,Vџ7VRۧUz]HFl ,IM(T[ΌJ*M,*[PFޢU# Z8~vr ^/圙W9іK;7tT^OAo /l o&H$s5v1_hX9v!j(OaGS )l#rT?`ֈ()I9J'tDZf$W1 6B.`$o8LB8΢]tkplW|cbY~ J<~k!#iG3%~X68&BvbMs.%MCՉDFҦXSپ55k+Lg6Ww?dTfv^{Rfq3IG|ϬkwSϫh8!.Y?4: |ۤL2{79]VPYw= &q 7kz@C6}8n=p)lU]b45՛=,sCGW$V[!L|C*w=cΔD|D fm߂2G3%_QѮI/d?2Վ6~šl A(w*5Ւ')漂XNm&ꅿ|r<7&5x<06,}tFGSiVz3}3[lc( X3ZW\ Oeso9$8@Y?IdjE 7PM 6wwdqfȆ t; .t^o4/}(o}ĞIlK$(KܲyWLZ)l$C%J9M&m46' ^&j| p6ĩ C0܂3j̀v'F2{(b]8IdλUE,op/_cڎV2 n _v&hPFeզ%d@w峯8n$V AƈuC(rtO[*x# %'$ye.shΌ^n6Ni Z:pznDύisQn -7+9_^g7Wp 1OyeǁXq#ipfzt =8Afec0 \gz(p7dx 3)=Hú Ұ (@Ypn!vS;ZWIC}<ձKGG+0n EˑJϵf*lbCqGBM 6xªc6oңAat*% &5::a!4f v{̮$粟{\P;BZΩ?r=ӆT]QսYq V`l]!F3կSވO[rGk@Ch>n  I vϱ5e?l )vM Q^Ş1Ů!J #!R] i]#.2 0ӣ&(- _:mduExcuXw&fU&qY'oicDY̹ #<l󖲜fxA:~,aU=@ ׹g7󉁓V%yB?I48!ڇxHطoЋv]l!w]J@ikXg(UwHGN=,#ܽ/"Fyj&ʪCtm瞈t}oWM&;S"UL4 V z˰s >Hidv懡4 %VY-WȕaX̖k?5˝:*tm2ߟi9j6.Mp @ÑwOABca@DjSQ:Pu2pF!y-.^yG7"W%4E +ﭺ\ݤctwU9s oz!{7D0RJ-\aCe8%gA)i4.&璟 _ I5{lX1οԛdpwI LӁx8DfqC8"Dq ,A>'DB8]A+H0蹷͂zȗ~HeV$/]3VB:,bf v~jMM'}Ӹ_=m&Y P_O5^^zF6V*՞?Ш~hfy+[P3[@kH4wfl|%<82h5<.Q! %(](MR"p]kImb9zĂSh6&r7 8#*-9"- 8:5@^Xw%G=˵>fU 2wzW/ Sjic7?J~9z̀~0Ф=oeVzAʆ*ـ7(-l@Xnb۞N!t='혵jcؕ!> ]nKj^ŷVqwWV7ݧ3N%ZI*DmgȲb](tJcMO$/Aa'\1׉W+B{돏HM'܌d:A+󸴒.%w@/꣆% @|n% ey~bI` DPoZF;l0vZvÑ?i$s+GWWjk%zЈ9 "AunFF7ȺW֧q:Wޒ`5 K1+ś9RJAllxm4iË"ϳ@@-04JE4du,-2~%ª 1jM 0Yf2DyҦh4:imKdaIt:EM~Ϥb lQg0Ę|?`gx)hEJk;a]kVp$[Kb6eE98fMOSatsf`  Ol*xGPӢpSq, \.0FM`:֟ 6B(^+EN]Y 8?\0҅ˀyŒ*4@v:#UńK/"ˑ `"j *qGj>_H?x< M}lZCs:}c*s8!HN`=@hX:%Nj"|l\j=BH~!)SŹfKH`uA`TI ޣA{Y1&#:c êEa͘ą?{iT4VƜ1CYLn 8j']kt.B & = vRp4⦉~.PqQxQa"g&$uծ4P?Æjrotv2M̕}K'J뵉7sv3Rk=3b?ž ?!BN4Bŷ`P(;czE/IYUr ߟI7.tt'۸?ѱ1OR^<5%;KNв`搤/l z)ទ [4㤋FN_r9Zn&)jǦby SL"#'\X٬ԘP lS-9 4luM{tXr(p͉܃kDۯW*Vox h+XyO6!2N$r'k7GCk9 c[=bTF\4dV\;j7]BeD;C8rÇ4]}iszt^ƈ>T~}cW2$Ff{f*]y\ sο(EYۻ_uuЈa]n6B1|Ƚ& wX/ji|||d;ߐx-%$2g{v݆IXyFdnS|2 o>.1)oJpN.JP.%;$!_4ݝpdȓSc{B?Ao8\>~8:|;T#7kn\0؇ ft3IdQS >dU\jl 4§/7KWAЁȑ[>;@|RYx*͗^ŲLSHQ ˶"L> )|@ڕQdW/)b fOw^%]q@ PfR9xς1RYYNR/o'>Q:I&Dm 屽FgɾpЄL T6j0@ V-Lxj64=Ou,~Rҭ\?ܔq$ c.E|ewxWYD#p_#zFi|y.0He, ēL1aY I HƇ>]v xd+X /x$M6بXf1 mV,B&{ 5% YZ