openssh-cavs-8.4p1-3.9.1 >  A aAp9|$CO'ױ[W~n v,C;-qKq8jBh߰\;D_%Yů1d(]_,(>p>?d  A 1Mflt    [ `l{  (>8HX9X: XF_GtHIXY\]^bcd"e'f*l,u@vLwxy zCopenssh-cavs8.4p13.9.1OpenSSH FIPS crypto module CAVS testsThis package contains the FIPS-140 CAVS (Cryptographic Algorithm Validation Program/Suite) related tests of OpenSSH.aAibs-arm-5&SUSE Linux Enterprise 15SUSE LLC BSD-2-Clause AND MIThttps://www.suse.com/Productivity/Networking/SSHhttps://www.openssh.com/linuxaarch64aAaAaAadf911f06a65e1ad3140cc3d947eebf1831a4f236c73aa4bd1c1887cf45007b054c643944fd2c838576b7e4ae4f2c97bf2cc0c1ad1ac909297171e1f920f164b9c22e2121c10e9fc2aa4c53e42bddbfadc02fcd3ca3c357c7ffe3201ac518aa6rootrootrootrootrootrootopenssh-8.4p1-3.9.1.src.rpmopenssh-cavsopenssh-cavs(aarch-64)@@@@@@@@@@@@@    ld-linux-aarch64.so.1()(64bit)ld-linux-aarch64.so.1(GLIBC_2.17)(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.25)(64bit)libc.so.6(GLIBC_2.26)(64bit)libcrypto.so.1.1()(64bit)libcrypto.so.1.1(OPENSSL_1_1_0)(64bit)libcrypto.so.1.1(OPENSSL_1_1_1d)(64bit)libdl.so.2()(64bit)libdl.so.2(GLIBC_2.17)(64bit)libfido2.so.1()(64bit)libz.so.1()(64bit)openssh-commonrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)8.4p1-3.9.13.0.4-14.6.0-14.0-15.2-14.14.3aA@a@`` ` @` @` @`x@`x@_I@_@_@_@_@_~@_m_m_cO_Z@^3^Ӝ@^Y^K^B@]|@]X]W]c@]c@]c@]@]Z@]5@\@\@\@\M\w@\v{\j@\eX@\eX@\N\J@\I\I\?\8@\-@\[@[ٙ@[ͻ[@[@[@[$@[$@[@[@[[[0@[Z@Z@Zľ@ZZqZhu@Z]@ZX@ZWQZ@Y|Y@X}@W@WW@WV@WL+@WH6W#LW@VT@T@hpj@suse.comhpj@suse.comhpj@suse.comhpj@suse.comhpj@suse.comhpj@suse.comhpj@suse.comkukuk@suse.comdmueller@suse.comhpj@suse.comkukuk@suse.comhpj@suse.comhpj@suse.comhpj@suse.comhpj@suse.comdimstar@opensuse.orgfbui@suse.comjengelh@inai.dehpj@suse.comhpj@suse.comandreas.stieger@gmx.delnussel@suse.defvogt@suse.comhpj@suse.comhpj@suse.comcrrodriguez@opensuse.orghpj@suse.comhpj@suse.comhpj@suse.comhpj@suse.comhpj@suse.comkukuk@suse.defabian@ritter-vogt.devcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.comtchvatal@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.comvcizek@suse.comcrrodriguez@opensuse.orgpmonrealgonzalez@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comschwab@suse.detchvatal@suse.comastieger@suse.compcerny@suse.comdimstar@opensuse.orgpcerny@suse.comkukuk@suse.depcerny@suse.compcerny@suse.compcerny@suse.comdimstar@opensuse.orgpcerny@suse.compcerny@suse.comrbrown@suse.comjsegitz@suse.compcerny@suse.comcrrodriguez@opensuse.orgpcerny@suse.compcerny@suse.commeissner@suse.compcerny@suse.compcerny@suse.compcerny@suse.compcerny@suse.comkukuk@suse.comastieger@suse.commeissner@suse.comledest@gmail.com- Add openssh-CVE-2021-28041-agent-double-free.patch (bsc#1183137, CVE-2021-28041), from upstream.- Add openssh-bsc1190975-CVE-2021-41617-authorizedkeyscommand.patch (bsc#1190975, CVE-2021-41617), backported from upstream by Ali Abdallah.- Add openssh-7.6p1-audit_race_condition.patch, fixing sshd termination of multichannel sessions with non-root users (error on 'mm_request_receive_expect') (bsc#1115550, bsc#1174162).- Add openssh-fix-ssh-copy-id.patch, which fixes breakage introduced in 8.4p1 (bsc#1181311).- Improve robustness of sshd init detection when upgrading from a pre-systemd distribution.- Add openssh-reenable-dh-group14-sha1-default.patch, which adds diffie-hellman-group14-sha1 key exchange back to the default list (bsc#1180958). This is needed for backwards compatibility with older platforms.- Make sure sshd is enabled correctly when upgrading from a pre-systemd distribution (bsc#1180083).- sysusers-sshd.conf: use sysusers.d configuration file to create sshd user (avoid hard dependency on shadow).- update to 8.4p1: Security ======== * ssh-agent(1): restrict ssh-agent from signing web challenges for FIDO/U2F keys. * ssh-keygen(1): Enable FIDO 2.1 credProtect extension when generating a FIDO resident key. * ssh(1), ssh-keygen(1): support for FIDO keys that require a PIN for each use. These keys may be generated using ssh-keygen using a new "verify-required" option. When a PIN-required key is used, the user will be prompted for a PIN to complete the signature operation. New Features - ----------- * sshd(8): authorized_keys now supports a new "verify-required" option to require FIDO signatures assert that the token verified that the user was present before making the signature. The FIDO protocol supports multiple methods for user-verification, but currently OpenSSH only supports PIN verification. * sshd(8), ssh-keygen(1): add support for verifying FIDO webauthn signatures. Webauthn is a standard for using FIDO keys in web browsers. These signatures are a slightly different format to plain FIDO signatures and thus require explicit support. * ssh(1): allow some keywords to expand shell-style ${ENV} environment variables. The supported keywords are CertificateFile, ControlPath, IdentityAgent and IdentityFile, plus LocalForward and RemoteForward when used for Unix domain socket paths. bz#3140 * ssh(1), ssh-agent(1): allow some additional control over the use of ssh-askpass via a new $SSH_ASKPASS_REQUIRE environment variable, including forcibly enabling and disabling its use. bz#69 * ssh(1): allow ssh_config(5)'s AddKeysToAgent keyword accept a time limit for keys in addition to its current flag options. Time- limited keys will automatically be removed from ssh-agent after their expiry time has passed. * scp(1), sftp(1): allow the -A flag to explicitly enable agent forwarding in scp and sftp. The default remains to not forward an agent, even when ssh_config enables it. * ssh(1): add a '%k' TOKEN that expands to the effective HostKey of the destination. This allows, e.g., keeping host keys in individual files using "UserKnownHostsFile ~/.ssh/known_hosts.d/%k". bz#1654 * ssh(1): add %-TOKEN, environment variable and tilde expansion to the UserKnownHostsFile directive, allowing the path to be completed by the configuration (e.g. bz#1654) * ssh-keygen(1): allow "ssh-add -d -" to read keys to be deleted from stdin. bz#3180 * sshd(8): improve logging for MaxStartups connection throttling. sshd will now log when it starts and stops throttling and periodically while in this state. bz#3055 Bugfixes - ------- * ssh(1), ssh-keygen(1): better support for multiple attached FIDO tokens. In cases where OpenSSH cannot unambiguously determine which token to direct a request to, the user is now required to select a token by touching it. In cases of operations that require a PIN to be verified, this avoids sending the wrong PIN to the wrong token and incrementing the token's PIN failure counter (tokens effectively erase their keys after too many PIN failures). * sshd(8): fix Include before Match in sshd_config; bz#3122 * ssh(1): close stdin/out/error when forking after authentication completes ("ssh -f ...") bz#3137 * ssh(1), sshd(8): limit the amount of channel input data buffered, avoiding peers that advertise large windows but are slow to read from causing high memory consumption. * ssh-agent(1): handle multiple requests sent in a single write() to the agent. * sshd(8): allow sshd_config longer than 256k * sshd(8): avoid spurious "Unable to load host key" message when sshd load a private key but no public counterpart * ssh(1): prefer the default hostkey algorithm list whenever we have a hostkey that matches its best-preference algorithm. * sshd(1): when ordering the hostkey algorithms to request from a server, prefer certificate types if the known_hosts files contain a key marked as a @cert-authority; bz#3157 * ssh(1): perform host key fingerprint comparisons for the "Are you sure you want to continue connecting (yes/no/[fingerprint])?" prompt with case sensitivity. * sshd(8): ensure that address/masklen mismatches in sshd_config yield fatal errors at daemon start time rather than later when they are evaluated. * ssh-keygen(1): ensure that certificate extensions are lexically sorted. Previously if the user specified a custom extension then the everything would be in order except the custom ones. bz#3198 * ssh(1): also compare username when checking for JumpHost loops. bz#3057 * ssh-keygen(1): preserve group/world read permission on known_hosts files across runs of "ssh-keygen -Rf /path". The old behaviour was to remove all rights for group/other. bz#3146 * ssh-keygen(1): Mention the [-a rounds] flag in the ssh-keygen manual page and usage(). * sshd(8): explicitly construct path to ~/.ssh/rc rather than relying on it being relative to the current directory, so that it can still be found if the shell startup changes its directory. bz#3185 * sshd(8): when redirecting sshd's log output to a file, undo this redirection after the session child process is forked(). Fixes missing log messages when using this feature under some circumstances. * sshd(8): start ClientAliveInterval bookkeeping before first pass through select() loop; fixed theoretical case where busy sshd may ignore timeouts from client. * ssh(1): only reset the ServerAliveInterval check when we receive traffic from the server and ignore traffic from a port forwarding client, preventing a client from keeping a connection alive when it should be terminated. bz#2265 * ssh-keygen(1): avoid spurious error message when ssh-keygen creates files outside ~/.ssh * sftp-client(1): fix off-by-one error that caused sftp downloads to make one more concurrent request that desired. This prevented using sftp(1) in unpipelined request/response mode, which is useful when debugging. bz#3054 * ssh(1), sshd(8): handle EINTR in waitfd() and timeout_connect() helpers. bz#3071 * ssh(1), ssh-keygen(1): defer creation of ~/.ssh until we attempt to write to it so we don't leave an empty .ssh directory when it's not needed. bz#3156 * ssh(1), sshd(8): fix multiplier when parsing time specifications when handling seconds after other units. bz#3171- Update openssh-8.1p1-audit.patch (bsc#1180501). This fixes occasional crashes on connection termination caused by accessing freed memory.- Support /usr/etc/pam.d- Fix build breakage caused by missing security key objects: + Modify openssh-7.7p1-cavstest-ctr.patch. + Modify openssh-7.7p1-cavstest-kdf.patch. + Add openssh-link-with-sk.patch.- Add openssh-fips-ensure-approved-moduli.patch (bsc#1177939). This ensures only approved DH parameters are used in FIPS mode.- Add openssh-8.1p1-ed25519-use-openssl-rng.patch (bsc#1173799). This uses OpenSSL's RAND_bytes() directly instead of the internal ChaCha20-based implementation to obtain random bytes for Ed25519 curve computations. This is required for FIPS compliance.- Work around %service_add_post disabling sshd on upgrade with package name change (bsc#1177039).- Fix fillup-template usage: + %post server needs to reference ssh (not sshd), which matches the sysconfig.ssh file name the package ships. + %post client does not need any fillup_ calls, as there is no client-relevant sysconfig file present. The naming of the sysconfig file (ssh instead of sshd) is unfortunate.- Use of DISABLE_RESTART_ON_UPDATE is deprecated. Replace it with %service_del_postun_without_restart- Move some Requires to the right subpackage. - Avoid ">&" bashism in %post. - Upgrade some old specfile constructs/macros and drop unnecessary %{?systemd_*}. - Trim descriptions and straighten out the grammar.- Split openssh package into openssh, openssh-common, openssh-server and openssh-clients. This allows for the ssh clients to be installed without the server component (bsc#1176434).- Version update to 8.3p1: = Potentially-incompatible changes * sftp(1): reject an argument of "-1" in the same way as ssh(1) and scp(1) do instead of accepting and silently ignoring it. = New features * sshd(8): make IgnoreRhosts a tri-state option: "yes" to ignore rhosts/shosts, "no" allow rhosts/shosts or (new) "shosts-only" to allow .shosts files but not .rhosts. * sshd(8): allow the IgnoreRhosts directive to appear anywhere in a sshd_config, not just before any Match blocks. * ssh(1): add %TOKEN percent expansion for the LocalFoward and RemoteForward keywords when used for Unix domain socket forwarding. * all: allow loading public keys from the unencrypted envelope of a private key file if no corresponding public key file is present. * ssh(1), sshd(8): prefer to use chacha20 from libcrypto where possible instead of the (slower) portable C implementation included in OpenSSH. * ssh-keygen(1): add ability to dump the contents of a binary key revocation list via "ssh-keygen -lQf /path". - Additional changes from 8.2p1 release: = Potentially-incompatible changes * ssh(1), sshd(8), ssh-keygen(1): this release removes the "ssh-rsa" (RSA/SHA1) algorithm from those accepted for certificate signatures (i.e. the client and server CASignatureAlgorithms option) and will use the rsa-sha2-512 signature algorithm by default when the ssh-keygen(1) CA signs new certificates. * ssh(1), sshd(8): this release removes diffie-hellman-group14-sha1 from the default key exchange proposal for both the client and server. * ssh-keygen(1): the command-line options related to the generation and screening of safe prime numbers used by the diffie-hellman-group-exchange-* key exchange algorithms have changed. Most options have been folded under the -O flag. * sshd(8): the sshd listener process title visible to ps(1) has changed to include information about the number of connections that are currently attempting authentication and the limits configured by MaxStartups. * ssh-sk-helper(8): this is a new binary. It is used by the FIDO/U2F support to provide address-space isolation for token middleware libraries (including the internal one). It needs to be installed in the expected path, typically under /usr/libexec or similar. = New features * This release adds support for FIDO/U2F hardware authenticators to OpenSSH. U2F/FIDO are open standards for inexpensive two-factor authentication hardware that are widely used for website authentication. In OpenSSH FIDO devices are supported by new public key types "ecdsa-sk" and "ed25519-sk", along with corresponding certificate types. * sshd(8): add an Include sshd_config keyword that allows including additional configuration files via glob(3) patterns. * ssh(1)/sshd(8): make the LE (low effort) DSCP code point available via the IPQoS directive. * ssh(1): when AddKeysToAgent=yes is set and the key contains no comment, add the key to the agent with the key's path as the comment. * ssh-keygen(1), ssh-agent(1): expose PKCS#11 key labels and X.509 subjects as key comments, rather than simply listing the PKCS#11 provider library path. * ssh-keygen(1): allow PEM export of DSA and ECDSA keys. * ssh(1), sshd(8): make zlib compile-time optional, available via the Makefile.inc ZLIB flag on OpenBSD or via the --with-zlib configure option for OpenSSH portable. * sshd(8): when clients get denied by MaxStartups, send a notification prior to the SSH2 protocol banner according to RFC4253 section 4.2. * ssh(1), ssh-agent(1): when invoking the $SSH_ASKPASS prompt program, pass a hint to the program to describe the type of desired prompt. The possible values are "confirm" (indicating that a yes/no confirmation dialog with no text entry should be shown), "none" (to indicate an informational message only), or blank for the original ssh-askpass behaviour of requesting a password/phrase. * ssh(1): allow forwarding a different agent socket to the path specified by $SSH_AUTH_SOCK, by extending the existing ForwardAgent option to accepting an explicit path or the name of an environment variable in addition to yes/no. * ssh-keygen(1): add a new signature operations "find-principals" to look up the principal associated with a signature from an allowed- signers file. * sshd(8): expose the number of currently-authenticating connections along with the MaxStartups limit in the process title visible to "ps". - Rebased patches: * openssh-7.7p1-cavstest-ctr.patch * openssh-7.7p1-cavstest-kdf.patch * openssh-7.7p1-fips.patch * openssh-7.7p1-fips_checks.patch * openssh-7.7p1-ldap.patch * openssh-7.7p1-no_fork-no_pid_file.patch * openssh-7.7p1-sftp_print_diagnostic_messages.patch * openssh-8.0p1-gssapi-keyex.patch * openssh-8.1p1-audit.patch * openssh-8.1p1-seccomp-clock_nanosleep.patch - Removed openssh-7.7p1-seed-prng.patch (bsc#1165158).- add upstream signing key to actually verify source signature- Don't recommend xauth to avoid pulling in X.- Add patches to fix the sandbox blocking glibc on 32bit platforms (boo#1164061): * openssh-8.1p1-seccomp-clock_nanosleep_time64.patch * openssh-8.1p1-seccomp-clock_gettime64.patch- Add openssh-8.1p1-use-openssl-kdf.patch (jsc#SLE-9443). This performs key derivation using OpenSSL's SSHKDF facility, which allows OpenSSH to benefit from the former's FIPS certification status.- Make sure ssh-keygen runs if SSHD_AUTO_KEYGEN variable is unset or contains an unrecognized value (bsc#1157176).- Add openssh-8.1p1-seccomp-clock_nanosleep.patch, allow clock_nanosleep glibc master implements multiple functions using that syscall making the privsep sandbox kill the preauth process.- Update openssh-7.7p1-audit.patch to fix crash (bsc#1152730). Fix by Enzo Matsumiya (ematsumiya@suse.com). This was integrated in a separate code stream merged with the Oct. 10 update; the patch was also rebased and renamed to openssh-8.1p1-audit.patch.- Add openssh-7.9p1-keygen-preserve-perms.patch (bsc#1150574). This attempts to preserve the permissions of any existing known_hosts file when modified by ssh-keygen (for instance, with -R). - Added openssh-7.9p1-revert-new-qos-defaults.patch, which reverts an upstream commit that caused compatibility issues with other software (bsc#1136402).- Run 'ssh-keygen -A' on startup only if SSHD_AUTO_KEYGEN="yes" in /etc/sysconfig/ssh. This is set to "yes" by default, but can be changed by the system administrator (bsc#1139089).- Add openssh-7.9p1-keygen-preserve-perms.patch (bsc#1150574). This attempts to preserve the permissions of any existing known_hosts file when modified by ssh-keygen (for instance, with -R).- Version update to 8.1p1: * ssh-keygen(1): when acting as a CA and signing certificates with an RSA key, default to using the rsa-sha2-512 signature algorithm. Certificates signed by RSA keys will therefore be incompatible with OpenSSH versions prior to 7.2 unless the default is overridden (using "ssh-keygen -t ssh-rsa -s ..."). * ssh(1): Allow %n to be expanded in ProxyCommand strings * ssh(1), sshd(8): Allow prepending a list of algorithms to the default set by starting the list with the '^' character, E.g. "HostKeyAlgorithms ^ssh-ed25519" * ssh-keygen(1): add an experimental lightweight signature and verification ability. Signatures may be made using regular ssh keys held on disk or stored in a ssh-agent and verified against an authorized_keys-like list of allowed keys. Signatures embed a namespace that prevents confusion and attacks between different usage domains (e.g. files vs email). * ssh-keygen(1): print key comment when extracting public key from a private key. * ssh-keygen(1): accept the verbose flag when searching for host keys in known hosts (i.e. "ssh-keygen -vF host") to print the matching host's random-art signature too. * All: support PKCS8 as an optional format for storage of private keys to disk. The OpenSSH native key format remains the default, but PKCS8 is a superior format to PEM if interoperability with non-OpenSSH software is required, as it may use a less insecure key derivation function than PEM's. - Additional changes from 8.0p1 release: * scp(1): Add "-T" flag to disable client-side filtering of server file list. * sshd(8): Remove support for obsolete "host/port" syntax. * ssh(1), ssh-agent(1), ssh-add(1): Add support for ECDSA keys in PKCS#11 tokens. * ssh(1), sshd(8): Add experimental quantum-computing resistant key exchange method, based on a combination of Streamlined NTRU Prime 4591^761 and X25519. * ssh-keygen(1): Increase the default RSA key size to 3072 bits, following NIST Special Publication 800-57's guidance for a 128-bit equivalent symmetric security level. * ssh(1): Allow "PKCS11Provider=none" to override later instances of the PKCS11Provider directive in ssh_config, * sshd(8): Add a log message for situations where a connection is dropped for attempting to run a command but a sshd_config ForceCommand=internal-sftp restriction is in effect. * ssh(1): When prompting whether to record a new host key, accept the key fingerprint as a synonym for "yes". This allows the user to paste a fingerprint obtained out of band at the prompt and have the client do the comparison for you. * ssh-keygen(1): When signing multiple certificates on a single command-line invocation, allow automatically incrementing the certificate serial number. * scp(1), sftp(1): Accept -J option as an alias to ProxyJump on the scp and sftp command-lines. * ssh-agent(1), ssh-pkcs11-helper(8), ssh-add(1): Accept "-v" command-line flags to increase the verbosity of output; pass verbose flags though to subprocesses, such as ssh-pkcs11-helper started from ssh-agent. * ssh-add(1): Add a "-T" option to allowing testing whether keys in an agent are usable by performing a signature and a verification. * sftp-server(8): Add a "lsetstat@openssh.com" protocol extension that replicates the functionality of the existing SSH2_FXP_SETSTAT operation but does not follow symlinks. * sftp(1): Add "-h" flag to chown/chgrp/chmod commands to request they do not follow symlinks. * sshd(8): Expose $SSH_CONNECTION in the PAM environment. This makes the connection 4-tuple available to PAM modules that wish to use it in decision-making. * sshd(8): Add a ssh_config "Match final" predicate Matches in same pass as "Match canonical" but doesn't require hostname canonicalisation be enabled. * sftp(1): Support a prefix of '@' to suppress echo of sftp batch commands. * ssh-keygen(1): When printing certificate contents using "ssh-keygen -Lf /path/certificate", include the algorithm that the CA used to sign the cert. - Rebased patches: * openssh-7.7p1-IPv6_X_forwarding.patch * openssh-7.7p1-X_forward_with_disabled_ipv6.patch * openssh-7.7p1-cavstest-ctr.patch * openssh-7.7p1-cavstest-kdf.patch * openssh-7.7p1-disable_openssl_abi_check.patch * openssh-7.7p1-fips.patch * openssh-7.7p1-fips_checks.patch * openssh-7.7p1-hostname_changes_when_forwarding_X.patch * openssh-7.7p1-ldap.patch * openssh-7.7p1-seed-prng.patch * openssh-7.7p1-sftp_force_permissions.patch * openssh-7.7p1-sftp_print_diagnostic_messages.patch * openssh-8.0p1-gssapi-keyex.patch (formerly openssh-7.7p1-gssapi_key_exchange.patch) * openssh-8.1p1-audit.patch (formerly openssh-7.7p1-audit.patch) - Removed patches (integrated upstream): * 0001-upstream-Fix-two-race-conditions-in-sshd-relating-to.patch * openssh-7.7p1-seccomp_ioctl_s390_EP11.patch * openssh-7.9p1-CVE-2018-20685.patch * openssh-7.9p1-brace-expansion.patch * openssh-CVE-2019-6109-force-progressmeter-update.patch * openssh-CVE-2019-6109-sanitize-scp-filenames.patch * openssh-CVE-2019-6111-scp-client-wildcard.patch - Removed patches (obsolete): * openssh-openssl-1_0_0-compatibility.patch- don't install SuSEfirewall2 service on Factory, since SuSEfirewall2 has been replaced by firewalld, see [1]. [1]: https://lists.opensuse.org/opensuse-factory/2019-01/msg00490.html- ssh-askpass: Try a fallback if the other option is not available- Fix a crash with GSSAPI key exchange (bsc#1136104) * modify openssh-7.7p1-gssapi_key_exchange.patch- Fix a double free() in the KDF CAVS testing tool (bsc#1065237) * modify openssh-7.7p1-cavstest-kdf.patch- Minor clean-up of the fips patches, modified openssh-7.7p1-fips.patch openssh-7.7p1-fips_checks.patch- Fix two race conditions in sshd relating to SIGHUP (bsc#1119183) * 0001-upstream-Fix-two-race-conditions-in-sshd-relating-to.patch- Correctly filter out non-compliant algorithms when in FIPS mode (bsc#1126397) * A hunk was applied to a wrong place due to a patch fuzz when the fips patch was being ported to openssh 7.9p1 - update openssh-7.7p1-fips.patch- Remove the "KexDHMin" config keyword (bsc#1127180) It used to allow lowering of the minimal allowed DH group size, which was increased to 2048 by upstream in the light of the Logjam attack. The code was broken since the upgrade to 7.6p1, but nobody noticed. As apparently no one needs the functionality any more, let's drop the patch. It's still possible to use the fixed 1024-bit diffie-hellman-group1-sha1 key exchange method when working with legacy systems. - drop openssh-7.7p1-disable_short_DH_parameters.patch - updated patches: openssh-7.7p1-fips.patch openssh-7.7p1-fips_checks.patch openssh-7.7p1-gssapi_key_exchange.patch- Handle brace expansion in scp when checking that filenames sent by the server side match what the client requested [bsc#1125687] * openssh-7.9p1-brace-expansion.patch- Updated security fixes: * [bsc#1121816, CVE-2019-6109] Sanitize scp filenames via snmprintf and have progressmeter force an update at the beginning and end of each transfer. Added patches: - openssh-CVE-2019-6109-sanitize-scp-filenames.patch - openssh-CVE-2019-6109-force-progressmeter-update.patch * [bsc#1121821, CVE-2019-6111] Check in scp client that filenames sent during remote->local directory copies satisfy the wildcard specified by the user. Added patch: - openssh-CVE-2019-6111-scp-client-wildcard.patch * Removed openssh-7.9p1-scp-name-validator.patch- Change the askpass wrapper to not use x11 interface: * by default we use the -gnome UI (which is gtk3 only, no gnome dep) * if desktop is KDE/LxQt we use ksshaskpass- Remove old conditionals- Move ssh-ldap* man pages into openssh-helpers [bsc#1051531]- Allow root login by default [bsc#1118114, bsc#1121196] * Added/updated previous patch openssh-7.7p1-allow_root_password_login.patch * Mention the change in README.SUSE- Added SLE conditionals in the spec files: * Keep gtk2-devel in openssh-askpass-gnome in SLE * Keep krb5-mini-devel in SLE - Removed obsolete configure options: * SSH protocol 1 --with-ssh1 * Smart card --with-opensc - Cleaned spec file with spec-cleaner- Security fix: * [bsc#1121816, CVE-2019-6109] scp client spoofing via object name * [bsc#1121818, CVE-2019-6110] scp client spoofing via stderr * [bsc#1121821, CVE-2019-6111] scp client missing received object name validation * Added patch openssh-7.9p1-scp-name-validator.patch- Security fix: [bsc#1121571, CVE-2018-20685] * The scp client allows remote SSH servers to bypass intended access restrictions * Added patch openssh-7.9p1-CVE-2018-20685.patch- Added compatibility with SuSEfirewall2 [bsc#1118044]- Update the firewall rules in Tumbleweed- Fix build with openssl < 1.1.0 * add openssh-openssl-1_0_0-compatibility.patch- openssh-7.7p1-audit.patch: fix sshd fatal error in mm_answer_keyverify: buffer error: incomplete message [bnc#1114008]- Version update to 7.9p1 * ssh(1), sshd(8): the setting of the new CASignatureAlgorithms option (see below) bans the use of DSA keys as certificate authorities. * sshd(8): the authentication success/failure log message has changed format slightly. It now includes the certificate fingerprint (previously it included only key ID and CA key fingerprint). * ssh(1), sshd(8): allow most port numbers to be specified using service names from getservbyname(3) (typically /etc/services). * sshd(8): support signalling sessions via the SSH protocol. A limited subset of signals is supported and only for login or command sessions (i.e. not subsystems) that were not subject to a forced command via authorized_keys or sshd_config. bz#1424 * ssh(1): support "ssh -Q sig" to list supported signature options. Also "ssh -Q help" to show the full set of supported queries. * ssh(1), sshd(8): add a CASignatureAlgorithms option for the client and server configs to allow control over which signature formats are allowed for CAs to sign certificates. For example, this allows banning CAs that sign certificates using the RSA-SHA1 signature algorithm. * sshd(8), ssh-keygen(1): allow key revocation lists (KRLs) to revoke keys specified by SHA256 hash. * ssh-keygen(1): allow creation of key revocation lists directly from base64-encoded SHA256 fingerprints. This supports revoking keys using only the information contained in sshd(8) authentication log messages. - Removed obsolete configuration option --with-tcp-wrappers, and - -with-opensc for s390 and s390x. - Removed patch merged upstream * openssh-7.7p1-openssl_1.1.0.patch - Refreshed patches * openssh-7.7p1-audit.patch * openssh-7.7p1-disable_short_DH_parameters.patch * openssh-7.7p1-fips.patch * openssh-7.7p1-gssapi_key_exchange.patch * openssh-7.7p1-seccomp_ipc_flock.patch * openssh-7.7p1-cavstest-ctr.patch * openssh-7.7p1-ldap.patch- Mention upstream bugs on multiple local patches - Adjust service to not spam restart and reload only on fails- Update openssh-7.7p1-sftp_force_permissions.patch from the upstream bug, and mention the bug in the spec- Drop patch openssh-7.7p1-allow_root_password_login.patch * There is no reason to set less secure default value, if users need the behaviour they can still set it up themselves - Drop patch openssh-7.7p1-blocksigalrm.patch * We had a bug way in past about this but it was never reproduced or even confirmed in the ticket, thus rather drop the patch- Disable ssh1 protocol support as neither RH or Debian enable this protocol by default anymore either.- Remove the mention of the SLE12 in the README.SUSE - Install firewall rules only when really needed ( ::1) before they are matched against known_hosts. bz#2763 * ssh(1): Don't accept junk after "yes" or "no" responses to hostkey prompts. bz#2803 * sftp(1): Have sftp print a warning about shell cleanliness when decoding the first packet fails, which is usually caused by shells polluting stdout of non-interactive startups. bz#2800 * ssh(1)/sshd(8): Switch timers in packet code from using wall-clock time to monotonic time, allowing the packet layer to better function over a clock step and avoiding possible integer overflows during steps. * Numerous manual page fixes and improvements.- Use TIRPC on suse_version >= 1500: sunrpc is deprecated and should be replaced by TIRPC.- additional rebased patches (bsc#1080779) * auditing support * LDAP integration * various distribution tweaks from SLE12 (X forwarding over IPv6, sftp forced permissions and verbose batch mode)- Use %license instead of %doc [bsc#1082318]- add OpenSSL 1.0 to 1.1 shim to remove dependency on old OpenSSL (update tracker: bsc#1080779)- Add missing crypto hardware enablement patches for IBM mainframes (FATE#323902)- add missing part of systemd integration (unit type)- BuildRequire pkgconfig(libsystemd) instead of systemd-devel: allow the scheduler to pick systemd-mini flavors to get build going.- Replace forgotten references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468) - tighten configuration access rights- Update to vanilla 7.6p1 Most important changes (more details below): * complete removal of the ancient SSHv1 protocol * sshd(8) cannot run without privilege separation * removal of suport for arcfourm blowfish and CAST ciphers and RIPE-MD160 HMAC * refuse RSA keys shorter than 1024 bits Distilled upstream log: - OpenSSH 7.3 - --- Security * sshd(8): Mitigate a potential denial-of-service attack against the system's crypt(3) function via sshd(8). An attacker could send very long passwords that would cause excessive CPU use in crypt(3). sshd(8) now refuses to accept password authentication requests of length greater than 1024 characters. Independently reported by Tomas Kuthan (Oracle), Andres Rojas and Javier Nieto. * sshd(8): Mitigate timing differences in password authentication that could be used to discern valid from invalid account names when long passwords were sent and particular password hashing algorithms are in use on the server. CVE-2016-6210, reported by EddieEzra.Harari at verint.com * ssh(1), sshd(8): Fix observable timing weakness in the CBC padding oracle countermeasures. Reported by Jean Paul Degabriele, Kenny Paterson, Torben Hansen and Martin Albrecht. Note that CBC ciphers are disabled by default and only included for legacy compatibility. * ssh(1), sshd(8): Improve operation ordering of MAC verification for Encrypt-then-MAC (EtM) mode transport MAC algorithms to verify the MAC before decrypting any ciphertext. This removes the possibility of timing differences leaking facts about the plaintext, though no such leakage has been observed. Reported by Jean Paul Degabriele, Kenny Paterson, Torben Hansen and Martin Albrecht. * sshd(8): (portable only) Ignore PAM environment vars when UseLogin=yes. If PAM is configured to read user-specified environment variables and UseLogin=yes in sshd_config, then a hostile local user may attack /bin/login via LD_PRELOAD or similar environment variables set via PAM. CVE-2015-8325, found by Shayan Sadigh. - --- New Features * ssh(1): Add a ProxyJump option and corresponding -J command-line flag to allow simplified indirection through a one or more SSH bastions or "jump hosts". * ssh(1): Add an IdentityAgent option to allow specifying specific agent sockets instead of accepting one from the environment. * ssh(1): Allow ExitOnForwardFailure and ClearAllForwardings to be optionally overridden when using ssh -W. bz#2577 * ssh(1), sshd(8): Implement support for the IUTF8 terminal mode as per draft-sgtatham-secsh-iutf8-00. * ssh(1), sshd(8): Add support for additional fixed Diffie-Hellman 2K, 4K and 8K groups from draft-ietf-curdle-ssh-kex-sha2-03. * ssh-keygen(1), ssh(1), sshd(8): support SHA256 and SHA512 RSA signatures in certificates; * ssh(1): Add an Include directive for ssh_config(5) files. * ssh(1): Permit UTF-8 characters in pre-authentication banners sent from the server. bz#2058 - --- Bugfixes * ssh(1), sshd(8): Reduce the syslog level of some relatively common protocol events from LOG_CRIT. bz#2585 * sshd(8): Refuse AuthenticationMethods="" in configurations and accept AuthenticationMethods=any for the default behaviour of not requiring multiple authentication. bz#2398 * sshd(8): Remove obsolete and misleading "POSSIBLE BREAK-IN ATTEMPT!" message when forward and reverse DNS don't match. bz#2585 * ssh(1): Close ControlPersist background process stderr except in debug mode or when logging to syslog. bz#1988 * misc: Make PROTOCOL description for direct-streamlocal@openssh.com channel open messages match deployed code. bz#2529 * ssh(1): Deduplicate LocalForward and RemoteForward entries to fix failures when both ExitOnForwardFailure and hostname canonicalisation are enabled. bz#2562 * sshd(8): Remove fallback from moduli to obsolete "primes" file that was deprecated in 2001. bz#2559. * sshd_config(5): Correct description of UseDNS: it affects ssh hostname processing for authorized_keys, not known_hosts; bz#2554 * ssh(1): Fix authentication using lone certificate keys in an agent without corresponding private keys on the filesystem. bz#2550 * sshd(8): Send ClientAliveInterval pings when a time-based RekeyLimit is set; previously keepalive packets were not being sent. bz#2252 - --- Portability * ssh(1), sshd(8): Fix compilation by automatically disabling ciphers not supported by OpenSSL. bz#2466 * misc: Fix compilation failures on some versions of AIX's compiler related to the definition of the VA_COPY macro. bz#2589 * sshd(8): Whitelist more architectures to enable the seccomp-bpf sandbox. bz#2590 * ssh-agent(1), sftp-server(8): Disable process tracing on Solaris using setpflags(__PROC_PROTECT, ...). bz#2584 * sshd(8): On Solaris, don't call Solaris setproject() with UsePAM=yes it's PAM's responsibility. bz#2425 - OpenSSH 7.4 - --- Potentially-incompatible changes * ssh(1): Remove 3des-cbc from the client's default proposal. 64-bit block ciphers are not safe in 2016 and we don't want to wait until attacks like SWEET32 are extended to SSH. As 3des-cbc was the only mandatory cipher in the SSH RFCs, this may cause problems connecting to older devices using the default configuration, but it's highly likely that such devices already need explicit configuration for key exchange and hostkey algorithms already anyway. * sshd(8): Remove support for pre-authentication compression. Doing compression early in the protocol probably seemed reasonable in the 1990s, but today it's clearly a bad idea in terms of both cryptography (cf. multiple compression oracle attacks in TLS) and attack surface. Pre-auth compression support has been disabled by default for >10 years. Support remains in the client. * ssh-agent will refuse to load PKCS#11 modules outside a whitelist of trusted paths by default. The path whitelist may be specified at run-time. * sshd(8): When a forced-command appears in both a certificate and an authorized keys/principals command= restriction, sshd will now refuse to accept the certificate unless they are identical. The previous (documented) behaviour of having the certificate forced-command override the other could be a bit confusing and error-prone. * sshd(8): Remove the UseLogin configuration directive and support for having /bin/login manage login sessions. - --- Security * ssh-agent(1): Will now refuse to load PKCS#11 modules from paths outside a trusted whitelist (run-time configurable). Requests to load modules could be passed via agent forwarding and an attacker could attempt to load a hostile PKCS#11 module across the forwarded agent channel: PKCS#11 modules are shared libraries, so this would result in code execution on the system running the ssh-agent if the attacker has control of the forwarded agent-socket (on the host running the sshd server) and the ability to write to the filesystem of the host running ssh-agent (usually the host running the ssh client). Reported by Jann Horn of Project Zero. * sshd(8): When privilege separation is disabled, forwarded Unix- domain sockets would be created by sshd(8) with the privileges of 'root' instead of the authenticated user. This release refuses Unix-domain socket forwarding when privilege separation is disabled (Privilege separation has been enabled by default for 14 years). Reported by Jann Horn of Project Zero. * sshd(8): Avoid theoretical leak of host private key material to privilege-separated child processes via realloc() when reading keys. No such leak was observed in practice for normal-sized keys, nor does a leak to the child processes directly expose key material to unprivileged users. Reported by Jann Horn of Project Zero. * sshd(8): The shared memory manager used by pre-authentication compression support had a bounds checks that could be elided by some optimising compilers. Additionally, this memory manager was incorrectly accessible when pre-authentication compression was disabled. This could potentially allow attacks against the privileged monitor process from the sandboxed privilege-separation process (a compromise of the latter would be required first). This release removes support for pre-authentication compression from sshd(8). Reported by Guido Vranken using the Stack unstable optimisation identification tool (http://css.csail.mit.edu/stack/) * sshd(8): Fix denial-of-service condition where an attacker who sends multiple KEXINIT messages may consume up to 128MB per connection. Reported by Shi Lei of Gear Team, Qihoo 360. * sshd(8): Validate address ranges for AllowUser and DenyUsers directives at configuration load time and refuse to accept invalid ones. It was previously possible to specify invalid CIDR address ranges (e.g. user@127.1.2.3/55) and these would always match, possibly resulting in granting access where it was not intended. Reported by Laurence Parry. - --- New Features * ssh(1): Add a proxy multiplexing mode to ssh(1) inspired by the version in PuTTY by Simon Tatham. This allows a multiplexing client to communicate with the master process using a subset of the SSH packet and channels protocol over a Unix-domain socket, with the main process acting as a proxy that translates channel IDs, etc. This allows multiplexing mode to run on systems that lack file- descriptor passing (used by current multiplexing code) and potentially, in conjunction with Unix-domain socket forwarding, with the client and multiplexing master process on different machines. Multiplexing proxy mode may be invoked using "ssh -O proxy ..." * sshd(8): Add a sshd_config DisableForwarding option that disables X11, agent, TCP, tunnel and Unix domain socket forwarding, as well as anything else we might implement in the future. Like the 'restrict' authorized_keys flag, this is intended to be a simple and future-proof way of restricting an account. * sshd(8), ssh(1): Support the "curve25519-sha256" key exchange method. This is identical to the currently-supported method named "curve25519-sha256@libssh.org". * sshd(8): Improve handling of SIGHUP by checking to see if sshd is already daemonised at startup and skipping the call to daemon(3) if it is. This ensures that a SIGHUP restart of sshd(8) will retain the same process-ID as the initial execution. sshd(8) will also now unlink the PidFile prior to SIGHUP restart and re-create it after a successful restart, rather than leaving a stale file in the case of a configuration error. bz#2641 * sshd(8): Allow ClientAliveInterval and ClientAliveCountMax directives to appear in sshd_config Match blocks. * sshd(8): Add %-escapes to AuthorizedPrincipalsCommand to match those supported by AuthorizedKeysCommand (key, key type, fingerprint, etc.) and a few more to provide access to the contents of the certificate being offered. * Added regression tests for string matching, address matching and string sanitisation functions. * Improved the key exchange fuzzer harness. - --- Bugfixes * ssh(1): Allow IdentityFile to successfully load and use certificates that have no corresponding bare public key. bz#2617 certificate id_rsa-cert.pub (and no id_rsa.pub). * ssh(1): Fix public key authentication when multiple authentication is in use and publickey is not just the first method attempted. bz#2642 * regress: Allow the PuTTY interop tests to run unattended. bz#2639 * ssh-agent(1), ssh(1): improve reporting when attempting to load keys from PKCS#11 tokens with fewer useless log messages and more detail in debug messages. bz#2610 * ssh(1): When tearing down ControlMaster connections, don't pollute stderr when LogLevel=quiet. * sftp(1): On ^Z wait for underlying ssh(1) to suspend before suspending sftp(1) to ensure that ssh(1) restores the terminal mode correctly if suspended during a password prompt. * ssh(1): Avoid busy-wait when ssh(1) is suspended during a password prompt. * ssh(1), sshd(8): Correctly report errors during sending of ext- info messages. * sshd(8): fix NULL-deref crash if sshd(8) received an out-of- sequence NEWKEYS message. * sshd(8): Correct list of supported signature algorithms sent in the server-sig-algs extension. bz#2547 * sshd(8): Fix sending ext_info message if privsep is disabled. * sshd(8): more strictly enforce the expected ordering of privilege separation monitor calls used for authentication and allow them only when their respective authentication methods are enabled in the configuration * sshd(8): Fix uninitialised optlen in getsockopt() call; harmless on Unix/BSD but potentially crashy on Cygwin. * Fix false positive reports caused by explicit_bzero(3) not being recognised as a memory initialiser when compiled with - fsanitize-memory. * sshd_config(5): Use 2001:db8::/32, the official IPv6 subnet for configuration examples. - --- Portability * On environments configured with Turkish locales, fall back to the C/POSIX locale to avoid errors in configuration parsing caused by that locale's unique handling of the letters 'i' and 'I'. bz#2643 * sftp-server(8), ssh-agent(1): Deny ptrace on OS X using ptrace(PT_DENY_ATTACH, ..) * ssh(1), sshd(8): Unbreak AES-CTR ciphers on old (~0.9.8) OpenSSL. * Fix compilation for libcrypto compiled without RIPEMD160 support. * contrib: Add a gnome-ssh-askpass3 with GTK+3 support. bz#2640 * sshd(8): Improve PRNG reseeding across privilege separation and force libcrypto to obtain a high-quality seed before chroot or sandboxing. * All: Explicitly test for broken strnvis. NetBSD added an strnvis and unfortunately made it incompatible with the existing one in OpenBSD and Linux's libbsd (the former having existed for over ten years). Try to detect this mess, and assume the only safe option if we're cross compiling. - OpenSSH 7.5 - --- Potentially-incompatible changes * This release deprecates the sshd_config UsePrivilegeSeparation option, thereby making privilege separation mandatory. Privilege separation has been on by default for almost 15 years and sandboxing has been on by default for almost the last five. * The format of several log messages emitted by the packet code has changed to include additional information about the user and their authentication state. Software that monitors ssh/sshd logs may need to account for these changes. For example: Connection closed by user x 1.1.1.1 port 1234 [preauth] Connection closed by authenticating user x 10.1.1.1 port 1234 [preauth] Connection closed by invalid user x 1.1.1.1 port 1234 [preauth] Affected messages include connection closure, timeout, remote disconnection, negotiation failure and some other fatal messages generated by the packet code. * [Portable OpenSSH only] This version removes support for building against OpenSSL versions prior to 1.0.1. OpenSSL stopped supporting versions prior to 1.0.1 over 12 months ago (i.e. they no longer receive fixes for security bugs). - --- Security * ssh(1), sshd(8): Fix weakness in CBC padding oracle countermeasures that allowed a variant of the attack fixed in OpenSSH 7.3 to proceed. Note that the OpenSSH client disables CBC ciphers by default, sshd offers them as lowest-preference options and will remove them by default entriely in the next release. Reported by Jean Paul Degabriele, Kenny Paterson, Martin Albrecht and Torben Hansen of Royal Holloway, University of London. * sftp-client(1): [portable OpenSSH only] On Cygwin, a client making a recursive file transfer could be maniuplated by a hostile server to perform a path-traversal attack. creating or modifying files outside of the intended target directory. Reported by Jann Horn of Google Project Zero. - --- New Features * ssh(1), sshd(8): Support "=-" syntax to easily remove methods from algorithm lists, e.g. Ciphers=-*cbc. bz#2671 - --- Bugfixes * sshd(1): Fix NULL dereference crash when key exchange start messages are sent out of sequence. * ssh(1), sshd(8): Allow form-feed characters to appear in configuration files. * sshd(8): Fix regression in OpenSSH 7.4 support for the server-sig-algs extension, where SHA2 RSA signature methods were not being correctly advertised. bz#2680 * ssh(1), ssh-keygen(1): Fix a number of case-sensitivity bugs in known_hosts processing. bz#2591 bz#2685 * ssh(1): Allow ssh to use certificates accompanied by a private key file but no corresponding plain *.pub public key. bz#2617 * ssh(1): When updating hostkeys using the UpdateHostKeys option, accept RSA keys if HostkeyAlgorithms contains any RSA keytype. Previously, ssh could ignore RSA keys when only the ssh-rsa-sha2-* methods were enabled in HostkeyAlgorithms and not the old ssh-rsa method. bz#2650 * ssh(1): Detect and report excessively long configuration file lines. bz#2651 * Merge a number of fixes found by Coverity and reported via Redhat and FreeBSD. Includes fixes for some memory and file descriptor leaks in error paths. bz#2687 * ssh-keyscan(1): Correctly hash hosts with a port number. bz#2692 * ssh(1), sshd(8): When logging long messages to stderr, don't truncate "\r\n" if the length of the message exceeds the buffer. bz#2688 * ssh(1): Fully quote [host]:port in generated ProxyJump/-J command- line; avoid confusion over IPv6 addresses and shells that treat square bracket characters specially. * ssh-keygen(1): Fix corruption of known_hosts when running "ssh-keygen -H" on a known_hosts containing already-hashed entries. * Fix various fallout and sharp edges caused by removing SSH protocol 1 support from the server, including the server banner string being incorrectly terminated with only \n (instead of \r\n), confusing error messages from ssh-keyscan bz#2583 and a segfault in sshd if protocol v.1 was enabled for the client and sshd_config contained references to legacy keys bz#2686. * ssh(1), sshd(8): Free fd_set on connection timeout. bz#2683 * sshd(8): Fix Unix domain socket forwarding for root (regression in OpenSSH 7.4). * sftp(1): Fix division by zero crash in "df" output when server returns zero total filesystem blocks/inodes. * ssh(1), ssh-add(1), ssh-keygen(1), sshd(8): Translate OpenSSL errors encountered during key loading to more meaningful error codes. bz#2522 bz#2523 * ssh-keygen(1): Sanitise escape sequences in key comments sent to printf but preserve valid UTF-8 when the locale supports it; bz#2520 * ssh(1), sshd(8): Return reason for port forwarding failures where feasible rather than always "administratively prohibited". bz#2674 * sshd(8): Fix deadlock when AuthorizedKeysCommand or AuthorizedPrincipalsCommand produces a lot of output and a key is matched early. bz#2655 * Regression tests: several reliability fixes. bz#2654 bz#2658 bz#2659 * ssh(1): Fix typo in ~C error message for bad port forward cancellation. bz#2672 * ssh(1): Show a useful error message when included config files can't be opened; bz#2653 * sshd(8): Make sshd set GSSAPIStrictAcceptorCheck=yes as the manual page (previously incorrectly) advertised. bz#2637 * sshd_config(5): Repair accidentally-deleted mention of %k token in AuthorizedKeysCommand; bz#2656 * sshd(8): Remove vestiges of previously removed LOGIN_PROGRAM; bz#2665 * ssh-agent(1): Relax PKCS#11 whitelist to include libexec and common 32-bit compatibility library directories. * sftp-client(1): Fix non-exploitable integer overflow in SSH2_FXP_NAME response handling. * ssh-agent(1): Fix regression in 7.4 of deleting PKCS#11-hosted keys. It was not possible to delete them except by specifying their full physical path. bz#2682 - --- Portability * sshd(8): Avoid sandbox errors for Linux S390 systems using an ICA crypto coprocessor. * sshd(8): Fix non-exploitable weakness in seccomp-bpf sandbox arg inspection. * ssh(1): Fix X11 forwarding on OSX where X11 was being started by launchd. bz#2341 * ssh-keygen(1), ssh(1), sftp(1): Fix output truncation for various that contain non-printable characters where the codeset in use is ASCII. * build: Fix builds that attempt to link a kerberised libldns. bz#2603 * build: Fix compilation problems caused by unconditionally defining _XOPEN_SOURCE in wide character detection. * sshd(8): Fix sandbox violations for clock_gettime VSDO syscall fallback on some Linux/X32 kernels. bz#2142 - OpenSSH 7.6 - --- Potentially-incompatible changes This release includes a number of changes that may affect existing configurations: * ssh(1): delete SSH protocol version 1 support, associated configuration options and documentation. * ssh(1)/sshd(8): remove support for the hmac-ripemd160 MAC. * ssh(1)/sshd(8): remove support for the arcfour, blowfish and CAST ciphers. * Refuse RSA keys <1024 bits in length and improve reporting for keys that do not meet this requirement. * ssh(1): do not offer CBC ciphers by default. - --- Security * sftp-server(8): in read-only mode, sftp-server was incorrectly permitting creation of zero-length files. Reported by Michal Zalewski. - --- New Features * ssh(1): add RemoteCommand option to specify a command in the ssh config file instead of giving it on the client's command line. This allows the configuration file to specify the command that will be executed on the remote host. * sshd(8): add ExposeAuthInfo option that enables writing details of the authentication methods used (including public keys where applicable) to a file that is exposed via a $SSH_USER_AUTH environment variable in the subsequent session. * ssh(1): add support for reverse dynamic forwarding. In this mode, ssh will act as a SOCKS4/5 proxy and forward connections to destinations requested by the remote SOCKS client. This mode is requested using extended syntax for the - R and RemoteForward options and, because it is implemented solely at the client, does not require the server be updated to be supported. * sshd(8): allow LogLevel directive in sshd_config Match blocks; bz#2717 * ssh-keygen(1): allow inclusion of arbitrary string or flag certificate extensions and critical options. * ssh-keygen(1): allow ssh-keygen to use a key held in ssh-agent as a CA when signing certificates. bz#2377 * ssh(1)/sshd(8): allow IPQoS=none in ssh/sshd to not set an explicit ToS/DSCP value and just use the operating system default. * ssh-add(1): added -q option to make ssh-add quiet on success. * ssh(1): expand the StrictHostKeyChecking option with two new settings. The first "accept-new" will automatically accept hitherto-unseen keys but will refuse connections for changed or invalid hostkeys. This is a safer subset of the current behaviour of StrictHostKeyChecking=no. The second setting "off", is a synonym for the current behaviour of StrictHostKeyChecking=no: accept new host keys, and continue connection for hosts with incorrect hostkeys. A future release will change the meaning of StrictHostKeyChecking=no to the behaviour of "accept-new". bz#2400 * ssh(1): add SyslogFacility option to ssh(1) matching the equivalent option in sshd(8). bz#2705 - --- Bugfixes * ssh(1): use HostKeyAlias if specified instead of hostname for matching host certificate principal names; bz#2728 * sftp(1): implement sorting for globbed ls; bz#2649 * ssh(1): add a user@host prefix to client's "Permission denied" messages, useful in particular when using "stacked" connections (e.g. ssh -J) where it's not clear which host is denying. bz#2720 * ssh(1): accept unknown EXT_INFO extension values that contain \0 characters. These are legal, but would previously cause fatal connection errors if received. * ssh(1)/sshd(8): repair compression statistics printed at connection exit * sftp(1): print '?' instead of incorrect link count (that the protocol doesn't provide) for remote listings. bz#2710 * ssh(1): return failure rather than fatal() for more cases during session multiplexing negotiations. Causes the session to fall back to a non-mux connection if they occur. bz#2707 * ssh(1): mention that the server may send debug messages to explain public key authentication problems under some circumstances; bz#2709 * Translate OpenSSL error codes to better report incorrect passphrase errors when loading private keys; bz#2699 * sshd(8): adjust compatibility patterns for WinSCP to correctly identify versions that implement only the legacy DH group exchange scheme. bz#2748 * ssh(1): print the "Killed by signal 1" message only at LogLevel verbose so that it is not shown at the default level; prevents it from appearing during ssh -J and equivalent ProxyCommand configs. bz#1906, bz#2744 * ssh-keygen(1): when generating all hostkeys (ssh-keygen -A), clobber existing keys if they exist but are zero length. zero-length keys could previously be made if ssh-keygen failed or was interrupted part way through generating them. bz#2561 * ssh(1): fix pledge(2) violation in the escape sequence "~&" used to place the current session in the background. * ssh-keyscan(1): avoid double-close() on file descriptors; bz#2734 * sshd(8): avoid reliance on shared use of pointers shared between monitor and child sshd processes. bz#2704 * sshd_config(8): document available AuthenticationMethods; bz#2453 * ssh(1): avoid truncation in some login prompts; bz#2768 * sshd(8): Fix various compilations failures, inc bz#2767 * ssh(1): make "--" before the hostname terminate argument processing after the hostname too. * ssh-keygen(1): switch from aes256-cbc to aes256-ctr for encrypting new-style private keys. Fixes problems related to private key handling for no-OpenSSL builds. bz#2754 * ssh(1): warn and do not attempt to use keys when the public and private halves do not match. bz#2737 * sftp(1): don't print verbose error message when ssh disconnects from under sftp. bz#2750 * sshd(8): fix keepalive scheduling problem: activity on a forwarded port from preventing the keepalive from being sent; bz#2756 * sshd(8): when started without root privileges, don't require the privilege separation user or path to exist. Makes running the regression tests easier without touching the filesystem. * Make integrity.sh regression tests more robust against timeouts. bz#2658 * ssh(1)/sshd(8): correctness fix for channels implementation: accept channel IDs greater than 0x7FFFFFFF. - --- Portability * sshd(9): drop two more privileges in the Solaris sandbox: PRIV_DAX_ACCESS and PRIV_SYS_IB_INFO; bz#2723 * sshd(8): expose list of completed authentication methods to PAM via the SSH_AUTH_INFO_0 PAM environment variable. bz#2408 * ssh(1)/sshd(8): fix several problems in the tun/tap forwarding code, mostly to do with host/network byte order confusion. bz#2735 * Add --with-cflags-after and --with-ldflags-after configure flags to allow setting CFLAGS/LDFLAGS after configure has completed. These are useful for setting sanitiser/fuzzing options that may interfere with configure's operation. * sshd(8): avoid Linux seccomp violations on ppc64le over the socketcall syscall. * Fix use of ldns when using ldns-config; bz#2697 * configure: set cache variables when cross-compiling. The cross- compiling fallback message was saying it assumed the test passed, but it wasn't actually set the cache variables and this would cause later tests to fail. * Add clang libFuzzer harnesses for public key parsing and signature verification. - packaging: * moving patches into a separate archive * first round of rebased patches: [-X11_trusted_forwarding] [-allow_root_password_login] [-blocksigalrm] [-cavstest-ctr] [-cavstest-kdf] [-disable_short_DH_parameters] [-eal3] [-enable_PAM_by_default] [-fips] [-fips_checks] [-gssapi_key_exchange] [-hostname_changes_when_forwarding_X] [-lastlog] [-missing_headers] [-pam_check_locks] [-pts_names_formatting] [-remove_xauth_cookies_on_exit] [-seccomp_geteuid] [-seccomp_getuid] [-seccomp_stat] [-seed-prng] [-send_locale] [-systemd-notify] * not rebased (obsoleted) patches (so far): [-additional_seccomp_archs] [-allow_DSS_by_default] [-default_protocol] [-dont_use_pthreads_in_PAM] [-eal3_obsolete] [-gssapimitm] [-saveargv-fix] * obviously removing all standalone patch files: [openssh-7.2p2-allow_root_password_login.patch] [openssh-7.2p2-allow_DSS_by_default.patch] [openssh-7.2p2-X11_trusted_forwarding.patch] [openssh-7.2p2-lastlog.patch] [openssh-7.2p2-enable_PAM_by_default.patch] [openssh-7.2p2-dont_use_pthreads_in_PAM.patch] [openssh-7.2p2-eal3.patch] [openssh-7.2p2-blocksigalrm.patch] [openssh-7.2p2-send_locale.patch] [openssh-7.2p2-hostname_changes_when_forwarding_X.patch] [openssh-7.2p2-remove_xauth_cookies_on_exit.patch] [openssh-7.2p2-pts_names_formatting.patch] [openssh-7.2p2-pam_check_locks.patch] [openssh-7.2p2-disable_short_DH_parameters.patch] [openssh-7.2p2-seccomp_getuid.patch] [openssh-7.2p2-seccomp_geteuid.patch] [openssh-7.2p2-seccomp_stat.patch] [openssh-7.2p2-additional_seccomp_archs.patch] [openssh-7.2p2-fips.patch] [openssh-7.2p2-cavstest-ctr.patch] [openssh-7.2p2-cavstest-kdf.patch] [openssh-7.2p2-seed-prng.patch] [openssh-7.2p2-gssapi_key_exchange.patch] [openssh-7.2p2-audit.patch] [openssh-7.2p2-audit_fixes.patch] [openssh-7.2p2-audit_seed_prng.patch] [openssh-7.2p2-login_options.patch] [openssh-7.2p2-disable_openssl_abi_check.patch] [openssh-7.2p2-no_fork-no_pid_file.patch] [openssh-7.2p2-host_ident.patch] [openssh-7.2p2-sftp_homechroot.patch] [openssh-7.2p2-sftp_force_permissions.patch] [openssh-7.2p2-X_forward_with_disabled_ipv6.patch] [openssh-7.2p2-ldap.patch] [openssh-7.2p2-IPv6_X_forwarding.patch] [openssh-7.2p2-ignore_PAM_with_UseLogin.patch] [openssh-7.2p2-prevent_timing_user_enumeration.patch] [openssh-7.2p2-limit_password_length.patch] [openssh-7.2p2-keep_slogin.patch] [openssh-7.2p2-kex_resource_depletion.patch] [openssh-7.2p2-verify_CIDR_address_ranges.patch] [openssh-7.2p2-restrict_pkcs11-modules.patch] [openssh-7.2p2-prevent_private_key_leakage.patch] [openssh-7.2p2-secure_unix_sockets_forwarding.patch] [openssh-7.2p2-ssh_case_insensitive_host_matching.patch] [openssh-7.2p2-disable_preauth_compression.patch] [openssh-7.2p2-s390_hw_crypto_syscalls.patch] [openssh-7.2p2-s390_OpenSSL-ibmpkcs11_syscalls.patch]- Replace references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468)- sshd_config is has now permissions 0600 in secure mode- Fix preauth seccomp separation on mainframes (bsc#1016709) [openssh-7.2p2-s390_hw_crypto_syscalls.patch] [openssh-7.2p2-s390_OpenSSL-ibmpkcs11_syscalls.patch] - enable case-insensitive hostname matching (bsc#1017099) [openssh-7.2p2-ssh_case_insensitive_host_matching.patch] - add CAVS tests [openssh-7.2p2-cavstest-ctr.patch] [openssh-7.2p2-cavstest-kdf.patch] - Adding missing pieces for user matching (bsc#1021626) - Properly verify CIDR masks in configuration (bsc#1005893) [openssh-7.2p2-verify_CIDR_address_ranges.patch] - Remove pre-auth compression support from the server to prevent possible cryptographic attacks. (CVE-2016-10012, bsc#1016370) [openssh-7.2p2-disable_preauth_compression.patch] - limit directories for loading PKCS11 modules (CVE-2016-10009, bsc#1016366) [openssh-7.2p2-restrict_pkcs11-modules.patch] - Prevent possible leaks of host private keys to low-privilege process handling authentication (CVE-2016-10011, bsc#1016369) [openssh-7.2p2-prevent_private_key_leakage.patch] - Do not allow unix socket forwarding when running without privilege separation (CVE-2016-10010, bsc#1016368) [openssh-7.2p2-secure_unix_sockets_forwarding.patch] - prevent resource depletion during key exchange (bsc#1005480, CVE-2016-8858) [openssh-7.2p2-kex_resource_depletion.patch] - fix suggested command for removing conflicting server keys from the known_hosts file (bsc#1006221) - enable geteuid{,32} syscalls on mainframes, since it may be called from libica/ibmica on machines with hardware crypto accelerator (bsc#1004258) [openssh-7.2p2-seccomp_geteuid.patch] - fix regression of (bsc#823710) [openssh-7.2p2-audit_fixes.patch] - add slogin (removed upstreams) [openssh-7.2p2-keep_slogin.patch] - require OpenSSL < 1.1 where that one is a default- sshd.service: Set TasksMax=infinity, as there should be no limit on the amount of tasks sshd can run.- remaining patches that were still missing since the update to 7.2p2 (FATE#319675): - allow X forwarding over IPv4 when IPv6 sockets is not available [openssh-7.2p2-X_forward_with_disabled_ipv6.patch] - do not write PID file when not daemonizing [openssh-7.2p2-no_fork-no_pid_file.patch] - use correct options when invoking login [openssh-7.2p2-login_options.patch] - helper application for retrieving users' public keys from an LDAP server [openssh-7.2p2-ldap.patch] - allow forcing permissions over sftp [openssh-7.2p2-sftp_force_permissions.patch] - do not perform run-time checks for OpenSSL API/ABI change [openssh-7.2p2-disable_openssl_abi_check.patch] - suggest commands for cleaning known hosts file [openssh-7.2p2-host_ident.patch] - sftp home chroot patch [openssh-7.2p2-sftp_homechroot.patch] - ssh sessions auditing [openssh-7.2p2-audit.patch] - enable seccomp sandbox on additional architectures [openssh-7.2p2-additional_seccomp_archs.patch] - fix forwarding with IPv6 addresses in DISPLAY (bnc#847710) [openssh-7.2p2-IPv6_X_forwarding.patch] - ignore PAM environment when using login (bsc#975865, CVE-2015-8325) [openssh-7.2p2-ignore_PAM_with_UseLogin.patch] - limit accepted password length (prevents possible DoS) (bsc#992533, CVE-2016-6515) [openssh-7.2p2-limit_password_length.patch] - Prevent user enumeration through the timing of password processing (bsc#989363, CVE-2016-6210) [openssh-7.2p2-prevent_timing_user_enumeration.patch] - Add auditing for PRNG re-seeding [openssh-7.2p2-audit_seed_prng.patch]- FIPS compatibility (no selfchecks, only crypto restrictions) [openssh-7.2p2-fips.patch] - PRNG re-seeding [openssh-7.2p2-seed-prng.patch] - preliminary version of GSSAPI KEX [openssh-7.2p2-gssapi_key_exchange.patch]- added gpg signature- enable support for SSHv1 protocol and discourage its usage (bsc#983307) - enable DSA by default for backward compatibility and discourage its usage (bsc#983784) [openssh-7.2p2-allow_DSS_by_default.patch]- enable trusted X11 forwarding by default [openssh-7.2p2-X11_trusted_forwarding.patch] - set UID for lastlog properly [openssh-7.2p2-lastlog.patch] - enable use of PAM by default [openssh-7.2p2-enable_PAM_by_default.patch] - copy command line arguments properly [openssh-7.2p2-saveargv-fix.patch] - do not use pthreads in PAM code [openssh-7.2p2-dont_use_pthreads_in_PAM.patch] - fix paths in documentation [openssh-7.2p2-eal3.patch] - prevent race consitions triggered by SIGALRM [openssh-7.2p2-blocksigalrm.patch] - do send and accept locale environment variables by default [openssh-7.2p2-send_locale.patch] - handle hostnames changes during X forwarding [openssh-7.2p2-hostname_changes_when_forwarding_X.patch] - try to remove xauth cookies on exit [openssh-7.2p2-remove_xauth_cookies_on_exit.patch] - properly format pts names for ?tmp? log files [openssh-7.2p2-pts_names_formatting.patch] - check locked accounts when using PAM [openssh-7.2p2-pam_check_locks.patch] - chenge default PermitRootLogin to 'yes' to prevent unwanted surprises on updates from older versions. See README.SUSE for details [openssh-7.2p2-allow_root_password_login.patch] - Disable DH parameters under 2048 bits by default and allow lowering the limit back to the RFC 4419 specified minimum through an option (bsc#932483, bsc#948902) [openssh-7.2p2-disable_short_DH_parameters.patch] - Add getuid() and stat() syscalls to the seccomp filter (bsc#912436) [openssh-7.2p2-seccomp_getuid.patch, openssh-7.2p2-seccomp_stat.patch]- upgrade to 7.2p2 upstream package without any SUSE patches Distilled upstream log: - OpenSSH 6.7 Potentially-incompatible changes: * sshd(8): The default set of ciphers and MACs has been altered to remove unsafe algorithms. In particular, CBC ciphers and arcfour* are disabled by default. The full set of algorithms remains available if configured explicitly via the Ciphers and MACs sshd_config options. * sshd(8): Support for tcpwrappers/libwrap has been removed. * OpenSSH 6.5 and 6.6 have a bug that causes ~0.2% of connections using the curve25519-sha256@libssh.org KEX exchange method to fail when connecting with something that implements the specification correctly. OpenSSH 6.7 disables this KEX method when speaking to one of the affected versions. New Features: * ssh(1), sshd(8): Add support for Unix domain socket forwarding. A remote TCP port may be forwarded to a local Unix domain socket and vice versa or both ends may be a Unix domain socket. * ssh(1), ssh-keygen(1): Add support for SSHFP DNS records for ED25519 key types. * sftp(1): Allow resumption of interrupted uploads. * ssh(1): When rekeying, skip file/DNS lookups of the hostkey if it is the same as the one sent during initial key exchange * sshd(8): Allow explicit ::1 and 127.0.0.1 forwarding bind addresses when GatewayPorts=no; allows client to choose address family * sshd(8): Add a sshd_config PermitUserRC option to control whether ~/.ssh/rc is executed, mirroring the no-user-rc authorized_keys option * ssh(1): Add a %C escape sequence for LocalCommand and ControlPath that expands to a unique identifer based on a hash of the tuple of (local host, remote user, hostname, port). Helps avoid exceeding miserly pathname limits for Unix domain sockets in multiplexing control paths * sshd(8): Make the "Too many authentication failures" message include the user, source address, port and protocol in a format similar to the authentication success / failure messages Bugfixes: * sshd(8): Fix remote forwarding with the same listen port but different listen address. * ssh(1): Fix inverted test that caused PKCS#11 keys that were explicitly listed in ssh_config or on the commandline not to be preferred. * ssh-keygen(1): Fix bug in KRL generation: multiple consecutive revoked certificate serial number ranges could be serialised to an invalid format. Readers of a broken KRL caused by this bug will fail closed, so no should-have-been-revoked key will be accepted. * ssh(1): Reflect stdio-forward ("ssh -W host:port ...") failures in exit status. Previously we were always returning 0 * ssh(1), ssh-keygen(1): Make Ed25519 keys' title fit properly in the randomart border * ssh-agent(1): Only cleanup agent socket in the main agent process and not in any subprocesses it may have started (e.g. forked askpass). Fixes agent sockets being zapped when askpass processes fatal() * ssh-add(1): Make stdout line-buffered; saves partial output getting lost when ssh-add fatal()s part-way through (e.g. when listing keys from an agent that supports key types that ssh-add doesn't) * ssh-keygen(1): When hashing or removing hosts, don't choke on @revoked markers and don't remove @cert-authority markers * ssh(1): Don't fatal when hostname canonicalisation fails and a ProxyCommand is in use; continue and allow the ProxyCommand to connect anyway (e.g. to a host with a name outside the DNS behind a bastion) * scp(1): When copying local->remote fails during read, don't send uninitialised heap to the remote end. * sftp(1): Fix fatal "el_insertstr failed" errors when tab-completing filenames with a single quote char somewhere in the string * ssh-keyscan(1): Scan for Ed25519 keys by default. * ssh(1): When using VerifyHostKeyDNS with a DNSSEC resolver, down-convert any certificate keys to plain keys and attempt SSHFP resolution. Prevents a server from skipping SSHFP lookup and forcing a new-hostkey dialog by offering only certificate keys. - OpenSSH 6.8 Potentially-incompatible changes: * sshd(8): UseDNS now defaults to 'no'. Configurations that match against the client host name (via sshd_config or authorized_keys) may need to re-enable it or convert to matching against addresses. New Features: * Add FingerprintHash option to ssh(1) and sshd(8), and equivalent command-line flags to the other tools to control algorithm used for key fingerprints. The default changes from MD5 to SHA256 and format from hex to base64. Fingerprints now have the hash algorithm prepended. An example of the new format: SHA256:mVPwvezndPv/ARoIadVY98vAC0g+P/5633yTC4d/wXE Please note that visual host keys will also be different. * ssh(1), sshd(8): Experimental host key rotation support. Add a protocol extension for a server to inform a client of all its available host keys after authentication has completed. The client may record the keys in known_hosts, allowing it to upgrade to better host key algorithms and a server to gracefully rotate its keys. The client side of this is controlled by a UpdateHostkeys config option (default off). * ssh(1): Add a ssh_config HostbasedKeyType option to control which host public key types are tried during host-based authentication. * ssh(1), sshd(8): fix connection-killing host key mismatch errors when sshd offers multiple ECDSA keys of different lengths. * ssh(1): when host name canonicalisation is enabled, try to parse host names as addresses before looking them up for canonicalisation. fixes bz#2074 and avoiding needless DNS lookups in some cases. * ssh-keygen(1), sshd(8): Key Revocation Lists (KRLs) no longer require OpenSSH to be compiled with OpenSSL support. * ssh(1), ssh-keysign(8): Make ed25519 keys work for host based authentication. * sshd(8): SSH protocol v.1 workaround for the Meyer, et al, Bleichenbacher Side Channel Attack. Fake up a bignum key before RSA decryption. * sshd(8): Remember which public keys have been used for authentication and refuse to accept previously-used keys. This allows AuthenticationMethods=publickey,publickey to require that users authenticate using two _different_ public keys. * sshd(8): add sshd_config HostbasedAcceptedKeyTypes and PubkeyAcceptedKeyTypes options to allow sshd to control what public key types will be accepted. Currently defaults to all. * sshd(8): Don't count partial authentication success as a failure against MaxAuthTries. * ssh(1): Add RevokedHostKeys option for the client to allow text-file or KRL-based revocation of host keys. * ssh-keygen(1), sshd(8): Permit KRLs that revoke certificates by serial number or key ID without scoping to a particular CA. * ssh(1): Add a "Match canonical" criteria that allows ssh_config Match blocks to trigger only in the second config pass. * ssh(1): Add a -G option to ssh that causes it to parse its configuration and dump the result to stdout, similar to "sshd -T". * ssh(1): Allow Match criteria to be negated. E.g. "Match !host". * The regression test suite has been extended to cover more OpenSSH features. The unit tests have been expanded and now cover key exchange. Bugfixes: * ssh-keyscan(1): ssh-keyscan has been made much more robust again servers that hang or violate the SSH protocol. * ssh(1), ssh-keygen(1): Fix regression: Key path names were being lost as comment fields. * ssh(1): Allow ssh_config Port options set in the second config parse phase to be applied (they were being ignored). * ssh(1): Tweak config re-parsing with host canonicalisation - make the second pass through the config files always run when host name canonicalisation is enabled (and not whenever the host name changes) * ssh(1): Fix passing of wildcard forward bind addresses when connection multiplexing is in use * ssh-keygen(1): Fix broken private key conversion from non-OpenSSH formats. * ssh-keygen(1): Fix KRL generation bug when multiple CAs are in use. * Various fixes to manual pages - OpenSSH 6.9 Security: * ssh(1): when forwarding X11 connections with ForwardX11Trusted=no, connections made after ForwardX11Timeout expired could be permitted and no longer subject to XSECURITY restrictions because of an ineffective timeout check in ssh(1) coupled with "fail open" behaviour in the X11 server when clients attempted connections with expired credentials. This problem was reported by Jann Horn. * ssh-agent(1): fix weakness of agent locking (ssh-add -x) to password guessing by implementing an increasing failure delay, storing a salted hash of the password rather than the password itself and using a timing-safe comparison function for verifying unlock attempts. This problem was reported by Ryan Castellucci. New Features: * ssh(1), sshd(8): promote chacha20-poly1305@openssh.com to be the default cipher * sshd(8): support admin-specified arguments to AuthorizedKeysCommand * sshd(8): add AuthorizedPrincipalsCommand that allows retrieving authorized principals information from a subprocess rather than a file. * ssh(1), ssh-add(1): support PKCS#11 devices with external PIN entry devices * sshd(8): allow GSSAPI host credential check to be relaxed for multihomed hosts via GSSAPIStrictAcceptorCheck option * ssh-keygen(1): support "ssh-keygen -lF hostname" to search known_hosts and print key hashes rather than full keys. * ssh-agent(1): add -D flag to leave ssh-agent in foreground without enabling debug mode Bugfixes: * ssh(1), sshd(8): deprecate legacy SSH2_MSG_KEX_DH_GEX_REQUEST_OLD message and do not try to use it against some 3rd-party SSH implementations that use it (older PuTTY, WinSCP). * Many fixes for problems caused by compile-time deactivation of SSH1 support (including bz#2369) * ssh(1), sshd(8): cap DH-GEX group size at 4Kbits for Cisco implementations as some would fail when attempting to use group sizes >4K * ssh(1): fix out-of-bound read in EscapeChar configuration option parsing * sshd(8): fix application of PermitTunnel, LoginGraceTime, AuthenticationMethods and StreamLocalBindMask options in Match blocks * ssh(1), sshd(8): improve disconnection message on TCP reset; bz#2257 * ssh(1): remove failed remote forwards established by muliplexing from the list of active forwards * sshd(8): make parsing of authorized_keys "environment=" options independent of PermitUserEnv being enabled * sshd(8): fix post-auth crash with permitopen=none * ssh(1), ssh-add(1), ssh-keygen(1): allow new-format private keys to be encrypted with AEAD ciphers * ssh(1): allow ListenAddress, Port and AddressFamily configuration options to appear in any order * sshd(8): check for and reject missing arguments for VersionAddendum and ForceCommand * ssh(1), sshd(8): don't treat unknown certificate extensions as fatal * ssh-keygen(1): make stdout and stderr output consistent * ssh(1): mention missing DISPLAY environment in debug log when X11 forwarding requested * sshd(8): correctly record login when UseLogin is set * sshd(8): Add some missing options to sshd -T output and fix output of VersionAddendum and HostCertificate. bz#2346 * Document and improve consistency of options that accept a "none" argument" TrustedUserCAKeys, RevokedKeys (bz#2382), AuthorizedPrincipalsFile (bz#2288) * ssh(1): include remote username in debug output * sshd(8): avoid compatibility problem with some versions of Tera Term, which would crash when they received the hostkeys notification message (hostkeys-00@openssh.com) * sshd(8): mention ssh-keygen -E as useful when comparing legacy MD5 host key fingerprints * ssh(1): clarify pseudo-terminal request behaviour and use make manual language consistent * ssh(1): document that the TERM environment variable is not subject to SendEnv and AcceptEnv - OpenSSH 7.0: This focuses primarily on deprecating weak, legacy and/or unsafe cryptography. Security: * sshd(8): OpenSSH 6.8 and 6.9 incorrectly set TTYs to be world- writable. Local attackers may be able to write arbitrary messages to logged-in users, including terminal escape sequences. Reported by Nikolay Edigaryev. * sshd(8): Portable OpenSSH only: Fixed a privilege separation weakness related to PAM support. Attackers who could successfully compromise the pre-authentication process for remote code execution and who had valid credentials on the host could impersonate other users. Reported by Moritz Jodeit. * sshd(8): Portable OpenSSH only: Fixed a use-after-free bug related to PAM support that was reachable by attackers who could compromise the pre-authentication process for remote code execution. Also reported by Moritz Jodeit. * sshd(8): fix circumvention of MaxAuthTries using keyboard- interactive authentication. By specifying a long, repeating keyboard-interactive "devices" string, an attacker could request the same authentication method be tried thousands of times in a single pass. The LoginGraceTime timeout in sshd(8) and any authentication failure delays implemented by the authentication mechanism itself were still applied. Found by Kingcope. Potentially-incompatible Changes: * Support for the legacy SSH version 1 protocol is disabled by default at compile time. * Support for the 1024-bit diffie-hellman-group1-sha1 key exchange is disabled by default at run-time. It may be re-enabled using the instructions in README.legacy or http://www.openssh.com/legacy.html * Support for ssh-dss, ssh-dss-cert-* host and user keys is disabled by default at run-time. These may be re-enabled using the instructions at http://www.openssh.com/legacy.html * Support for the legacy v00 cert format has been removed. * The default for the sshd_config(5) PermitRootLogin option has changed from "yes" to "prohibit-password". * PermitRootLogin=without-password/prohibit-password now bans all interactive authentication methods, allowing only public-key, hostbased and GSSAPI authentication (previously it permitted keyboard-interactive and password-less authentication if those were enabled). New Features: * ssh_config(5): add PubkeyAcceptedKeyTypes option to control which public key types are available for user authentication. * sshd_config(5): add HostKeyAlgorithms option to control which public key types are offered for host authentications. * ssh(1), sshd(8): extend Ciphers, MACs, KexAlgorithms, HostKeyAlgorithms, PubkeyAcceptedKeyTypes and HostbasedKeyTypes options to allow appending to the default set of algorithms instead of replacing it. Options may now be prefixed with a '+' to append to the default, e.g. "HostKeyAlgorithms=+ssh-dss". * sshd_config(5): PermitRootLogin now accepts an argument of 'prohibit-password' as a less-ambiguous synonym of 'without- password'. Bugfixes: * ssh(1), sshd(8): add compatability workarounds for Cisco and more PuTTY versions. * Fix some omissions and errors in the PROTOCOL and PROTOCOL.mux documentation relating to Unix domain socket forwarding * ssh(1): Improve the ssh(1) manual page to include a better description of Unix domain socket forwarding * ssh(1), ssh-agent(1): skip uninitialised PKCS#11 slots, fixing failures to load keys when they are present. * ssh(1), ssh-agent(1): do not ignore PKCS#11 hosted keys that wth empty CKA_ID * sshd(8): clarify documentation for UseDNS option - OpenSSH 7.1: Security: * sshd(8): OpenSSH 7.0 contained a logic error in PermitRootLogin= prohibit-password/without-password that could, depending on compile-time configuration, permit password authentication to root while preventing other forms of authentication. This problem was reported by Mantas Mikulenas. Bugfixes: * ssh(1), sshd(8): add compatability workarounds for FuTTY * ssh(1), sshd(8): refine compatability workarounds for WinSCP * Fix a number of memory faults (double-free, free of uninitialised memory, etc) in ssh(1) and ssh-keygen(1). Reported by Mateusz Kocielski. - OpenSSH 7.1p2: * SECURITY: ssh(1): The OpenSSH client code between 5.4 and 7.1 contains experimential support for resuming SSH-connections (roaming). The matching server code has never been shipped, but the client code was enabled by default and could be tricked by a malicious server into leaking client memory to the server, including private client user keys. The authentication of the server host key prevents exploitation by a man-in-the-middle, so this information leak is restricted to connections to malicious or compromised servers. MITIGATION: For OpenSSH >= 5.4 the vulnerable code in the client can be completely disabled by adding 'UseRoaming no' to the gobal ssh_config(5) file, or to user configuration in ~/.ssh/config, or by passing -oUseRoaming=no on the command line. PATCH: See below for a patch to disable this feature (Disabling Roaming in the Source Code). This problem was reported by the Qualys Security Advisory team. * SECURITY: Eliminate the fallback from untrusted X11-forwarding to trusted forwarding for cases when the X server disables the SECURITY extension. Reported by Thomas Hoger. * SECURITY: Fix an out of-bound read access in the packet handling code. Reported by Ben Hawkes. * PROTOCOL: Correctly interpret the 'first_kex_follows' option during the intial key exchange. Reported by Matt Johnston. * Further use of explicit_bzero has been added in various buffer handling code paths to guard against compilers aggressively doing dead-store removal. Potentially-incompatible changes: * This release disables a number of legacy cryptographic algorithms by default in ssh: + Several ciphers blowfish-cbc, cast128-cbc, all arcfour variants and the rijndael-cbc aliases for AES. + MD5-based and truncated HMAC algorithms. - OpenSSH 7.2: Security: * ssh(1), sshd(8): remove unfinished and unused roaming code (was already forcibly disabled in OpenSSH 7.1p2). * ssh(1): eliminate fallback from untrusted X11 forwarding to trusted forwarding when the X server disables the SECURITY extension. * ssh(1), sshd(8): increase the minimum modulus size supported for diffie-hellman-group-exchange to 2048 bits. * sshd(8): pre-auth sandboxing is now enabled by default (previous releases enabled it for new installations via sshd_config). New Features: * all: add support for RSA signatures using SHA-256/512 hash algorithms based on draft-rsa-dsa-sha2-256-03.txt and draft-ssh-ext-info-04.txt. * ssh(1): Add an AddKeysToAgent client option which can be set to 'yes', 'no', 'ask', or 'confirm', and defaults to 'no'. When enabled, a private key that is used during authentication will be added to ssh-agent if it is running (with confirmation enabled if set to 'confirm'). * sshd(8): add a new authorized_keys option "restrict" that includes all current and future key restrictions (no-*-forwarding, etc.). Also add permissive versions of the existing restrictions, e.g. "no-pty" -> "pty". This simplifies the task of setting up restricted keys and ensures they are maximally-restricted, regardless of any permissions we might implement in the future. * ssh(1): add ssh_config CertificateFile option to explicitly list certificates. bz#2436 * ssh-keygen(1): allow ssh-keygen to change the key comment for all supported formats. * ssh-keygen(1): allow fingerprinting from standard input, e.g. "ssh-keygen -lf -" * ssh-keygen(1): allow fingerprinting multiple public keys in a file, e.g. "ssh-keygen -lf ~/.ssh/authorized_keys" bz#1319 * sshd(8): support "none" as an argument for sshd_config Foreground and ChrootDirectory. Useful inside Match blocks to override a global default. bz#2486 * ssh-keygen(1): support multiple certificates (one per line) and reading from standard input (using "-f -") for "ssh-keygen -L" * ssh-keyscan(1): add "ssh-keyscan -c ..." flag to allow fetching certificates instead of plain keys. * ssh(1): better handle anchored FQDNs (e.g. 'cvs.openbsd.org') in hostname canonicalisation - treat them as already canonical and remove the trailing '.' before matching ssh_config. Bugfixes: * sftp(1): existing destination directories should not terminate recursive uploads (regression in openssh 6.8) * ssh(1), sshd(8): correctly send back SSH2_MSG_UNIMPLEMENTED replies to unexpected messages during key exchange. * ssh(1): refuse attempts to set ConnectionAttempts=0, which does not make sense and would cause ssh to print an uninitialised stack variable. * ssh(1): fix errors when attempting to connect to scoped IPv6 addresses with hostname canonicalisation enabled. * sshd_config(5): list a couple more options usable in Match blocks. * sshd(8): fix "PubkeyAcceptedKeyTypes +..." inside a Match block. * ssh(1): expand tilde characters in filenames passed to -i options before checking whether or not the identity file exists. Avoids confusion for cases where shell doesn't expand (e.g. "-i ~/file" vs. "-i~/file"). * ssh(1): do not prepend "exec" to the shell command run by "Match exec" in a config file, which could cause some commands to fail in certain environments. * ssh-keyscan(1): fix output for multiple hosts/addrs on one line when host hashing or a non standard port is in use * sshd(8): skip "Could not chdir to home directory" message when ChrootDirectory is active. * ssh(1): include PubkeyAcceptedKeyTypes in ssh -G config dump. * sshd(8): avoid changing TunnelForwarding device flags if they are already what is needed; makes it possible to use tun/tap networking as non-root user if device permissions and interface flags are pre-established * ssh(1), sshd(8): RekeyLimits could be exceeded by one packet. * ssh(1): fix multiplexing master failure to notice client exit. * ssh(1), ssh-agent(1): avoid fatal() for PKCS11 tokens that present empty key IDs. * sshd(8): avoid printf of NULL argument. * ssh(1), sshd(8): allow RekeyLimits larger than 4GB. * ssh-keygen(1): sshd(8): fix several bugs in (unused) KRL signature support. * ssh(1), sshd(8): fix connections with peers that use the key exchange guess feature of the protocol. * sshd(8): include remote port number in log messages. * ssh(1): don't try to load SSHv1 private key when compiled without SSHv1 support. * ssh-agent(1), ssh(1): fix incorrect error messages during key loading and signing errors. * ssh-keygen(1): don't leave empty temporary files when performing known_hosts file edits when known_hosts doesn't exist. * sshd(8): correct packet format for tcpip-forward replies for requests that don't allocate a port * ssh(1), sshd(8): fix possible hang on closed output. * ssh(1): expand %i in ControlPath to UID. * ssh(1), sshd(8): fix return type of openssh_RSA_verify. * ssh(1), sshd(8): fix some option parsing memory leaks. * ssh(1): add a some debug output before DNS resolution; it's a place where ssh could previously silently stall in cases of unresponsive DNS servers. * ssh(1): remove spurious newline in visual hostkey. * ssh(1): fix printing (ssh -G ...) of HostKeyAlgorithms=+... * ssh(1): fix expansion of HostkeyAlgorithms=+... Documentation: * ssh_config(5), sshd_config(5): update default algorithm lists to match current reality. * ssh(1): mention -Q key-plain and -Q key-cert query options. * sshd_config(8): more clearly describe what AuthorizedKeysFile=none does. * ssh_config(5): better document ExitOnForwardFailure. * sshd(5): mention internal DH-GEX fallback groups in manual. * sshd_config(5): better description for MaxSessions option. Portability: * sshd(8): fix multiple authentication using S/Key. - OpenSSH 7.2p2: Security: * sshd(8): sanitise X11 authentication credentials to avoid xauth command injection when X11Forwarding is enabled. (removing patches from previous version: * CVE-2016-0777_CVE-2016-0778.patch * openssh-6.6p1-X11-forwarding.patch * openssh-6.6p1-X_forward_with_disabled_ipv6.patch * openssh-6.6p1-audit1-remove_duplicit_audit.patch * openssh-6.6p1-audit2-better_audit_of_user_actions.patch * openssh-6.6p1-audit3-key_auth_usage-fips.patch * openssh-6.6p1-audit3-key_auth_usage.patch * openssh-6.6p1-audit4-kex_results-fips.patch * openssh-6.6p1-audit4-kex_results.patch * openssh-6.6p1-audit5-session_key_destruction.patch * openssh-6.6p1-audit6-server_key_destruction.patch * openssh-6.6p1-audit7-libaudit_compat.patch * openssh-6.6p1-audit8-libaudit_dns_timeouts.patch * openssh-6.6p1-blocksigalrm.patch * openssh-6.6p1-curve25519-6.6.1p1.patch * openssh-6.6p1-default-protocol.patch * openssh-6.6p1-disable-openssl-abi-check.patch * openssh-6.6p1-eal3.patch * openssh-6.6p1-fingerprint_hash.patch * openssh-6.6p1-fips-checks.patch * openssh-6.6p1-fips.patch * openssh-6.6p1-gssapi_key_exchange.patch * openssh-6.6p1-gssapimitm.patch * openssh-6.6p1-host_ident.patch * openssh-6.6p1-key-converter.patch * openssh-6.6p1-lastlog.patch * openssh-6.6p1-ldap.patch * openssh-6.6p1-login_options.patch * openssh-6.6p1-no_fork-no_pid_file.patch * openssh-6.6p1-pam-check-locks.patch * openssh-6.6p1-pam-fix2.patch * openssh-6.6p1-pam-fix3.patch * openssh-6.6p1-pts.patch * openssh-6.6p1-saveargv-fix.patch * openssh-6.6p1-seccomp_getuid.patch * openssh-6.6p1-seccomp_stat.patch * openssh-6.6p1-seed-prng.patch * openssh-6.6p1-send_locale.patch * openssh-6.6p1-sftp_force_permissions.patch * openssh-6.6p1-sftp_homechroot.patch * openssh-6.6p1-xauth.patch * openssh-6.6p1-xauthlocalhostname.patch)- update seccomp sandbox that broke after OpenSSL update (bsc#912436, bsc#977812) [openssh-6.6p1-seccomp_stat.patch]- openssh-6.6p1-ldap.patch: replace TRUE/FALSE with 1/0, since this defines did come via an indirect header inclusion and are not everywhere defined.- CVE-2016-0777, bsc#961642, CVE-2016-0778, bsc#961645 Add CVE-2016-0777_CVE-2016-0778.patch to disable the roaming code to prevent information leak and buffer overflow- gpg signature and keyring added. pub 3200R/6D920D30 2013-12-10 [expires: 2021-01-01] uid Damien Miller sub 3200R/672A1105 2013-12-10 [expires: 2021-01-01]- fix bashisms in sshd.init scriptibs-arm-5 16391376768.4p1-3.9.18.4p1-3.9.1cavs_driver-ssh.plcavstest-ctrcavstest-kdf/usr/lib/ssh/-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:22169/SUSE_SLE-15-SP3_Update/050c896c263f1cf5c3b9bd90abde2ba7-openssh.SUSE_SLE-15-SP3_Updatecpioxz5aarch64-suse-linuxPerl script text executableELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=a4afa61c76c7f26d1e215d1114406fc782de8499, for GNU/Linux 3.7.0, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=d2bc1df241d19b5a63c6f681a082a594e1bbc31e, for GNU/Linux 3.7.0, stripped RR RRRRRRR R R RRRR RRRRRRR R R RR5az{ Butf-86f066d760b80c44cd0aa995a518caf13d8a4f9fb60e575759cf222d6e4c0e8fc? 7zXZ !t/] crv9w3`c)^7\*fЁY֤h:1La8@O9et\3QQkkpJCS9(èX@?=wU;!?e+ug۲RUa.Ҥ۹ٖ{F[lDr4m{ϒ0=6&CJ2O_<:L稸l$]U4s?bIVSNĸNI;7Ê eKg(WjN-BNC<&,D(!=0䣀C8dBk)EKBixeiz9iV_WM$Ǥ36s_ק^K)f E$t3'P`R7H4oh2)SH8/<\"<⏑( k.3nzc)q9tpWnt?Ģӄ ?NJQ!BU#}l3%ծ g,&B]KW@k1g{]>.D.- Z N~AgYWD=Q~x$тzݮvz+O dY~?62[ͣ pQ dJu={=yȽŰc^ڤma`>pe>5cl!'Yܱʠ5A!FiWNk`CARZY(!deNўiga LR"fHw:Q:/ mN5},Փf1LKd~N݃ye[*p3Fe/ۥv DwM}<(Q٣L0(/L ,(thzMbK%evX{9 76OX́;^WmtqSep8)]9`Ȏkk~g(eP@X)Dr4;܌e-3$ ;fǟߎn)ԕ x'@Sm4htyuG_'A5B|]'yԔ0l_lͼ@]i#s}|9K4f~1c*G$8Mn,z> b_},nt]8grV"`G7I#5.,`~b!vc1pbZZK'[q 5B!(i2DfN~Bjo8iUhРПɗfԒ%uE:$# -Q\)Tt'c 4JdcNG!Kwc̩h#/{Fx'|bxVCkmi~mS^j]PY,1MPR&J~TɂQg`2ihjڷ}4Gӏ(z"PZjǘV>ouP"HN}.E }V_ڼ`5/+TB?hytZ֮̈,KD,Om]k»k3WX;; 8\_h2|칠q@YBϘ#G5~D?e`rN fX&0~589BF'wE\S;TH6Z65!;!L }I,hK ӎE[/H%Zn/&ʼn79OmH4Q8CTjW !z#9w7 2*J[拞J.?k76Kѝm02!dpAiݷi#ahڄCOK zSf'a6Cȶ1 5 }t(iB(#ak,QLA9Sq$!,DnR#ߖ/;<~8(ytӰ3ڒ"-:A\>Ea_{UݲNo]3k!µ9AGoFj0Һ]3{Hީƒp<|SOc$|L#ҿTF~&?1+D}H>qdCJVrSYa.u5!iioSHuFcҹ& "pKwkǣ bcn*Hp$dχ>`R3>8Y"|z oG.LfoB4L?HىW2+ ALktȚ!cµ=Tba T@ gB%o&Q9^o8 ߻[O˪{,b%^D¿W]hc$qϖp PV@I˫ԇ#F&CSJr]_Yj=a  ZTGbUM :~KC y$C(qe,á\gdޙc\6 xD_vƔ-[3mVK\ (fq^cyeP0+ZWU'X$WAzh?$;V߃EWtN!4{"6 G%MB:™5Lij.+OyHO4v iAL0ᯖe҂a9]-og}i6&UX^MKiJm"۝ ) ?mvuv, DX-=]ʫ & ΁i/U{16N,/ɍv믋:Q?"7`-\a=EGqdz''"ar}ܱJG+)[fĜ)']JApX|ށ}Əd }nwg꾲^:CL"SX.^2=O ޖ{CQoVmfc(8u):6nc9_`@YԖg+{Hci8=VOX rysGeXSJ3:o_j"ҌNqH2ɋ@6H1+/ȕ= !hD$n`AyHi{vR yObfppz$qozL%'e%6 ;bem`7wa,syO^ĉF: ߢrqsk?7bj7ם*(ceGz7o&D0Ibvd BfxoЮ`Φ>5-GZݪkvy i.&)N,!S?%J8YTn…)gb^4ksVLɱk!e[ M?^8׽q\s-o2߾rxgR~(׽ԆQfLJۅqW%>j*YSICA8WћBqifr+1A ,t ;I.FEK4 PDj妜cwc(_3EoޫU[8ZCZS8L*.ձ"@{a#+)drs^lv۞jn0{LQM=2]^KG'P@MhRY<2=o҇<Lߡ|Ε bFJ"aX%޶1~R0cg fv*9 )"|bCgY:S*j⁅Qp15O)q6 U,*=lXj.%:mgsQMr9a]ռ1lNn?*)RW4`>1ֳMsKKt+aQK(=+MqbI`H`[YacueR %fNYwi;=16i|eJB,|_k8}NФig6̢\zhh6%ϘZ@G/rϱ ыt^Aᵐ#jnNipf+PQll?/@kbs2X4/.Vޜ0;uMz +-uK.i# 77Z=ZGw>ARF"͗fNDYO"=k\Vgid㏂J,tMėx4Y&SPW ‡Μ6<$]{VqY-~qz)C[l (DX=@{DRi'Kr!MKͪjuo|l;{Ў~N=3LQo+ DŽ~Jy#@ xEAc:U FuR Oyhr:umBy9O ήھs'"9GDH0T. S Ƣ=$ X]c:aSm5>/*]_Qsm Ur@+s@"KmNGB}?(Y&Uxo]ib]6'EPդiخ⯏ۡjq,&[A)Nl0QmD:iq"&/_rn~W3F ꠛcLk=}S u |彁ݸ t*[H։YEvȺ&2#$zkbj5Ƥ~a~Q# OKʵ$9P.fu{NRdצꕢ+'C0?Ի(cڈuݩAdT݂_]j$lc>Fࢢ֟P灀Y h OH¹JϾ,%)i%dnS~a򺱻\rًH%B X -JcGb 2ZVBʒa#5C>Lmت+9m )b~9E8Ugfā:,YIHI諥{ zԲ5תЩ4 ,:q2[ H5Vx2ȼ\,2Tew17ZD͘q$gG!mXVBfu=ĉR(Wd[. !z$<5U& T‚Z$K$"-:78-Y+~ʺ] ^gV6?ϳx6p*-7Sm6;dF,4%~3THF_11q:(WcZ @1Fs$WHlEN_ Wj1ZDUã7'/T/[[Br9,[~lp#nR0Xtv)w%cVL렠<^}ֿ3\X>VjbpH̤e p"鷪5*867hk/lĊYBu@`( 1Os֏4-=ʎbb]Өf$ NJcY,)'myA5,nq}sZib#E.ѧrchW/ҝ`0"bw0'8>0WgWH-Q\;fu'HnxEy=\g-LmQl3ԟ9tQ,BɅ^QS.2Vh^WGbKk c xṩ2 h5 ;ǹf%Mth;>U@}}_[M[.u~<RUiWJN-=/otAsFނ=L$DYKEMč14LBl7,CYxxoAlm"ݱ$tĶ8D{HKs2.%g&mB 1 <ҋBBA>hH- cE]S wVPnķ[VVp[<R]ĝz2"$^?aG_Y?!byjQDU@ִGfiQ9;,3홥!KTZjA#zXMpL!ÒBSVpczY?9;KB}5ޢ\4ǐWԄ􁥮ИRw I\L8Ҕp,xx슏S^&Y{ "l7`5)]hpd؆{y3X*[nN^ɍ΢!'ʧ~ƞէ\D*t>.u˫>,(uF)Q ^s3Yr8seH@nTXnb&W#wýB+Ƴr]aG!OY : ezÊԽsrv>̅~r C^H">=]#Su}B9A9ay&Eiw>K͡l+]I5 .L&nŃ((zM5MlBl# 8 gJPT/d2 u|Ě 1M)ɗ`H3@$]R\{l]4="~`{Z`:XoCh~^Z{)'6kB/!΢Cm\΍Bje,6;iVa(o:ha G:Kx:Q;U1%*37$IWE>'CN'd50qwr ے* O6t^*~  \}#ʓi(`$9㰗BG5-@kuAs4"+"nDDb8P *g.+#%{qQa\ OkwT MΡ?>Ee׭|C VwL.j ׈6P\QH9hc,+3G"),w&0[(k{y*).P}Q"x+^s^6S!g`+? q\~!qFrjSe:66(wI ZYHΌb*f #,&O:6 FzG5lG$Ssyn9iKWU]ˌ/ap-o_GzyrAGa6rX#Z jPV"dˍAraD<,vs,XS ;c6KuNWS+T_YlA./XY{]@Co0$pcYҸُB}Kl;+lAPr-= 3EVWuvQl^ 'WWYG|1K3A]͹ VrFkRTFocwD |x]qi~aKzNZ8nvf~T%g%*ԩi`UknsuaHh5R R-YDh+zT63b2,L;yQ@l RY oQEjpeNpNdIuȰ䶇zҬoԡh:':$cc5&ܤ1 3 j:Op˻3TZ# ||D $iihn@m;cԟ߿^݄@dQ jZ6<JY`Lf\^bgMUUJyg:yhZ 6iirI[.Ft% y N1𑓦 ̉d>NY~F'QVbNϕ57(G{4A'_i%@yNtm@qkua_+=oT6۷\쎒y^36NQ8^P"=Rxo8A BtW#}, 3*"]pP{o@B0ow-]2=ˮ:*O)_IDP)xkuOO*àX)7 \uc B`dLdEGMdv6{$o`"\4 Bᄬo#y;NhE9T!^kUkꥆrHm#D->ɌhÎ@~fC2o|3iH_.]=N'1 cn}w@P=%ՄkF49e#>3K\;Ի1G4lm!3lRU%h|7xG]Ty=70Z+~h{0&&`>``O=9p2<li xd>1y@ڬ^5g獈% /BAL!xdݏ~4BZܺqb9S=5jx/ZJXl4ɺ #aV@ih=`.0L{b0HO,Vs2f =iy/x7W|s8P -98d},0xtD-V$07IIsHzeX.I'剦T,JOU{?W˪*[h+)y=Dn!ʰD+w ,LKߛeczwlm:*IZu'X.ZU^0 m]{5k\M (;EtZ+0 RlgɡҊ}A }뮖<[PUO~•y`}j1 @5(-/5L2Kv`%Sy釐G]?z/I}|`91+_ZD 2M]?ع# nwwGWFz5/G { aGi(_}}F3mU:׻n7--֙'ҩ!TEH`ۂ]a"Ə9,M6'= "W/ 7 []U!:#}3k,Po]RDX4Yl{]M68"NʎIfC9yx.+uv$yy,EIC q{k8HmΞNI8-\C/P}\y5&U7.1ZDwV́`Z3ψH-Ο5qe Od r͈3ăȸ! uN|D@n v~,oVcvGv^8EZyIl Ψ7[ NΊD޴7|KƎ`"#t>riuF]ԗ8j{>"~hͼ&[c8(Y .sRl <'e~ү:C,<1MMdk` JBAVѰ́* ~4?+oQ9ɭ' H jgg=䡖B9Cž|s?|.M68/x̫ۘߢ0Ի*Qw$*.y|wT4 U{&u> Y_#ˀ΃#h*Q ">8~CV܏ka'$`tc _Sƻp2Z1|wIMd/yaNuk$'ӻvC`8YGVu_1 ƳIMZR>AcFYP6D˔~"GWЕQ'^5L|dJ*cJxnX{& èxj}$7TMzB.:I>TF뷲SO%?&(Kmj^R\@|;wr)!řl/2[s,Fyk #$ГmS1+ Q:ݦvY;o&^pQ {&gu<꒓,C==rx"M4M.k=1bh,=cY ApXVuX%7[}1xjXV{[f]JŁ=[soF`~t%xd__/~4kE'+5{_^w.<"oS⧣m'Z'* -PEٝf_ 4w&<@eK!/{@a 4gcn?}9si}8ɭUDHSr.>lj}B#M~co?o]_ҬJD+5(d YMG-/v5 "8v P2>eOF1C:[XhvG Bu1VKFx#1azU&dsAa81s)%yg'^e޸ݡc%{OLZ=]9_{FoߠR 7ic?nr<>q! [8݁D>^xڅǶvAv -4bg5^hł`ȃu鼿/,S3ԥwG4ǿ{A` ur&f cq ,OͩW zjGÊXcMs#u\qiGTAӰh,19ӸcA)i}%OؙHMW8,?ɨru'DJ8ߦ@D,S+7t.hFYI J0Cq̷WhxhrV*ѡ+|A=!y%E05Hȡa15J,W&R 6Fzi/V.wiD_/IJRQ972"k(]a &ɺr)㛫m@˻g?oqf(M9w=P0-ӥٲo3&sI%esk? 2 u2Z|siI ,бU9FߍdX';uY Hr; /Q7ܣG:˷}3k|=}]kߋivX);, -3\ؤv#:pͥjgT;ݬ7++HJo }MNfqYr[feM赓OS'b?:/'WiW'; OJO;S_vgy[ἇkIZ-.8G WnDي}D=WAPwρ0P}^r bf0֊fz]-^Iȳ5$uHA;xfM`=lNa*_Z'Cgz/zdjld?_`al[K5H ',:7# I {Qv N0Ƀժ4'؆!0*aoWLeIT#+vk[NNVM)WWpoͳ;$\GoGH(NJyi#&+MŢj]FyibIz>4 onUaX:t|sGC<;T2W<|w-~28![\d&|b<5~b0߈tc=5!BLi/8hohwK$ V(u虻ѐ 2Y ljÌ?"֖b{|{PF-aao{5x.%+SȚrMkLpYS8 vTSwaL ⽱{/slA#hgk i+|󂁰]Ki)[>4{(Ӵ} V d9mZDbwDVNj0q<#Rh[C| !iBUOM;"EsJ Ê]i.K L>cuAWk-!N~Qn*ճ;MNx ނ(p|6JXz XX \*vrBWDV¶ _靫rƨፙ<a~ţ1)C-8+9arˉ6N k!*L?|qyV$tAk`Wjh}HD!Hڸ 09HVK*8=й6mn|/%<6Y6E2$ nf،ӞE+!=?ZMR<~rVFjTVq7b-6t'ee9mC,"zҏH962UEn^tx3*%Bp~{{("|soJr9ZdwitPX^Ͻʣ4dζ oXXa`kOs Ϛ 6Jȗ]p6ϊ3-Rrf[;PK|ADeRKD#ZA,wLjYR H,E!5&ԕmc)u>lM5EC$Y|LvDWB6`ֲ||$,`{ l/ 7B nU;0D70,DlڻvQ aWMu8?I`img-VU`͕Xt(v=}(_{h,TQ r5pAmv: Z?C`E|Ɏ}?2ǩ~XgZf~qoiIIW'"Pex6z%3@ZiadgCU8 dSuJ̕(E7b'.W`QqꮬJ2 ߗϣ;RLm? RvKזTRz;]?B#"qԾ%x]nȍ`_$p7mW>1f,dٸ[𸁩F(ay c[ẁy]<+?U6$8#d.> qz3OpV}-wVR*e*.T>xَ32 @wI|LAc!ï'c>by:SY$J L49B6V˥D&W&Ψr:6l&cO2?4tgV2D|\O+ab^$GoH!v;[XnyMlڞ'I)#r"B쉫 -f6ᇐAm VC];Qu zUɬ̵*n:-XصAH,4^PD742NB"v)/VFhsEf>&:ϒt2[-JHK}qB) W%ylZպPS]J6_WeSs50-E:)ۛVQ>]M)ͧto tXtiOanb k7 ߊ^!p* kc`*+1B49o1"I 24(A"@h{Ut_yO gA\Z:HbVi5~HNfY1zWpn}`_Y]q:8 HMIv4p#nVݧ-Mʄ 'I;D5\]=bVBbT^lVЀ˹̛?(2s'K #5_JGL v>*R aY1BGLcCov7 :EPcjt>aEhR]J;U7+CQ7,kYdCq9"cZ/-:_+aqH0QI@a|^B}c7|łgP'~ l c/ JX{eUpd nP/QW<ȸc[jxq?݄ftvM%q_6Xb.kUIV>GZJꎈ[ݶ`DTܱV1P22r#.#BsJ鿚yD]%WKؔa^0؏ȕ栶.7-ZF*p\%p2v+0z&#2fJ#si*;]ꎼ!5fW$-m'/ q|˸ ʹ8UCc-q@nDx:p ,epxɫy -7>#gқuob eUL[/:(}ddU g((wɮ8qmNJ4p|2q-B;~upŧuեXn7@}hO'Tdd#kL1?cuxkaB99$5'bv҃Hl E7]_VMIHʧw* a=XLY^ȞcU  <뙜;Z9_fxnz+dNg1GV2FחZQX),oIAʴ3TBɽH>g+ׄn4h-C*Gj^AkQk8w\o]SUb2( ?X@nN~ITkc}D#n8OBC 5$.,)Lᬬ#yO c sa+jWcWL%՘IV1x#c$oC axH5ef4gELux G{{R>Ej1xc^&<埴l/N6(y .!զ ێWN469DKΑ Gԏk$e[ۊfCʼs ~PuD og'6_rQgeŨpY{:@x%/wH0 \=X#>]j4ek&1RSޱ)V5鋱u:M@Rm*]T+H8E ujW" X!G=R4pB~idvsyVX^'.`0ܽsX1UM3lXvFwR)y@ \'%õ7/9Q3íJP QhCPE;r:<١YI ]Õ~ ~rV>Wo2{G_G5:ƣmJ`)P=bf" ҳT$1*pu*Zgr#A!:zGՍ-W!'ژz\-q:KbfORvԘG l|r h1RKlݐv5 Be_kZ/&Fs،'tN;gn}6, 0ff\plykmr7ؤ%ɔF.Vz9ݙtee6mu4*R59S6? 䗰Jwcy ŁE2`Q.'<Ԁ58O6].MAkxaߋ ;.yc6|/ kdFdT YI E1nWQ8zuM2-tbJ+j/FY= ݗܜ<= q$}v=s,Ӿ *(4Zݍ. Vώf= V5_ #J5/(omKp|!Ss)E t%h u&Pf mA8*$p!{Q: \xڻ| IJC{}3NN>ٽL94?wȞH{ŅLB8qEصA+EO;f= %fs'Cz%lu/<ʅh׈;v<ؤǥ?)TєH?Dzr_6Z$-g: J ˥z "u0)LT)ƒ Z+)GSClG>7%f4P6UZp(AaHjYZoaW`}h^)]:/yz*)URFI2 RB|BVj=*̧X{F4R4UܡadY{Em* {vd\KkCN~1hzN )ƾ]YN% G@M\_Cl)&K MOzƓ.8xo, ~M@Q!U@,[#T)Uqt Rrsc.ҦMo yNM6\oLeRsU=r]V)Osew{^fV6TO/9gm%[;bvvRs(bԀϰ#Ln[qb~u?< lˣcOEgC |-Z~R_2`k"kҫdo y"Gwfq@fevԱ vŃ"iH6?.B0{m';CbhP%ibeִY"U` bD!IJ^^bDbm‹]j9Iv$E}:G@:7 5SڽΉ:ibe{'7_&yowcLn 6ɵmo.^ߥK8tE=PIB7HyOD?E7<+0)uYJ& 15"ق~ | +u\B,U/#gt |EOLQ K8#D6* w0rkZhrOx@?u%V) owEu!Lo"6,`[ {vҳ˄)QGFR'>+#6F./kB-KjÀ<;!Ne`iz~dSBJyXj!uBpC4pK aZS-,zfa8cd+ٞI\4b텑/ȟᶷUՕG⛆ep(FͯZ1@ۉh#+[Op|94= 3Y"#ѕ{ KSMuB)w.Y:KԃE71@ic쵥2B\^t0PP$%~V܏?RC>NR!-K(O23% "'wj;LXF2PщJ.vlRtC %+9,<{ ?w~1T4& v__u؅JJ 0?ȵ2,Z%yK$_` MXUYPOǺSM !B4&j>LW)t=`eOa=8Zy$Uz悀59*RD!]4~n }&?*VD}iGe׈R˷.&{Jt .O>4V `cwL_7YB;xqiZfBKhilbu׫}  )OUyif 6Ǟ=E.~~ru9޺f*;_||y; Ry<_eUø9 r Ց>"apB~[~,=P! N@DF#X%0) ͺa)t"!%N>H خhj4!#̦Az nKNWը|HpyBVH*!7#nє< V-5@p|[&A/ܓnd(nª pnpBX k j8]`c[kM>)mn{edw};w耳\KF򾓤L{ÀU]mhR=G+*'h(HơtbIԾlf\!L-JM6ZtՖz9z1 lm$C`=m)G0W#{S׺,YE3n2FMz)LrMof$r қ"s  -LG@O1=hvsFLS{=I6 4gyZˀ`[Z9byq08Ru^b;5z⫼1<4Xɣ[?JQ97QB!_z%[@$օئ("Y:k-Vͧg `;=D`MdY=iLʢ 5qn[29>7"Msޜ 7o>@]5;ōP1\ [~}o0ؙ%vW/rgV%H酠a֐<QbTȠHa-R$7]Iwuw-{s bT*^leNRBC5Y0d,,9(+}φ2 U =An\s3f-TaOk_y꘸&85G #)P' I@[mCg1.oWmʯl2\KgzTyq}{ĥ"âlc?Dzۓxw;lo㨡Ҿ$)M?$uN#)aK]lvW}y½#hqS=!6]S`sX^e_,W@NҐҔ7F8t)s ,Dfr ;g0 НQDh駌7o)Dx("ɋgy+R,YFFX)E]:ߞtaLDCVMb8N4<dv>F%';'FuISH~I yuuq`<tg:Csơ@&[P}<u7|p2{O;ik_V:(GcsTvVk듆JuBpDV`Ԕcw*z,%۲\ZIpO5򰺊C_RjEUPH-z\N /rj KV%6#yNEJ:{-d? :st2[?/Q[]CJNg]`~%@+GeH Oѽa9:֗@a$1&YYeh,3|4wh9Jdj9K'}G¤2fW#>e}HVAtc}$Ő3!5d}ʋC]u^ Jc17KA`b"JQ@0,(XtͤCb @_/ !:| h7P/w(S)騾4IałS|5w|]pmKQ.[IBO+>lڄ plj.D%q*&㍣b 'Rlwb؏],dlMyn&GR] S-Fmnn4n60Bq|Bh,^'o4sJ8_/=fE,K@_3WVb8zVOv[zEA>>90p! \ws ?t?a]8ŨP8>G‚y׾&oҚA88_6@x/%[%Z@$j3#œdldnl\8,h {ni,j;A9,go}Udd4ڗQ_r̉}*XnxAJq|@Ay_F+Sq~XK$cb sA >󘗀si߆&zrGVQSq,eej+A[Ty[b{uU(e qi Hɲ\܄n3H0]@y5پpm]kyyv+yG{秆AU9GaPtм=IT<W>u^OOr-=TYώ=o<`JoV^ۣrm6yP eb6M*;j ñ_D{uOD#ZQ M5NUW,X/ @ش ֛h,?SO?dğʢt~W&떩FS\ʽV4e){ͺ^1!lJ^fN>w-!ƭj]rᑄq OmnPX,+%  4Q4pK-ቢ?E63F6uB<[57r.Q.Gx2W0vп-{Bt84ZR( Ptv/fպTˎz^eb\ʐ|(A.h'5 ^oD5] bg > ˜A $6PSǟ1)wxfkD6 olӶѳQi*+a.(z⁡g"tm.gJl0ʶ O924Ht+g堔f@˂2_~'"n a!++!W F|*VT.$ح7Sҵ١:S zK9Rfʠ/%w ch +~p}MkKf麅^onE͘Wȴ% /FTwi t,lR*g>|jz -l^!.UTg vS<-q o-"y[pӭ)̷5WZN߱*LQrj'dިW!x8x +_ዄ5).x,nXǛa҈ iWhu@0S^9HSD _bۼ^[t~׭8]跥'qrGbF'ʋ2a?3aq- *+2_Nɔ"bfqEI81.ڸpc=X8SOC- ^; f /\ ?A- mIU=6{rU7*7o:7NXӒ¿.w/D]rW\$f-lrHyޓc Rvqba>-#@s8T3_5"ek8q=p_qRT[h];"@v*}0O E^ƒHC>lFvDsO)gM?'-'9$ͩ$®XK:fql5uM= 1pbH -F( 5){?r Ɉwl4Z;Ad1#Ƈ1SjLM Pt2_ha𧊵VӌMK+28G1Ϛ<8wmLH\_&K)bf Mw$I/w5W$NRN@ѫsWەk--ff)U0uU+& Fm,mDT*?]%#x*>Jw>$9^ql;$*߇}U y 4q&T.QW-j?".Nz-y]MU^%(ɣs>-ôb2޵ ]wr'9 l};a7@[1ҙ둞'BН~QiAY7{8 >vSBDKKo"x?ٰ%yU-~ۨC ay=a3X`0QeôƶKu}4yȡ(O$2`_X ;o-n ŻR) @hJx=&qzNsgE(OX& QS"k&,+N$>{ܸc=LW P#l\a}!O!w+{TtQaE%=@ZgPWg"+VX1 ) -5hAIe[K^be gX) 0ʹu.\@Dk.iiGELB2+Gs0*?#Q$$?5rS>bf\X}9O!TՂm}.}/-PI#hȄl2PqHԈ7L~E?0KKl1{mrK$QIXרY `K%{LbޜK/@NE!돧 =ĠEq.SM{Pw p?CU2Kh-U[KQҟ" YxP6X=O"N3aNLgdXHHV_^u *qWj[쭄{@˞i?; J[kArC'#Kh]Ώ)7FiL},`Y2<qdUP2霠V9)o?jeIwHXe~F'~*"[gJ^S5  Ms t.`B 43P̯vRU4xNӈd5ךX ţbi6aY}?P300PONe'ڭ_[O\Ym[_::m>Ph4[8c2I[zӨY)z{ʥJ6|z__'4WVzJo)j7&!?"B-F5נ2[!(>`.n#Gc҉UiojƊN;A !e~yH$YaU5p{2\4Na}'Y"Ꝇ+q-\1<Oƕ&b$ĔdY̅ ް$Ղ6`뮢򀬣Nju4 YMruZ];?h+\Z2ݿ@DU.EZ_t#%k6jL8wa F{Tȫr;Y.t[>{:uG GY}gC ?q}GV̿(E~):|ʴK~ǻ`%|l|ndV&rÃRg ^R޿obPAQ9zsf !-ityw.15=<59ɽ JM$v_'62@D;XOP[NCљiN|Jt|&!B0S0:sq]) q$bDJ ДԳAUd!yƲUh9( >I:a 2ue]~I`ZSֵf lB@ SCx lOFη; c]P"M3Ecaȩo )wد<1#7FpHy^aur^q $De1Bu (mjbb{orGPp[ ? Mt+SeCufu] j`tUލmlR0}@. q]ݳs[kdw7z Mkj1`x\Kbr8`p#P?]~[[%/EOj <ŶZx+Ր ȣ>j]hJ Z'"J ޒ,RJ:2`*ŔopZ`^ ;y/w8Frj =mŮ4 |hc3%l~.s/:~vW窷9}"Uϝft^CwcSU:`۰}9Hf;q@L?de ]bXg2|/{ǨYhn4ؑ k>OˋFLCSPd*ev wSVֽ->bbɘdy%~ݓSM$S&I[/Yבp㟛Y/Z~)JJU'I̧0V K)Q0'0Nomj?C_XW:6}9ee3eԄtG-vS+ōV~س01xьa.1ϭejETD :  jF?Dҷwm PkZ9T/hHiY/t5Klhi*WKWkoҝ6 ПQ+ȯ =)b?,hv'9 @X^4ooh&Oϣ~>\#K$Z~2GxӟҰ'٣ khV`dнbC?UBS\}tC̳*e^ߊ]w\}QdEQh< DuĽaCke%=i]E9Qm}ݣkE_.𭿺)Aу2sI]YiJK2b W^չ  Hkr*n=f.Ȱ]I؃`dV) ù+ )?UFg%T'Ah3qw!t_=RUzb.Њ\F{Yޡҥ..^.L`Aq-@+#h!3Kz6q*Ȉ"''%D J,y8Z`&[\16[^lfqqz5 gVh[5_QIQDO.gOP8 kUSӸHw8QKB!YQ_*|v]:)siq|7Y+xDֳh 8R=u%yL˖!;NryO9q&!#S/MʷxٶQ Bpþu;*wYL-{gBz,ZHe%W=7aط[m4EAz䋓{ nԗQR8g"Y/Cx=ÛM߁  ş& GA1M\W{ tVj<%63€Mv {8~Q`t<Ơ;DRYb ԯIq?CcbTzy*\pK!; cIs:}_G}*O yv`K[Y'%;>adkp1FYtl=zBzIH^J-)1K G\J_vUh>5|aCs0//( xz&lyyNtkz4]_?n̳P1~^Z'E!~-G_\)፝VT_1IOv1>!:g @8 ]tHO8?}ClY >-A0@] ) ˌȊՉT Kl]aN9c,^8 wY9}z涉Ne:)2SBַ3FR< U]]#Յ=O8lf2) Zz$MPU5x>j&[xL}iٯ2PO4 i*~cyF7iav8#ݳbĹL5NC6:BRKǥVb9?΀ƅfTnKlK3~RB.(":kIT?| ,".DjN0.>½ƿp3}>R<#á;\L|帿&EJh7ٱ."I|xDOi =ly &^!v[2k*6~3^*[L*x؜QQ{_c_2qw@(֖6~jH9o "e25OORΉ=Yڶ./OkdȒi{:L~lR /ffNBhuMmG+q"& g6u}TL~^[+^O ;>>pZaXx-V|Ja';~vO'$M D\`%\|f`\ͳ_F{j5AL,|\s6eZ}sXoV ҅i \mtEqvEOeG45Otd >,y^x+83+Z |`ʣHT[E8D{jCTXtٞ;hz0rU"$8 3u=XysŸnJx#:{J6S-ԝcwu0КZGr$GhX?q[<\ ;`A&g&iՏ }"°ZOއu0/\ n׹mFNd ,V!$R ظX>cI`ytLH;+ ՕA!ϡ~EM]dz2SFGSɍ:toȪb s0Sٽ@X] ҟdp` 6kC>BxV,aOݖ,̭uyR 14 ($:,x)5D7LQZ?j JB QfFc+sPưkvӂ!Y>ӣsܕ֜huȾd:r adI7դsk Y؋`88"_@F =n_lDƪS˳ݪ9żgӞbLr$Ng~+t٩I߳dWDۛ;qOnlRe u1p5QAMlkO8Fa Wf}G-+ЪisA_YhKۙcipLDiArIT4&-l{3Utjڧg9e2*mg&7؜m`Db4 9zm$gŕ]aVn5[@͈l1`U;z_D!I,Kn3a֜NEn_WD*M39ut pf!5ôco ’eseZ3DEVƱFRuP4A('}c,^i1O{\91zѩ8oR ;L/ϵ2nA1>2Z[i%ĭlo+Խ#`oH$>_]z|r`$b76$cǡAkS/d!ED.R:g ?긌hj ddBъ]cr(>rm$ T#WE8RxE鸑; Z%Ull;Wv+~M +?)-ʆ`K)4Pǧ+DEb}~W=rB,b]O+Շ7@@'jGƅgxzR n?g_bM"qzGlptmtl>v-&mLj+EbSMɹx 0nDHUVEUxeQ{=*lyfT˵[rW.Z[qbTܱsrЮs27;xc?<+'`iunl6SAA(-#OCR]q1I[ibb/8KcV`QZ+[}i1J4Qg}/In{sGcj|ćW^ƮOq%bdڄO2fKYP'~@vGbnuwűuwc`:z#&ߊtWU5nitd.b)gZ^貲SAeDO̘D ^"<l m,jw CCE tلjKr܉$n$hQb9 I8O.詅gEg}ԍb) /64 #4my,:^ޯyM}jp㏰Jܚo`1=Z<1~qlbix'7y=܊e׳lDRG. ɄTYNJTWv}q;Qp Z+ˊ8rn2_2 }up fV:6Hu3G#-F߶4/j-N_KVQˑ6+x/&c )kX~FΨ>p87h)onv;^ԹKNAN~@ZɍCEiB*{VD w @OU+pBW9֚¤-kПVWYf_r%jܝNY>;E4#QJ>Dz4w.ٳ8Tt÷;0\ ~:1~jf@co\l ُ#3\)ut.3 7Co.hle=̮EV ՓdCޅ2;Lڋ{J7 f]+bx$a#jTO'>|v,Sz-z#>sFU:{Xj. c2U~HxK3s䍹%Z%j?sI(36>+[/m˨d{^Hu-;"bW K|ہJN}\~b)ߚD󫎓s0 |$^qG2`gE%0y R"uqDJj0wy8i'64tNkz2 3>|.;@\_0uB+=9C; љ8 ݂S/Bo>h 'b**-X:עF=BZznkl9 Kyt?4jdV +x$ v2jX O?]ýh$&k91'ܵѳw:đۉ4lkl+z-U߱UG0QưE'X^)0ָzxf1$ QWsv GFA>5eI0m.؉!\I2r7ڰNp< f l"a \6?j(l@I$t*<sV_#qX=1,O c$Bnῢh;",fcB>4g©+U\E\~.W}+AEw^t#i˘x3&\WdikԴҗ~ōe`[Y.SL,@d&` GYy+ c:,یSk X>sv gZ5lR .!WћRȇp :Jxߚ3sl8mT6Z4w#x*Psl!b) /ZVW☹ Dԓ; l>p{j"ɚ y+ 3,LÔ1if\g>=3x|qa@*+%i1qi@lYAbe/Jr AmJPg" n73"$ uC|~I\gc Oe)I29o߷VrvJx>۽L[fТ@Uk05L61!Q|yXf7ҹۺxRFX:GEeN69MVY(\Lg>I4PL%YY1Ɯ(pJW"Ѽ IPL"}}²%Nl#Lynq#GږAΩBkdg#!j%M~Ͽqtkk\\9^\%w﫞9 veQ[!.yi_dkWǩ߄~1rMKh;on~hvi8057~Viʾ~M#dv{NL [:5˷RiVK:B5J`R˚*tnaN'Ne+{+"!j;c {jytGh^${P^G4Q0=O6DݫMiȶ4 #?V7@cwm=p]wVEםq/ES&-hNVd|b0n\N%rekdZD_ 7e1k[.n#OApzuzYAeKpPZ9}?, ;Ga!|DJ[#NyW4>ҧ,jpjB /5aDc'!Ѥ(X ~fwu@G+L^إ5)_(-()lpk;:}z[c囀gWۤgi8N3պ}x2.~8ur}xA5 dQ~@q ! _M"lqp+<\4!`'mǍc ,n]xFA}pN| + OC"YwI>oLuS #!QNJ_56,dYGv`8Kd;RqqE+Gnɭ95,V6|6D "ekSP'U< d W%y%(*Uoob%XA޴idzc4pS|xK oeޘi_X& K ERH,Zys˩{&POI;I*.`8Z+z1OA7H""tLwoϔj}DϧJ܏=tڴwwb֝JR%6]Ѻ] X0./ªuk ᯖCKn*z Y8S0=xI[D&'xi €q Ƿuiw屵jm[=V5j}_ a=P+j9iIh NYsMM; e_ed`5a+|<͋@o@/xX ek92Ȓ)Gŏ!ť? ka\QAsO4J`Tox _A1[Ԧ mԵv92e2p pHr/ҶVgi\>"MMQ%8xl.IOc+Ud@Ep^N<>V6wGQ٭sSJ7|}F@VDæQ Ot^|.j] P#!kwfa>rĞ.yF]@fv%DxK6FeK!>!pdxy7>WN xROvѐimZG q읜r˟*e`eq*T)kEF~gFYe*I- qqHReW!ԡok>^ij$px .AOxNbjN&'.\Ƌq|m&a*wTmxU$~ '~ʗߥg~R{K3@q$Jbjq2WPu=GgXz,lMFKDb` 0 KF9q҄*t*t.?PÓ+cȈ~v\9aNPv{Lfev$$#FͤbǓ)xG<[pYCBIF|;,[E9PEJb:^&p5Y2S/FWD qՠ] ދkFL5:P/eHTIP*QSx; {JAhs7*OF耯u.eRO~B!gE1_%nxekHJSG`Fi%Jb\!.-.u&v8Mssǥ{kUX?;,$r!W<jSp `!iAuW:sdso:;%s6A u %3T9ᚅJ4ITwT4}I8 w^mˠ6wNF?EÓW+̀$x9\6rF-f, X,*x0HDOg92jx8(B+57m~Wz]ŵ.C["(ߍ`Nj &د[+/ɡJE|ct;ʐjZ{C7 "Lz:@׵+/ \=U[% zV !ĉLf)?pQX֡[ |\s1\myE4-< 69;#%"u"'h % av?1k3 ailC-o{c<-^-Ȩ[: E1bѷeg;O@ÏNEcJ0eTo2{U Q2T2A\IA,1iT}b;I#spd"Vt.gzٻqU7K̟Cd;kXC%(`x/q $io?m7}#kw nkgOYT(dԓ6B=Vj2e`:K5xTJ3LuW(ᲝJ=e>8'=0rpLpd{e*Q|?u0l88}qQ)h_'WGSȂ:p: {j!-C RdG@>Xv˟֠gfzbM/֧K* Fq.ܤkHɴh6/%Y+⎰j~M,bӴgev{FyfWDV`l^Wd쵻e9n[ho>U4Bzwqw7 m?JGc."^oB#i ȋ=rr\,gCZ[/5cחOZQw [ !^HaxwrDk|Ftdst=/R_p qkT\48* ~gxK+Gٗ.rx東ySPX]QX܃JPo륂Ɛ [&Wg7<Љa'/s^hnwDWVtDS<|ע2^ͯз&,}3EFXxRa7 pJXo4ZkWIst+Ȧ}1z 2+pv\"DUB8yW;&[ui\λ+D d?`f~)Nܨ^X')<'26TA.y3k3z23s3E:@gcSYԎ=kbbJ( m4R)vY'y~BjX%@%l[\ÝB>x*E_9#)~n4FZk;o&^1}"ޤNԕniAVRI} ӵ]ZԜ΅6tznݍ~H7 9}mskv8BI̓X(b$dQxڎ++mNWKؘILQISy_=UMr'?;8~[_K(Ui@ ^~fSf:M٩k?E2k^{Q  m(4`*ZwFE_7]3]s)Q$>pn5&9ϙ.dh]ጫ6Z6Vhf;jA5V|cl0%PdeEFcRϢiٽ'3`<pxN*v? Bժ>y"SQg,5DgX_̽ܨ p$Q4wa[DV^&9ۼ,9qSR"""P\3t۪?b܎Cct'<9r;gz}YVJs֤y Ku#Y~V5Η|97M5nվݞ;1*-jV.N&.c#|':.d2=jF*бw"_@MaHv[$dI;X`g-m;o|)iBWܢ9Gb=j"__yhYZaHPJf!xgLne]#62^Ʋ5ֱc+&Co}j ]-NK@Is#ΖA'~n8Hfn]=n L}>=HPб]JHP1(lZLƾi y+ ʱӐԕ(&iz{.\ DafWJy\+6z|֍Ý`1C^q/GYD].?;7@d/D_:*>MWSn0_;"DԹ@ںPte{[x8{Lge&x?%7ru$ . SCGq I~rŚ_J+ݺ-lNӋ3l!Sx۩Ne;YId{Iղۗi/k%K V!}Wuڥ&";'1I{|Ϋ775dsnh?Cos؂V>]2%j'scn@ސx|PSZp"C?ɔC\[AS3߿uX2hh*c4ĂvsY #<*Vt cvrRO:Ɛåbc#^Q@I4ioY*ผ2 .IsAb_RRsZL]Ϙozr#78hYFE0@&woG GGX^ݺLL.ή_Gwqt~S,#3l;rQwſa@8!6r]"wH?n_-K]>F}mioGH^|(Ղޝw^]CPEh !qV][fTj[bQOR3>E'7fߛkzkH%)6V.u^kq4Hrҿ+j9 qJ9VEZW-t:xvUT;k;U)7p&X*۶B/Seh~K JPؤn!l~ΦK gk1 [?tnhHd9fB'Wo#JCYmUTJX:T\8 R¢3FwA6FST<7RCSggˡ)NȰJ*$2 ev0R9M-*:4}./vn劙 Ntt!ퟰ!|94UՍz%MqGb #B5y*ĄӣTU[E8U/_\'GWhe!7S#3k1 :'<]W2'}3;tbvx#8Dͤ8#ͫնwو MF+iR,VM&w|- rk⿗nj>s\f1>X8TxlRpu ]m&׎0:9lm6Nk F̂[dAi0xW2fTq,eݜ̢c ,kUEDj! oAoykIUd\9Ea|"*/wj.źN:U 4|?uSJÙ3a:O.O+5E[-I3^^FW /D ctw~o"qnGZRlOAo]޲Ӭ755i28"}JwG[E4yxenKyS zPbwZHu9>`\i(o-YJRcP;jFEH54M8.0)!$ü4Ywp6C("^ _ιzQJv5g'q:/-XurݡlGS_uo謲ㅞ'$ (ØYhew]FԽQmilREi0i~7OZ)m!P\W}$C%Cp[m;+C+`ڤ5B=}dmVHGr"Y?V1r}~ t-v`Ҡ %4#6̠#(`E֌YH%+^>ŧb#2NU?5rifۮ<1 +#~M=T5<-̧(]җm*jqU'Y5w`-7;eyjNP6qt=Zk"XĖZa-s[*/2gQ``t+/f  :?+ u$M7H, fyg8g:F(/4s8ְ" ,r6ZU:IL8/h{0UnMr~FU%kyeD(N;ZgSiu+;%T&,^19w"JYg8/JOΗgs||c[R?h$8V 䣨 E=|V%jR"a6qeĕ"IIbs:J. j9GЙYzd!1?LAj'\ݣjA[΍Ӛ3G蕪2Kq$b`ggƔv]HWY4چ7o]vXt]U CtP2:uh`EA"|}{F _|Kh;;.e:dJܜ,uIoıGHJuL SdH7_1nhq {YS{<)sX?IQ$D9nQFw$QϴLH iP|'FKd:唼cz=(NԀ**ұGm uC;Ro4KWpq| ǂ mB,o}KYZogiU;A4o^BL@]cDDiSVxNGǜ[ >lq!<džCru€EGpUpN1>>?t!9ęڱ2؞ic1]| 61N"Vִ#,E_`y8zW+șt P%,빨#7%wyc $x:7N$r6>"ԘDe^7i8r b`)F% ,ap˝V|Xb`}f#G"t.F_Ps>am2hOQ-D,,o@а3.EHs؄5[-e`5e#mj A{оh\p[e7ԔlX *2A:Zb,̌"`e%!wa^;*n$\ 8K$h& 2Ɓ4e/mߧwɮErl2'bAp6/*bRCy*tBZP꨾ZF{-m4$ee]イຝt0y$;X J2YTdnS^y9̶@N2P];!z&^5\$L'Z'I@*_ӟ&NOaG p1S3zfs ma~G"GQԭx#a8N5 @F *j:Q!v aV?kSVse@ Gaos`TE?:,}MdHeTZk ԧ!!Z oh!3ݛnIrĚxɶ6 =}QPQTG\ﶞKoeGT~.գF`]ętzE4vUǓR`aE>ش}٩4G%f>3Ma9]-%f_7endZBM}^}/8DhxS">#F`p]'bO<OYkmJN a',n ݪz3(e6v} ^6"@o l3jxk;%([zǛPCJsR0JRkm{JjE0I ]>J5Y;syu1aRCܒ7զf FFvg;(.zS|hTjUmY3Li2 + A=GU Nvr% ]tg*דzw{@$=eT~ⰳd'eg⃸Fvq.r0uGʅm'Eyh& 0EUe)i`d1?aL 3ObN ~uF S硶ȅ2oabeZwUS=Ӽ E{FgowUae\l ~5WԧތT?@zHTkto:``5=⺓t:v24%7EY!`/ׅEAM:=q!~dis-fA(7q?Ճ$9C@`*{< tKq6{j'qo_7l'9A!C?{q'Y#I{wtlJϧj艇LZL~XhS_ )? 4C/)!Sh;&@!3#.|ַ^&qg0Nt+#IcD&EJLn>} Lq|HC.a[" f@oKbI=5jI8S9N)XJ jX~**@a?v5Mw/G^Lͱ܀.e ;X݌1Dކ k j iWu뎞A^^tI{fMdq~-T1ke[KW(#yN#Kŏ+W=?]*;1hז3[u9<[D91_e\G޹pNUVICPmKГdžOiF7{i2 .Fj ÷5&Y٠ԇ=^hh(_orR⪆=Fddu-l i2SSӇҾ`5C&KEG W/^xY@GVrH= /K?5M e=[V=MHUMU_fY kq=^PH9Qvc,3{ Yq"D(g9C}C}4eq]18s)25ByhL>ߓL%ha6m 12TV@tTfT$ltcD$;(3ڼVîhH%M}zq`ޘ3V? OWvYriyafyGY;u)d=h^Py1@*/<|8sSe_y6'z㋣eO¨[74J4]g(ڍTPsۺ'ܬp7[s EEf3HX~ i۫l}ﳖX}4A[墕jIl$;Z.}ӀIҹ_gchp׼WE^4ۿKWGEx@2cgÎj=4/S,winEP ^{3"E qo;€ ߵI t>S`x]]>$? Ұ5& *RbfjN&&iUGNZNҐhDTN\-v/b'hJ3l9j :j(Ts6@^DD>=5,Vv4@BFse)#GB|VڎuE^KC+=.fKgܸc6#mNqzNX)[saB;qZl(svt7f$YKa8^Ed,<\Wvz -0}b9^migslit 䲭ix< d# m'{]gq9 (5>t%`~F /57;J}=/YuI9z8?cn}O,⧂e dE47בgv޼X`Xu_Qe>E 27.e_\TL? ||b\0'""&‚٩ )J#VjHtҢK!I%հDaI sN ˺N6Դ +A<ݝhr> Noh]36bۇKŤKaO9mH+V:~M aX QPxnO?my$x]Mѭ9j?qcFN4|@I91Bz ̸(*( :RR9j^;mNܞ(2W~.=x>݅^6JGvS" 9F]g5YF+Oam+-!M!P'~לViY*c]R٧3x-fQ/0nW HJ7Hs1kJ@: "]SAvYq*Fv9nKLU`YŴBJqt-,ױX1ۂ{3U "np'q]]-_ f?rjZS-;}r[p]>Y$dm %?!),Tkjc!UGH*ANvU:ȝ2aW& /PMun+x(N P~w"FӔ` βeXcO[jܨ2ey; '<7`3MVrΓ- ݴh$`{Yl߲mvV%];#o@PRЌS5.nDQꡕI=`"K6@KfKT!:6cmwzo<}zz(q.b/*$%I%W%Fx20*vo|"IJ@؈4 +]G58zRj1J67Y"ŏy!C-!3^ɖi%?2[+x2dM;i{ݮHǡZBt4K\yI'[Be?Ú/44N"ʆM@,,pt/P!>.Xjs!WO*XORweizT Wp/To%!7Z~.Gn{U8[EK:lГpWrGDZ\ns[5~W$ ՠ-WHeAWv;D14>UqcU+ĊkL͑/3\=vǚm[Uה Y MxSK<jȭOXC1h2ҋ͙ T9  5lQ(ims6Y=5-O\B P߯QI^_sǗ9_9:a,Mo]̑oa}Ε5\5¹՜P! qq`وZ`›NoT@E`ȗ65t73$(8_~ǭzN͌jYg/My#-Xy}[,64K;5Sp]?usãgI.eFDð^l/r[bu5=zHws)ftn.n} Gȗ]ٙ.#ST~{סMh]Fr$Q͙*Ni9l$˴_]̌ $`Y34ہ&@`a|LZ'vtH^igYQIR3v O3 o#R٥̞Qf|6麖N|;SQa7̤6MURki )kᏘ6^#B`Љ fA6 ++氖Scqdaj6GI^nK+gU"-QcLG &#ne I<{6nz>}14YՏcЍE%5Z o@NwVi8D`J0VR}E4m;#v0?P0S[")#B]Ď9ylq&!E+-`x`-om%2(.;>u6bSSeF֫-`zoqK~? +Qɧфp9SqLSۢ.R}o&lO{lE_QbBk;B2li[ wiC3E·i"_܇Sm(Oᢾ=䅾D~5ߣ"è~`[cXXb_wz~Q[Kē3$Krq"1uf`4 wbkAΫ[k$<& $ &f2Mˆ{@>& gmx,ڋ0%>[qoXIU$'˃r0kϠvCnIj -ѻ6(FQj)aS1蹀0OmCՏyOa&HTw^Xql do;֤xHp5?გ6'y~"bomXfwl(_<+~w&\[hcq}MyzI|V}dD/QOč p31ڕ2pQɊDx(]x6x 57(^3=Ne@rh ,F:cʡ,An)#J[g\_xc*UtW ,ޔzUfρxvB9(A'Ϻ J+6^)L2Čuru.uik`<cH{b?|b}x!]DϯӦxfۭLa޴B5t:i c Fa-0j !&F 쒻2FaoW =2&壉5=ӿl^(ܝ~ndqZIc2@o;@3Q$jҠ s`{I)m } eTF *}pTXu8@vȶJ8z/sW4 wت@_Cz=EGShn0i(T w5xov&62Zm[?#5, )3 L"A4V0NZǘB8]%+S V|nV= Wn3[5t˟p&0wM?e253]߻ x%W* j$o-,y(A-pw=DѤI5&Oc:q8l¸hd#0@e&+!y)x`;m`9:*1E4UMq%[ G0[EZ\oԹ{G?-3TSŏuTSHf 2.ŝ25|fTl.^M1 ~*6-MBYIIqI׊"&wpOob=TtGj-q.W>=Pȏ?.OZLlLg]5M1TUm)j_9eȊerc3c'7 -}PMsR~V>^i! wB%Lf:a:iqj ovGҍS3 ZCJ,(\Kw-ȈۛdO!M6*k:vY?|Oy2-3l5dDT)S@Mí+Z"tj=*<'OT?Y*"xy1"U~l }J{ B%fSs я^R7QR嚱B/a KQ%dC|qxh^זM qۥ\GcXHCVK(-u=ǣ#E#ȭPgFC\P^פg')ҢLMS1!)xy䰊ĜݪW(,*/zE4pRpXbjWgj ;ZZzx.o _Xe-YObOl˧'M`%y0kiz[ Tv^D* smKX Roاe²D#AQf׽v۠3Dqɫ 8KxBfiϷm<"NYi/ \ | #8W8P=?o'SY5k(?xV7P׏':HpD @al-|;25o`Q{jV[ßoP[D'DЦ[뉷U=:n;l9a$^Ge禭/%gϷQ: +۔_^c/&<fk&$;5Cb8.L0]:n yX,Wᴸ-ܷ%;'B\vUVr/_cw ZZXf+nCC4b \ -GЇԕ%f!5ώzFQZ'I4 qb<?S3l9~P0(ӒζT9-h,вG)_p?SYNfdZ1A IVT.Wz_۹3R%DCiy~QwOKGsXTT٨P[~ 3+vgv$xjܿ".-xҒ7I0GǁNd,Cn{[FJvOoTJ|ƶ~ $ ζkcCnH(J-w&mp LD K^aV u\Nq =,LɩhS4qY}ް`3nX:oԨ8|*֧J;Jѥk*9R ]1P]XnIE9u/j ,#iaۿqj$%3O3;5SHCKYΫ,~6'5~ě w`¯b﯄i&Hpzs &Y<]Ժբ3[}߽sk2!7|W,ړWG67i?$~1h'ɀ\- v>!}4)kK gˤĖ389)sPW22Y6=W\rg-ۺ:*Cqa/oᏖыU)1~OzLiW`ӀSئPO 1 (߸5?v3!P tQTP~BzӊJAlB{L>Ghmī,'bu#6lm9gwO=/5muJ"m/P bflp.q슊ҖE#BfH2OIFo\N_CJgCnd,-tCz i& >K%FP^7DEoq׫f/ߣ2 F{BtL<PCxҧ/x8QR.TƋT,u>]AԹ_xn4ksYAK+Gw'P 4M&.Ud;65Mn4AJ7:4:wssbvrz\9f5,H4q@ZvXb(QˏTc AQ& -']]G3!,= 7ۜ}/y2! ?e h94œ`BtԱNb&tQ; Ľ V?Q$eW.8X9@ɿEH=r?ƶ@qR%* 1 g0N hܰ:(_oz>"5\f 15 tU(۱mgJa;D%u{ 0] qfmw@Ԏ8CPAO Ӿ;wʶ'N#R&UNWbi|A#'oHv$ &*0^\rqf%("U!u݋C cLe:D։9tdOd'[kX+G[0,fx Y2ćoqJxI%,"X`T1ԛʋטe,U@BNW$p8 hhfd/IaK)FI&,ҠLr`!z91_0MMࠚo5*AC%5s@>|sņ0ڞBz[] q).>)?14pN<{ ~)c5P#sà l,mG?G&YIV֡l7( urUC `S촮c 7i\\Gee g7nih%~8 XWmCAP Η Vd aX3b* aS'X 23 .e$šbSp24ϒ}\N TF$|N!yVֻH&h=Ӓ(䙗lolA B@*!)eVLۉ5/.:.*s ~iwMӭ8-V7Y,`?H$t؋aTx`> 'o0Xek eS#<͑_~Tu]מ[2ʢ.2KX$9wT"6 <PnTWTC%Fnd {E08$\\bx ig3M^r'_nO}oiF Φ*=?0)jxG#"DB5ft|oxO ]_Ehe!Zj$,!NA yj3R|I}xW&<9%F&ɠCǒk/y z(P@KC4p,KhM\D̉^FZ^Zr2ROĀU(~8.!IaNg6HtŴ\%{o԰I283>˫XOUye^bjF5[qJqg9D?ܮRGJYj> KAaFҚHfxE_T&VqBn5n)ͰuaF6uia9ԶQ:W+M >_E_Ϣ1cM?>$M2F89RΪ{ #oN$ڢV#u2}uS6T1U=^ByqD[6ٓ A ܞ`l)V( Py+ x +-;YzIJ} ߻FqdP_Z~⣳' YwβRꫫ-Y. e[b$Ԍk$ǽoU>Xͺ-,A@Rl a4#Jct >5؀4[>EUgݹGOca.Sݴs*A¿\X%. MBK\u==ǕxRoeih#xcWnvr咭o>Տ`=j^Ve/X2g[[C :8;џr__} i>uo{^]Tb@PRXp<}]ӻYXQJ rsu.Ty/or0QyjcIFKmTg_u=/XGyf0]a|Gd?Nhhx;If"V"p4&43c׏nvl˵inuhJnHmGnY8GI3G]ЧnZ4PqTw;eDqQ`iBڳZ?+zKmwT;[zxFi̢D76+O|E'f/NDc¦kЬo < Oh5uMu0h5Stlץ"ԭrjD(P]aƦFT~Pu^ٮ;IrV!5ύ\ńLs%:~bs!7)GGTL5atY(T4A[u*~Tj2j(#o5rj [5S(Ջ]\6G-Gƅ*ac%r8w%=c0"7jl jt"AچYiM(Zh J6th5~;&#-X ņ4LݭAh<N#w".3dP6ًF}JiUiirԕ۟%l]zC/)KW2QQmɘOsN.g%~+~vMc#F*F,60u42Ȯ<δg׹."kyLco_7j2KBx.U{&R/eRa_ Ua=˃S 4O `}4ic ?w#̈́ߪ¿Ui&] y4혝c`H-u䉁Ί!lԤRr}Zd7ꑙ`5}G+H,:E玂}l;OjყUͫIc ʓ¥UO )u~ÈF eYu _#[1=&,f̄K?ev]=os9)ZJ'Q`sߨ%e+{SkNrMzͻI7 WT^#UưKH9)RywV REK4i !ʼn=nBGd`iAtwl0޽L$] uLqA4+4E9.g1vr}# obI#(f }+=Uftr8'~_tWd[ƁufQ!5:uzV2^ :8E9{^l 9/tR/hvmLpSEf$p(vZZB*.l7>BJxV[W) `A(g)#ηyxpİJQz0ͨPA|Ϯ+,:m`^pJarkp[4}^Gxٰ \~heNCMhܘa,0˛׵1V$"?)qn&rZ &4/)R9ƴO~YyP!ʉQh^/H^A^b.F spd; (2;<7 OdFvr *mS$GG&QӲ R;_I^[b# r0}GcFrϯfs1?1yT1{ck }뵤!OfH4SY޾C|EaxqLr6Ce[VOyz I^Eq\+1D7-/7qs"w7AAك Hl]ep=+IbtmOEkn=vZ/DCbd}3Z cQr^ .Cj'8:X{>r 8l,CClq`*T/܉U̟mQ-湇d)좪MQK4M\R cBr4=SoaV C4pDs]/l5q.V#6fx4~Yޛ7R릒gjE"c`=<.yo)SP&(dd#uѓ$}sns=wtط0J}>jz=Ȯb5 l۩\[0\H/*yAvn`i~%*5뷗425FjZD 70%7,Q#D ]lX3<%N-!i)m!!\T!T2mI۱w1B6 gH9M9U+p6N&r2^!Z8Rv5HDnt(O4WQ2Sx5W KV]"7t.%Ci]Vn$gUa+PE (ВV3NL0-6@%eCg4^OތlTJ?Cv$A)3DOe⫦jG̉dw zh^sgH VMP4/4l:gpWHcz.*䒌qgOF5$T;[R?PE$>,M@҄r\gl>w׫Rw4?oF2ZH*oz$ r{KR"T#+ݓ[e$jx 'DQcz鷴KCɱ/+JM,ΤUΊbO`g#>bWz^#)T>C9;DEw¹ B%udL)8.Q;?AmM u͞ k(zE%N}},xgh%9'p M;-#$s;ތѫ24Jp9[ÄJB*PX =;y@ 0Eg_NH(3g+sҠ9N5'~b2Cشƻ+ߗY:=7l1p*l!񺥨l 05l[d|k nџ"XsV4j:EoՅ=E|@X@{OG&6pdX$/iAT. ! 9G ;̲Pq|H)!DU^-P<,Y͆؊ЏDؾ(:@=e~3 {?h)~["U%.`k}OvIFG)\y0"_8fn<)k}Z5x_jȎn<]%MżO۱E[QKjmQ>AJ\q q5\31#4݌aaCFu5w~3w~Oqm# ̇zW$iͩ.(%ߔ{yN`\4"Jmf3NޫR\?蝲R|#>YG!H;age&C>NkBDr j7l]8-sCϤ/x]m JЬS}[0e:M/^ł)iΟƯU0M7o!Ǟ얤SdV hK?MhZ(0Î~>兄* `>zVU]7W˻ +%JT\BD [VtaԱf_,s5}TN(QF5tz};.oޏ vN"<16wڿl(.eD`/~Zr3hpI(~Ozڐ)\gwbٮY)G}pչij">A6Ĕ-;q 0$t󋃊׌ftMi_>&5 "˰}_M:'B_[VnQaO7^u(sP*LuJԽcgƼ `fҵJqYfrv#])ƷR)/ pE hg->ʁ%^T}lfA8[IT lͺ?Ah!Xo>QLJ`\gg5/ E@RSXΊ8t-|nxp6)uyg'5(_CQVLM 1Nma{~MzL9R o>p$SdAj7$ޓMMUB#EQgl{kB҇F'Fd.R1p ,D'U=B X]Σju=}DlÀ/ZtB1yzN ǣCJ֭KvT|/#yZF]38L`.ᘌ?Qac'%$Gq'ʤ*vaJl0 ɧ>.]OH/I%-_/?u?E2˽"Jt%Nm^cm'MTQVQv^^ z͙k؛X[@PuZzm|S KPJOe$+$!KVdk)`v4-zDn$zY=KU8F:tK0*_OEe~%..A NUcZ:Q3ˡ*]"n +v8[$C )!{Z .T[?Y(8>cfB_s5lۮao!QY}(A]/:aFϸm2Kd|4Θa?՟Ż8"g&suå,:YQ94aaCfSA7wZmbGhΌX`xMhZBK"6/XLI]"gC[TgA~DeZ{G`0ѳ.-_|5Y¨:ɬTw]%Pk6  FγIUu?3g9;.WHzE,ʬ$Wb0(vE3hW?C9XQG1c G@ttY;NV]ٲu'<Rw 7R3+q"*拊YǍ 6X~RAckDR+,,7+qZ97^rXF&׺%bt͙eX7:v/ ?c-yI,2,܎՘瓡Sc:]RnjW*pؚI+rH\2 a/shuwLgM9<_%!!Iwdu{  ≸2~C*T"QyA!9K0X,R 'Eurcmſݚ`čjMg $Fhhr1,Y4._7ştf"-$ jMKr&Hy7ba63(DR}[h]'Fj Aq-3 RKx oV?k9̜ٲ*P F?{Vƴm;XߣV/x@v!b st>P\-dPt䚚4fNJ)W91JQ7BHBWQGb7:h>k0CZe(A۳gk'*F& Hբ;/pC.E\U r~B煗?d\=$̀B Iߺ֋7N*ȕFNp 0I5=.!πŜ`Q-,av=lm[a!V d7$yaXM^R,cHSϘWueqEڵŭՓ$V;*mi2%&jm"IWڈ iT&ٖd}&DxyDGw2TWϺ+b)yyĭu! ϼh@VK_V'ښFx\ȕj%ŸtyU)OuH*H4{iedE9YHAX*0\EjG6k}efS [DEQ;߼݇#L!rUL (Bujwxb&tO9JT,`T [f~^ d"dIoOFRڂ?q* nRNA38tlS|ע5qq/!͌@A^z%$lNg !{Q5`ƤO<5#  lfدQ|탪<$H 22ǁ3#G#5颼+']$~i`WIIEtk&R-Cu{HnCn?w]|0z(d-"fP: e62Wrގq {|(D h:䳘RGƶLT_&BJq6@wP1tEڻ%XseA>HDW3Oa=Y6nc Y̬|/ eƈkl@g66~JY'ʢ"Iis]b\ 8]G$bEHnfk?݁"&$>B#kԗV5Dnq*_z.You_ZGB繡?I|/I'ʲGQ<Kijj}$i"Z]\ v{Iou˭t?Ky0#mK Yq4GXQv5lma>Ba.|+DNB&8dFE7Hl얠gE"Fo>Kq֛t7*WIɨWQ3N2)x‘>]Xh.+C@TNM)>|%PqJ3>GbR';4nǩ?]Stz(6uXs.6?'\OGt~-ҾA[}uL›ѐygd}ؐZG/fyU+Z𨬔lM:]*UmŚM%o8MUa֤+B 퉣c {U΢d;K1ɂƶUavHva8V4DWUa.oQ gE<0DĞw+n{taN{x_&)ߴXXLFڹڠ +mSaMiʯv#Fc8:Jyⱊ(kvQlݱmґ %ޅZ#tLٜqsJbNk^ƕu,c0XaO[>6b#JD_]uT!_rZJH74ɠGhh3wt" , D)%XNOJZE^+~3{6j6 ~jKSw r/JhzB7\n41~\qTD9DWX;`rb$RmJC$}>>4vw }cM Mv[BCF T2BVU;cRE\FKyUMn.Tm+ߗ8|:P\ FFFs`0vƃpiC  `GGz>3 8ofCAÇ%Va^:q}ktVx:mR"y ydDsN.Oܡ}-|I:X½G4"Iݹ/'C=WjiDsaT)u65 ) "͡HC썷E6(GovL!'W7ʗov*|cZmDkoQY茍EɽW`PQCd dQr;-%\BrYDI }z r^CNShJ<[Ju>`E zBaDvբ'OJ` p!Dco1lsQ(哾r?i:s8ar+:<$ IRO)~#n-Jl{a/SKdaL{^yi7jz]i/Bj;ۃy8 aL;=v3T_l4_gӑ6@ mm|fl(*GMQJiN -!n13:dmFfrMhRby(Ϸgʄj8pBx,O m+\}:Ȋtaxƒ۽[b}GS{׹gk ~pޒظv2h;oxVzܭQ4Cκ`\2K9ɲ1 Ѧuyx\::2 7 HFS @{j3/9& e(]*e$oƙG=~L)?AsgR\KY/@<$hGԃ/u|1@XkIHZ|pL_3n.$[{-W`ȾZqazִ nh9fAzSM`)P >'H0i?4i(/NC&X> +sHkr3Ŝ7 e(tX(&v>T %7[ ['"5j|Z+~]ޡʛ˻샨'>xe* dgx[}h`fN4vf܍)Uԋo sHE#kjpy4Y@ֱF!&IXА.P8-A_XilDA#s2Dt'?RQ'eh[xqgq2[(~m ȉ`^- z wKͽ&V9oY D;okْod" =T afcCbXF [*b%k!7ŲF^0ڽG0+*~ByBqD՟-kVl4^?{2>ۈ%kp _j͂̽^6OAQЇ-;CttQrJ뵪LC}SoV=nٮoP ữhiH8 Hgv戺 ΘQ5QC]Wq) xg7mj ~WfJy#S-$;GhQw9 yYˬI'>׆(L8Eٶk`}g|"%2I.XrpbS|e~H,6λ-+kaLt+Eա!'+H7N&eQF*,Go#Tfxk$xFp-$]`x;*ya'nuS{zĸK7V*9f/ҍB1~8cAq[< Ib$MThbeE !;t| }ar/hY R!/QGb2ogn?G^/Lozm75-5Wljb!50"4KگL2~PMHȳ)_ x?B;Yei)&?nf\00ӞB[݌.ݟߘ]={@f s(꺊>#PY~'H7כCvf)KΰMK?Zs;yLoSQ+LpӒ,)v/ݢf=`!π) ۿoa({9Ϊukqo.%/*aޞc^JwG/ɡP%L?y#?wa58bc!?mEXi9ٌCI!vjSt.a7˕PE#";^D;4lW`l!8r/f 7a`?̱:^LbOvה:ʵikFi?Dz -a8o(Okʶ1I-X8Afć, p+:sVM>C9dCZ<'TE`(jMՠ8mz?,&F<qIIH4]ɹOlK 񳴉ݞSJ_y LXM`ۣV mZT cMZ ʿ:EAG `T=yˆrF쾄r.9vIO1 QiZ.S|/$= y]8DȋH'GNj4+"=zsŅØERPGlO'dr4n."B#rj^eEsDL&7Tu/:zx@iihSО_OP!ܩ]e^;m듙7B~ylV`GOxIGR#* r~rwL80vfFseՄMu ΐd{}:[%}=[I&!w"kHH&ob vBXZK_2:HRrin?ք:+!mkYV΃;CYC &9TojN(?Uө>:Erv3IiX9jx߮}0Y0VH(oM 9Fa rfQ3!岚b@<2%xdYSwP[`aK˼YO|et~v1rKFGo<=>(;I_2 :Q _X¡0պI+(W&qpogKrq&NB<;x0 \&y:fTnPojʾgO=y`+2PG{wݣibĞy{N֜ Z`+1wTyd;z5RwI nfaIH_6ppvz7q{#F+H\;!PIֻ7wc0Y]a&1Gu4a_!SGXѶo{G&$(y$44O#GRZ8yPeG2=j~sQh0/JOƸNؽtklozvs"s`u!VUiA*v0 b*M4EVnqns!]#k{2b7NLWքw@=9l[몰ns`xp^È0Z([{GĭZS z9[`4!͇죩!܊`ۮIrAx&pwƱ%#ápOD-3~gxa){=5q02|)3 IN=[&UXD^b@=a2!.mb|BF|-!*Vg[Z y"`(ɯELOrSvt(.4{ ^MosGʜ;6jW}jc&HD-eOfOUg[R<Ǔ4CY%{jqb*6+_w("O_r%2F4b{L JnʏɞP;u!Њz9CRɷ_Ū4٤Qr]*iJܯbɣUVumNMX-)AӾ`:vNKK)Ă>}бj͠3TNl{KFy$G5Fέ-Dm-"nY|ml$Y/HI|! \%Bx>?4AM4c2nKs ӮL+clu;Ѥ$|JJDp:Fa{FZbD`+ Fd>IXK%e!] Ϫz38wE L=q| j{P5G>U5|XGz%F64zj\ OŒi;_M|dR<9iϭXD}XQÜ(\=|q6wMpAazQz{+[ =9N!\sq{ʵ΍0)ѯ’q.AҎn 0j3E{XֱoQ/կΫkC%D;[;+ab;h2Y%ӣc: :0fzTM+7ETUhvhlFJ ޭZy/%ik#]ϡ!+00I3T~/$7+XM ﯓ:s<o8)' JS@d+;mw}I/bL.">¶$@̬,zgEHX.nr z gJvɶssn"W05jb|"#A D[ґ׎otr75&݉he9("K'Ë&{ iSE#1=O  Yq@:YZ$(p9%/l\y,h@ ^e";މ/h!he[) ,BgxTf 4n z =px LhFBZ4TMjZ^/l=2篜xVtz!t ̖V֕ =jR7+sPDj@2ЅgDOT~>.c !rw|u3lcy}!f{Wg a]M2X U E^ē_]KN19`Q*\CNeطiF75VaPvJ_黎Vbu4B_c?7aX?b:NF.Z'BR@,fY""EN2q8>Ɩ`rx\n:z/ jiǯ_) }4%6Hu`l3/L/obCp&_ʷI LMDGLRN,A\{֟o?͞9h߄(q M.ex T1bzʉ촠MRJF˖~  KBH{sa;26* bd;UNpn.ρyk.Uي@Cl?iJʖц5p"l!N/jABd;ݮXڍݣvf&[%?DnĒ0(FV̹zJps|^{.p 7"vU<`]׉fʽqFtMSk$_$pgX4o}&??=|t<оkz.SRw ^%)II*muAlN^c3E&t}{qM'VB:FT(EP !3dy ep14ׅjcNZxȊJ.1,s@lwop{9ЋrR?6 <6h`7d6ډ vkGE5&3NIU&ݖޓ_JOfoǥ%~ЙLQfLaovFeJ$x{>JF>^mtH#Z 4Va9xd}wJA Ar'PslR8b Pѷa<~ t@3QOTA63դ3_ewEO+B;sjޓHKؙ݊ dg>G?xqM@4o؉cyQ:jM6$8|AQȞ[[٧JQgj=_1u,Z738LDRp$xH}sZj9ȅP3t;IcWPzxݑo6dF cit0ko'_PXVW9a_,vSr5U3ۂ),9[;̍wknB^j!(83ޢ1Y-:'JH<`K̜ x R@ zqj ]5CO#U aCBt8!b/9J0(p8W}Xn[ƒD:Ĭ"zKA:V^dǙ T\Zu7QU)R|:=^=zI 1v旽/nΏE8J}(:sG`ï`ŝoXq'9ɓiy:t&g\Q1Tm޴ڇ(_-*GAcƌ'ƠXҢ]}_G/DtO؁a|o Ehf|ru<ط vF8/ Ƭ!AO 5A3Mhl}+~즒/5ɜ vfzNTɌ =+O;x"nRmlpm桕g%IEj%5d#`VWp¼ԌYgj)CYjI?mjJ:oK :["_l jYHL/M4}w^x]yTg֛{+;5/۲7U.//qbٗ$Yyl"ol K*9Vy CU+}>؛R1T@B acLI%B:nbz :7 #ynln%/oc(M xwZt9\EBaꬳ0oomW%j41(ȏ`;aPv:pnOTeh7g ŴuM"Bkߝ6弞%o'nK- M7#Me$c$uSj>ԡ#& !T /vrpa=@{UE."F5ݞ}6>lRAYz,w,Z-Q[Ypqj$Q6f3[j4TW%g)Ya?Ye\bÿ99рKV:YVI^9@J.^!aZqُU6ِHd^č%P|}qj\+G >b\7Ў/edA>m{*pm#%'{ȅjь7mޣ6 a2?&=?<±7|c5f mŞҸgG=\B(JfH}dGH8t}lOk+PM t溔`OpBs_PJyF糖kֿhDi(;gM&N`V \vRCې=t*{_Ri7 6l%Oj0i7X:Dz+d{*Y D`Aۋ: o|]{GWyM>2T hWD3 ]O>]Q127;L y|PSb Ԇ[ξBYFB2VVՏkU^ROiֹJ,Ix.yiu7Lša^;UhNe%nbw +:ƶnsОW*Sm%5VV?gV >I# k851|3ݗWimo3j`nlXe_8Q%mkY6caaћsxvYՅZLıN[w+6ȍW-sޢNjt5I #<9lxaih ix5[> $}_Ԃ/$ 8/w-)8yh _IZf1yc ~4&!N[7`,= ֟iFemƝao#.AP͆>N$ c/x@VsU$O 逬pWhS)ܜ>MgяI>?6&nqSnliB! o _u7ܟn~h2h,zϾ0r1*n,e@_yXz*U?g& 'L33"vmA\=]~I;yPm=t#.ܼenهj0 * ?AhBτq)V&;eh 椓  J0VƜ(6:&3( xKYzS+!fW*iJڥ>/sl]=y ,5v4̵!E)4ztN_ 7nWKHSsͬ7C9/CNe @U; NY?yV>S^q}X:2*2/S%0YŜ~{59nR(}bjq& w#?>ب(L; kw9y\Q<28c)Jhj^X?Lov([2S-̐( W_5( m+u"V஝hUtSzK >YI>!OZۺY*R5wKvL\#Ѫ ۶nJ"b5ɗh!Mb}y$2&6@R"Pjߓ6?zȀ*  CM7VxŒK>PMK·U"sw~h43Qj\{Zv#.t!1Ÿ\M4x2#dgO"cҮ_JK\[f񅩏 B%]RH7$T3Έn۱G2j+~+X~_\ /R z:@66&r!+Ck<HGꃔ;ԻeTGDtŧs'bGltuYy7+|]'T }:+鍊)G$[Qŀ9;;͍߂BĴ]YKk[<=M=4 =ws=!j h a/./Zop&X*_aD9ΈN({KN/jH8*mqȒKx@Nn;Sz.3I:"N:[?{M}b})C\f&/RUV7t+CǎiϰN.7νH%𽪍NX@fH(;h{ d cܲ8]aYNA `L?D18Aݗ` Ϝ!AOw쓗J.{ ߍږ囦{^z岩чqo*yL&$k1L-,yU)-Σ\g6DU˓6 V;ça%dwVhNR<7 d41Xy8Ah[:ܾp#cdEk082=?qۓ-==̚b Φ%`:{f85΀)^_W Ɵx-WrRj$<шbQ9[aU?ˠ.OH羭#K޼#>Gm>7hKA 3^PgfPck 7W1|9*Y`?C吠zSD+_QBwFW0^z'"sZ&ҝnA mi*|Y)z8-{nC\<qbFh1*꺬23`m }* <[5SԺN6a||{oiV+W&2^&9W;"zAQ # `:Bvc%]Z *5RGgsS n< bDŋ@ȗ@=9a%G&O9慆c+ezr*bC}bM1ݷ&E8h-@CIBʻAݯ3d1Φ0>w3v*L,3C(#esykPڏ fX +WwXRPwoֻVwɁoeG{EZ9c$k;*O=紶ݝ6~ 3au@VBZF}0urOaUQ%GQ1VK19?٧,/c9NCq%ofe [=N,3 6ǸLU;# ش.x}ɩ(AeeV%: &w5K A/z7*S!g-U$7?KM3Js|_B+;\"MeJ?ŒIwX '8 V'\(Oz90p% J31)fFz%Cv}wۚBw,VLj)?.O]0䴧"Ї?7}ω) 0`Q C2!>k].yZi|j$1x0U{YU2~݅a·MF`k]>8hUz7tR;9@A[be!O,<ަP@v>EF'103> 9BڸezXYy䃯տ3 yHfPX\JI4/^H*Lfh9jRb7zg/= #e%yǥHٕHVOQ˨B\Zȡ ;#ڭ#"~lP=a0j whڧZ]+,*0>#[8/:>.?EzcVp A+Yſfs4K"F\4Eԫ-3K8gQ,uqeL *y2*W); g%v ~emKz]1޷SyO7J Ῐ0J}ZHPtEa1*dDɱ3A+'g@tcN=V}vsh۫8> R>t{RXbK%UFcvV<$Bƥ`b<Ak(/9~оx :vkY"m"d]oyUzh<[&zwd\1Iadq”Pq.Qqg# vu*&cq(Eo S$An#G7B)j"EHEB5 99i_jfI߈0U ݆#(6@S9'" bܣ8Ӵ@յN<wY: H 2_|"Q/L6Y5h2V2.l?xdǦ $dv\(1e=WTn6 Θ;}J.וF|F\ln+@'y)ˡOՔ'/{Ѫ'p\`UINRy1ͯu}`?wyI)}cPH, K 5Cc Mܖcvx>NiG,{Nư٫uQWݒx8;-'Ȯ֘әcYb-"e`LKB~4QﰲX`mj!Bs#D=#F V#Mp1F3̈]i{kXְX`=Ta-$_Çf鷒V։nZ@Ou;=mXZ#oˋN4ĥg~GEX@'Wm#z@?tSdrou. _.2yh(Pj7y֢Ygpϔ*sÝdM"N?14TJ~A!@r!(J9]2[yZ[*d4Kcph6@Y" ]˱@3"2X ldyiX sZm[%]$Ӆ^[c,d1Bjza9T+M6GyKiѵkJC\҂) i 3x.;4 L|F%qo7( [4p J_6y8LK .ɛM>g?Dn]MZPoZ*?3YkဿyAۂr:SYPcw27W1Y GV Evt;CझlG(&A(]śz;]CWt`iaZM}lQ,h=oSEU-wzoFY`ʟA!T9؊9t[81cɥBCs B·ʜp2Q'qAar9gn)a;IԬp#iGw>@'RvFA-=v{%ZŒMhuz@)3.&]kLf_Oώ^FNQ䢇ӧph=,W`fFȴiPMB"u3 F~ in㔻5r.,m Kk+ޛԵb-O}~W ! .ChỊ Lc 5WR4/,zu>3gu=a2[{4񤞖9k;LG~jD3`}涝aB\{?|q\`=3 F. &N!3iS)## |gC&H| "Ո'b5*ՈCjHdoÁE,1G#8lA妠/v L *gZӛjvEcsP ^1M`"Z`p˛a&/O=;o* !KQq*:2V~ HIA]E&5:bZf9NT..>1l7%f0&>ѦAx"hcs~nT{c)׸Yŏ0iW`1dW0-S"J"aGd\8*6ei? ΚC::\in|\?'j/ _t?X}%^kWȥ2J|X6Eޤ2_mVF A+08k)J}Flj %B$>/.q0얶$A/ *r+BXKZGFk) ȠLEw~XXӉAD|*ag"2~ц/~N*[oWș }XuP*?#3BsxUR]VX7ʔ:C)Pv֡p:ңbԓ*Ops6A/)/nq G1pTs?%kq.0k4lxiԨT[iEa*Θ5kÛf}6k?Bg= 5"| av2z~3f< aZ݁g2IEgPdkPo4gvꦰ!X H8fQ>R1Le Qy=ý.==%] 0Vʔ!T)azکur;."/7d +vPu*IU,Vs1Ɗprp1 RҖ _k܎!>RbD |G:l <:>PNR`f']@;FFqj殺əOXǀRP]`^7u~GGŽ0xR4hII(_c0Y)oLAUR}/6V鿷k~;:BțN?$@:0(7vu9^gspuѺ ~A+FlZ'~_ҿnv\)H4h0wڲ?1P]8>HƆ90\+\82`:+"D4ԟND駴 E2ɷ\2{ Ux,g> "SZR:ԄM5B./#hS{~S.PZ^uj&/אenGU@.7 %-:'R*xX;++.@ğ9mךqTstUz2>ɕ׬L+zh$(|.?;&闖Wx:#D K;v /U˞>v埶jw+GpNeaVSIY0l Kv6r,"7)B2ƾ2b=3_5UY8ωp:DnR>[8AUu\ SU|y尺bѢa:2iY]7ӅRo;'y$3tbRظ.'p'DHp-5CnCF#WMmec5="!mѣR[P|y)`$Z c-f,%7}KLP;7YLdE[LL+/w n )w[opׂi@v˅= kxKi @s n'F]b#4_t^/~^5LKʗ1aSx<:.XW#c#79[~;%*8y%*_uQE?sҞekb踤:!uS tSk2ZKRB0GtbNޟIecv^8$Y=bf=9(H+zCp-7c^h5!CI{0F?:畦j9 CRnf&%*EESK0$HRB;h=8ngW4h#I} zw4;c+kd<\S,>D( %6ىjp'3%P0ed=^д=2_H׋&)N 4O M_ۼsN+|,@fA%=_ZHZ5dڥS~us*,l%B,';8; 9`Ʃ3QxydF&**3:>՚kCbj&pA{QJmn҃F"/ZQ6n*TEgbiV' ]$L >8>jϗĮ~S uB2S:1|# 5 8 [" ziF!VBkl\{\&:W ҅ˢ2cϵ/lQ8:4кl=ו%X^ysS,V9v4DJ9%6p-IH|UJO$x}X*c3-V,k|@Ƭz"nuӉAW*--EF.=<վ- s4ݕcGY#/Sԛ2"vqA+,ʽ:"@j=/LNf'4@9. [LQvۏɉw^:Д+X3k@@ɢ4})琌ܗ)t =3g;޵[$% 6M:DQ2KT,^vct?ƃ>6UBu֦oթ( .@6".8Sf^8a6FD:nGܳ&0x:HL?hB<c+%#!̫,Ψ"zӝWJF2 =B):\3>H G ME~0ݑZ?{ي9W>~ /'&5EXħ+,T2_"+pO UDu pcȞ%m-a)+z!l>>lT ЮtRF#ΕC g6@ҁ-#3a A{NB>umsjKQ4%Codsd,ZOн!Ι?bQJX+9Jx$]kt(aZE~W+[g],G~eԘ \d%goH-FZ,+{fZKaSɼ:BG$͹ ?}OF-/c0TNxN3ђ0y/Xl JG'pUhZTbbDZOPHݙjr*iW14tzHeNoWxs!ݠ<~c슾)γYއ|~A/Y6SvXWgu =*_>qOiےBf=;t|BE. !Ű$Wi(}8C"" Rc[d}ڱcw'{$H6.d.HE*iplD YxN{wl2q|e) 80hku܁C_"}<, ]á̇vLBeK l]ul3e?gVHHKHz6D e/"LACv4*snƢxT&&"X1-(噧JȠo .Na"{tL_^y{Mג˿02jZEɵ)hp:#,0%Ya\^ u v1ivVg4*+é<(ؾ{ov3jr4La$tiN=thwUAkl$+To3I]\( kZ,ф`.Af$w=sT#ޅzNY/yiEwMa+ FQ 5["vBԟ;.DRjĪXEx'掠= &K hZ獂`GFEiphPɊ|2[#w Ÿ 螪ѷU PÛd%W<۶?z]e,QDmlbN],֚{`!'~ ej//sk-vF 4n ;e]RJa`l~asBܔqX4V=j%.vDwGo0nI~TG,H&[R?uaQ"^(9թ za텬)UG]ޢ>̷S(lxj Zo3mFNGPǙxr V<3!$ezbWPK y^.KZrjxR}S3յ 6Mߣ~H~O:<8ի3*!B-D?.TZ@(s`YŤԒeyHh %{Fk߾Ȁ$uQy:7M >k3zos6pd{r5IKG@>O6EŸ:n$7Xvݲ0j*˃ZJaO;%[e2zČhxO𮃌 b=_p19`Cdd1YfĕV yPz736JG\ѮYؔyy4u~ڈ:)»EowX:Y =S{dZci2il^g=D ߓErUGVֿ2(93!BnO ; DYj}%ݡ׽!8q"аJiGghn ~3m>E %pºp2w/VД9S@ŴY&o|f\:z(Y䷿fW`g + y"3_P+~oȋ:=0)Tjj%SRbWj^麧jO%{I!:E;vj[d/a[! %< O.W/r$x4vh{.y:L*.(F\xs3GEGFYN1$CZuK R"?JW̟bnCˀ<<$kM?am\i,zâIfEB"d6.H_xAOSSMNh0AA)YGk,t*Sth\XHHHR]SO1$S~/ FFu8C\fVt{n҉~÷Αqe-2Ÿg50xBҭ+"rLrWd5 &_E5[='@H[ ȱQ7,׬ 2ۢ< xשNe=8O(#m HH; !U fi:ԅzD԰o?7n-0&D/D(6Ll6.Ԇ 6Y=x|ae_pS8KdN÷6@R?d<4 ,ga <p&ѺJGV\:zA1Q<f-c  9vYMcלqj86~3@P`k2JST׭(O& KA̿>ǭX xܮ9([j t__oD<&+mj>5t.z i&[YGHqjiTi cN q SD}zU`=Or)nՐp{hzJRx7[b*hUV NM6$ڭ4`TflYysQaGnVJ׫ _:DuG /ѓ ݳ~.A 8=]Ɩ\ϸIGl=#)^F˔72j "A&ydE)x,Bp}HI FZ;?8´3dld<5DT|0ԝgǠ.XMOhz>$ұ] EERhO!ָGi$ 2Dsl!3xfIbF!!eK_i[:/3p|%< nѸgTHOJ*IhKA6*k|PZ&"kk,er怃@!!Y&?iD%ehXCuVFxyU Iv#.:T9}&=mLb2Iv (O~J,'q'&+8~\U {ދL.a*n6,zg?&FB"%!f7UlZBw*kN8D[_ cjZv~ 8㳧\5̈%Ym9u$9ĩE-L7%ǢDҡ[b笤è|ng^[2wGΐ'U3 {nZ&8eMAZU4?tF0g^NnnF|Dw]!͐1eW5Y=f.M!8jc=*+Lp_̻Q{~wD瓄5˚/ l伎eUQZ)Y:؝9񢧃ze E W9>@\mݺo 2ʒ@BBoyb攭N2q<mDq&}8) 3 %To@q.ے~IE 8*ouҶ1}HS͓pgK etU(.%6j;e$vMyH« 'LVeb'KU1 hԼu*b&od~ T)U~~<foaK?DS#S$~>3uǭ>6Z=v gos$v0ncvyA#ip:FNc5yic+c$#eO*sрI@!ܠK340{~迹S:i.hdV&g[%\Kf F+;vQ|N&D{6 $xx9}~0KVFpQeL t3-R ˟eG+Κ;ezYf[ZV%m!b^Pt, U'U!j!D^ Æɨٮ^{XO>:\e AHT=H{R&]c 6zhQ;~3frkʀJpkK'UeWHMͅFnMo\lb+ܪϢi˛5gXΞ,+#2D?6}ȰkN9/2xLb[tFNyo$g9d$UlWPP_ $*ebL6fu7O-/D vAܙLu3t2mlN $2AՄՒkjMHR;Jo="i:.0(p[Af܂459[>{i޸fE(ƞԤ6Wo?ۊ'pE[Z|MكՈK߱>c8-b:E*Z$NJf nch*$xwIn'f#Pz CF#w rj"ZRC_{KCD\ D7xtJ%pPH Y5[F>l0"7f>dsz9f\%y ꤑ#{l;')^R&wKcE]+u`yxga9WDʓgx4.4Cv,}DRt3u mys2RCLuW4n@ Rp񊱖&rjG6l! j}+/;RCbcD?t#Ԉ_v2 h.˃ ],.Yѻ 3'=f{6-IYF}~ zUCͮ`)Z{;us3AV^L.Y"-qC6l X~J :5& )l؉Scücf HP19&WS,:'N"¦ħ/9Eiq{ e}v6.@48Od ]<9P>PR|SĦ?3;$(K\ &kI)9#c;s0 t.L$ *GI&aUY%.SB\Jiܮ%Cx^(nj#;3v{:J)Ըq㪠""kn [Pc V͠l?qT 2T9QqxaK$;fEh=ZsD~h9]ud+J4 [,ߍu2n 8aH>?8biW5V'1%s Enz/d@a5p4E0@ Y){|e9;ZyC0G;i93OpQ (4PQ:@k',0sJ@v Os ">)DŽ49/G.X잸_B>{3cKnnlIF*^wNvMajd%Cȵ%KTQW8|^UΌ>V99J6JQ;>ԿЧZR(^L|f ^P(7W랧U: mLhRƷC<,hֺ\޺O2_t>0M|Ge4q7iD(HL/bJю7FA5|QNjmaŶuզ.'.vRua<#/FJu\.bzO[q$wtɫ|p…8rM@ay}~PS{#{;,}^s7H{sa:Lޝ-p99L B.J.qkKK@t>Cxe9@~8.M$c)|My;@Gh! 4+0?SF‹3U.mpRD]}?޶n-Q|͛6HHhi5X6#oEzu,@9351xp m~>J,kC MM!$ {3M3Mh C[|4AZXe%-j yJE~q$U_ў!ʜI5&cy659c`vq#Nʣ;rX$¾IaPJɒ'w⋝Lj̓s0Hpϲ4 1,; /H* db h{9gkV 48O _dҘA Yks]Q<:DuL鄁ޟR}(wX倦+rX{b9JR KM+Եť8MΎmn~ٕ*}oQMqE 656W{b^t,&]a9>Yy@? Hbl7ƋUٴF-Rfb]QYw6溾&U49e&*>r6ݾB[ gjc>Ý'ўA}A:MUo6 /.>C#r НMMVFZG`N^;P93B̯oq I\?0;ޭ; o`g8L.bP1fZs:O)YBCJTSf76^VS ;9^(rm܁Y& {8:h3Me*#RwVV"`m-D(u2,%*w#NI)??(OY&dz'߬ٽd!ĊѼ(`Mfp"tՔd5MB.U96BChuḒ<w(Infb:n5NT5G8rDݹ`͹- }:q#"hd&bQW72a]ډ;LF6 ~n[RNю 26"^mp(E 5UijQ*"6cB/b:s99}~= !p('6I{6pt Qy y(!)ۊwJ)M7Ǘ9ؿ^gp\]t4\ߖuW{Q1ړnA"8Kw*.Mۨa!멝^fVoڎ_\[WwYdڌ(.(uA ##"pz";l7}5ˍw|urkRCI͔yy¸/_[ӠUC: *㖫qn=جL^|I& ~S⥇0,YdyQKqw'NE|r í:=wAcQV,kC܃_{#؅w$N-|hx,Ru[|Z"wzqCW/h_1'I@+*uϨGp+-p 7`_ [/6:?WMDS}õ8 1~} u'i'=KԄ;d{h rnU|D \42|`JsDދr~Ha!끍Pb2 -̌4L:g2yucu/bq܍rv?jzu?&_C/O3iHIXC0" Uq= vGoZJF/V9-{|$>Ϳם3ŽsI@[UGpqq*ѲeyuP5ݼ.,'ۭ_5ý|rplk}]yi߶.iS{Wl"]5MV*,'v$l[ !Vbj j'w (ʦSfD]:ȣ dA&(uju=P^vt\a[ t[+eBzAE?-v8)˫2z'IJ7-n ?Q ?vrlŻg[ ?%j6?~ reDo(I0όTP[f7&T.dhpyHH%rcJ(P4Љk1@CW+5cAay7aEoVqL$A-!vjy2Θ NEfI:7*,Eg/DJm T?)@.@8Pyo _f`su Q7Eϕ2"R?X.[pH%O:$cpG=L ımKi:eR'79.$tO;RD&? *e0\'7P_ &A W~hᒐKZJ˛ё;!;\Im#qERΝW}Ix1~ND7ٚ9 "t{WjZ-ɥ2kD$)Z_'[._9bȕ(h9kDoLej4;:luuP`9̴2z0V7s=÷ d7Ku5 U~Ŏ澍<(SMI;`;3g_E&)q!IG*ޜ#`| $(2ŀ)|Xg=B3 {#[(+Bo*CpK%BԂ g AsQ @qA+b l١z)^ Ł\8ֆ0Aˁys =whLe}xZ *@@4zU~*phU))"lDa,H?!9wGǑg޳d* Rò/F9Q([[4%?h+`˾*Zd.ym>]f"p&I׉Jw{.'Wmޙ8?j&Lԏ+"-N^.g:KB*޴hCq#fla Ltmd}r&U&bi'TR1z4"7 ^o`"0-%OC 49fIZ@YTwQ6zp*j(kͲHZ_C;A]gEhu_&/Ȁk*"\JWxzM֛ qm85,y83INQjmҽr5%,i@G%mvk މ ,bVo|^ 4˕);j%rCaa oe,BOn鼗+o PJr̓N) ͚^cSxrt { [ `/Ig)>" w)ڻ =ʏK1F/"ACE۠M*_S&3] qr wO%0!-;:-waU)9={ El)'f EJg f^Us*ZUb @e`e&'NxFb"^?4Odld=R]%C!!%j>tgO-Lߏ$Jxrt~ C&/jC*@8SM-)-%D[n>d;mBt/a[ LɅ##prH>YtI*[T\ǫ{ 5H}e1:m{%N#r$DݜpX;IKs/OGN*eD(!duZs<ҵ>%|ߣ[9X%(f2ǜh۪Ǣdۀ?3xȬh 5J.rvР꘭d x*\ <*O1}yۇq_@b˰Tg ]o'ENxlB{ D;XG|NDF,-&mbf"v0(Q8oi LAR`MKKJ0ifz*9ޞL_p{j@VZm{N:ݚpyw뇓ݙc1l7rщhӷV[yz[-ܧ1M0N1C:oLM)B ;ZGwy{v_y&gH[/<#_;T}; fo(4R[nVI3(ChWGyƙT1QeE?̞3؞Nk3vhxrE}?퉮4)+}89'+&+޾\@V\p4b!ؓ u+Lpj;Nגvh[J| cƖU]{\UK&_J}w '~tE=2YNAIJL"_o0hR^ȁ-j)l k8oJ (vuW6=k|(Rĩ?"#yZ"sY"F3'!٦yAD3,ÝZB?'A( ;'IІipMAE!3+uʹ#EGQuJK̛g Ўl: do z[Ne DWR\\̹!HCw,D;.f[ʲ&EhD-wJ`f(/zP't#%970a2+ZH LRSt&bK+{7vQ^^lz0]%AMEWdK],v,NL\6ťͅ.8n ֑sm)Cpe!ܦwaCe/.U`JÈM^Pٔ$TCQWGށ`ůW>@Ĝzг&w&e,uM.b^fKkzP3\Uz\=aQ.t>K'4W w Cƽ?3gT-YC`Dbo zLHN4QSIPo,Z2ܗ;YHJ\F'P^r$e\cy]YV1! n}+YJfmDIlw>L8w Ip 8c*X.|&p%K<+O#7Iƃ&Mm`K>M% c8PDzaaƦV瞐.g~.֡,C* D& *,m qh 󀃠 fOL9 fqRnj[_0#kp/ wJSX0Xa;Tp{fIoN!M>y[q<NU7˭`1F}#2hMw<z %ZMT2Ll j aL=eCW9Ǚ[=y#E>QKTյg'gw`b:SukzANKSZ"B5QΣ9ir(_L+ DI"6%<0By~؍h,If9T2P"J*sa\=`nJY&^qOTm&xKrzXFo20~-cܧJm8" E(}'qW^TL pb:7k8PR6{]Qkl#j)7M]-ӋUBFQ|Q$h/ &Y#]'G$L}DkDD.6gg?Zo\`u X~Gn 'B^t)iCRa8Q#9 EߐII= K|((9%CL?as @F?N` X1z L]z&xƓvv:LT cYZBZ;hM(&CqzZ0+h)bv8,⺃hӨIrKs~㌐zz| h;ɒ%l#fCՠ`rg煐#{I<-ÕyBcu(iN[j58@9א"0fZ+V۷\&S2Q DkQ!ʀ})6>4)J뺰ײrK{gDc čζr>λ- `3>)4ǒ ո,K)Q8z Gt)9j]nu r/҃=gdžblœ{@"k'[Vq;bbyF<׊+K$%G+/|wXpZ)-R68n4 4(_꿁?{yn2S46!aZ\h& EŒhPg9çODig{=Q*ltcno?YLj0`sRTR5/z|X'BcYވVY*'{ڲ|oz5wd RW~f~Ʈi)z7pSSj^H)ԪGC͝65w]>0h P%Mãj?PDR r:=`&(~ [2ql5`U,T_@Ǎm]O݁g`I sǮ2%@/ݹPbNWL:SA~=6C9&15Ւ]^jnkHX(;-f'?NɓHu43=+* [tnfʥcneSbw> Ya== 2oKam4xs`!H>q'~M,UL9 "{rd\*g]Koݝ YҠ `7 !O#y>i$bB S՝2Ƀdwn Whd2 7@Q j PY>$J-JЙ(C|# Oa^o h},֥4p4^vv$-эb0h|<"#M[35fn5 co$HՖC|S}W eU<2zr:zRIWHz/Fߗ@b #NGQ( v@C/BߪިG(pFr+VO:ܕZi4d[bJRzj^Q+,NbsYH /LSV{U7|>KGRvfAQPbT~ٯmtE*TnXO&qw=F'kc}Ih#j:Dҽ ga EF{9~[J!ZrO<4=vd2VL6~>pH!bjYAQ!ѧܲN~UHQ̶ud l#? #2BM2L:o,E\ 9/ah)7woO¢wklȷX Bҩ9DGc?"T_D2~GEu|P LJhkudƕD-%¿ }TSl:f|THnH~UPg~JDyϧZ;W,XKϢuNE"+`e\`#2p{PX M_&? BjBW prjoUTdGSaꛩ?ʷ n0wbe8;cEk[!tBͿH"F9j@ uN9[KꅘE2kljܷj37whi{ͅউo3O>*Zbzh:*8K.ofn٠xVG{'f짞2(,z[ َ=E(R74N/ZQI2"Qv4 ŋ+d$q`'>TsGW9\ži'i 4{Z<#/֎4lU[pYs|r,87G_(4SYlLK6 Ek]>Ayg$;F7QS> tO7}'W,]yXtyP $]P*]H<U1G:^.A $ ^7J)YOƎ3>ĬHl-\ sI"b+VkyFV#Z̥^iÍ M ? 's5WQH&]лCq5D2>j9馛N Uŏy8>߿( .n{ PCi 4KXUd c|FK܅WUhO03hx+ghV~⤱1L{Ϲ]vw&5 ]g! qUH|Dq+E)-$(Y0x}GN\xlDwک I0|۝֬M MZ'wLA8[:!بhݼpöEhLr( Х;Vم@i^eșv2HS vJ ,?}y:PG&MMԵG4~o%OJ2R{;95|gGcZ`չw!{U06maI}  PV1E_~eDaT+A]w^ iba!oXt8 ݵ3%߀ai7%tùT0 7eapO,n1m+`V'"͒8C噁Bٙ;HnmӸ:S(? 1 ũ.Tʟn䤀霒 C򇳍>3ip΅BVjKdq,Zc7LO~挭 *uNɬdKOt67*e9jNѕART_Jz%၂tKՓKxK&)܏Y,9Vg "Z xǫI&=hJ )o ~]xd`_y%^$#TheU,*?;@y!N<ķKxRR&73:Y1(1g+=evO̳o>moMJQ3lw# phL`洘j놬ɏXm1e+ 7u8#u?}7=~@0ܵi^2n+tb5~DXZ;?s긾Ֆ mtV/ 0K'ɞ֋fpI+83Bj 4x2>idzwG˲z0 O8o$L.bCv[p{~:NI FtNhbiXRr[$ S3PWn(paމ|:8w3C(qW6 A{6 [кx`3&'q45()(M A'|}ds2jY[%V1#T*"\`Moc.Sbr]캫K0~jf-<*-7jjtKS3's꣬Ya >:ЍBNL^@5Xٔ!+#^1[RƹsK_y {_¡lˌJ+9V 7 . ]>/D6N$3TϹ-BZ\'vB*}35p'r0X6M vPZ=7 I' zTI>lM( HK >3ozhM`\ؖu|mj8s^HM8fVo/>Mi.ih)HJ-Jd̐kTmɴj?ꎽ32ik-~H (Yt\)N5k}N_OCSEGwUuة+\O^cB "в* iNԛ$ccL8r60{2Ѥ֌E xU1֫2ʤ606+JAʮR>$/ʣ7xy"kלR"}7 Y/-G CvKvdgȫw_N\D1k9 q !by]9n^'xUcGNVns*v.9r>(V $l,P GM^QkJ8lЭޒS d:;y Lq;Y7qzGog*VgE9fUӰ !C%nI~&ٵ:s*\ -䐒h}HU LB~+.oJ2:O{X$>a$$X CO4f8']DCX`7;XNkQ T}DIyp"7a!rg 7.:oU-;Rdkњ J\4Z*ϖff`I[%wL;Y? OKG.#Bִ_LBX9vDƅo{תw6v>(/KYbkzΫ{plhHO;EiVDhQn6𥀆덃X_)K-0=R37E/cDpMhwBfUI% цl\,(J;Ww2fEwPJ ,0'r ڟ*Bfgn wh!o2DrYFh V2B8ŜnPEx9[|!Bz~:E9N_hwƋ_9nE1&aH5u󈕕W;6(:^ɩQ$0Fn5_H"$jPXԷ(kJ&jIi1#hĹ_.^l/!]RJ=eJ9q|yi `LYSkey5^ICB柹_Q̠ QS)Ewb )vb6R 񌉽j X}S5+Cq^KyZЕ#Iwj&S$̑ [ר7| L^kO~J1kqaGXt 8_PSVҨBz;XO؃27ԭAza~f$ \ $ W@8*tm's,ypxi'.(jkusË~3mɰ2 qث{*Qnl5P>)pLA1隟ܜⲬAm'}~jǮ]+>6]kDnuMFZ[ꕍm UѓG̗ʼn}FD;=+~ pVQ!I2G1+v&hNph2q]3Y8%hߚ,jtӌb9(ߛ/ _-Id[ t VGKߜx_ϡEQ]7*M 2u"IWi H/\ւHq*U/|i ]z.RE H[T%=#@{rߺs$B vy )(˥Ɂ韪1,bmS*!ۈ>P͸iGDcv!FH;[3Q9[w#ȿ[K,^:2 \–p׀$GҺ@й"ԕ FK$oG77힂zt9(_Vt[-{Z1Wpְ/H\ݲu^U !y+k 9Σn]*=wRSB{^'|w~ryZBR ߊC)'{dכr5)I[@ÔWt-|ݔŬ 8; z">bESF%.H02 22co0AC&JJyF 1"P xRiI@PC&r`j$=9Ú.6!< x, ӍFzjj}BkP/Xi+1<7NJ^mI>G֐8dGr-2piYKd/5}?OiQ5ș/c:R:lN뿛s@rkfPqr$rH`zVK ѦSEBDO]@xK3 h_ Z)⛷VۑkY)a<Սo1$K:|IXy|IeBZFh=j* KN4yÚ1d%IWV8fsQ;3j?CY%7oKp3$C"zSSCmRϵFD /iCwT ]4`+yXJZA|y/T(n|U͏+^A3PFrë0>|tq{] Ib5P…M}'.Ʊ-kV!5ToS<&^%.<QمUǽk4&netnpT'ϽN9UI}b2X sn<WD+qivРΓ Oɬe-jA(HY3t:MΎ0# D}u0qC#b0={dK ?.xD:ܼ'a._Q'\'j"H/W;/ 4 -.OC$Wx!U@=!?>NP}+;3C\EӪ q@)/f IWdO}O.Ѷuߠ߿θ`Ѹ3'2]VqOs/P (dcfHSyXBT=9H|׶8T~=ij] ӎ@X!ᓟ#mW^բc58n"B,ʬ'PS;)#s4o l !\lA[DQBT1$=yKv^L Czv+-"v::S)Z;5^EFĴ3._00t'o1bZf="b(I΁Kv`lQh׿e3r 0[Ű }>er9I& #WuC_s`IU/Iwi , nq7,%c-bqH:2hHBaL:ה"Knj"eVžz>yyPcPwNwLxvsqin,E`Os+aYVur{H W\JԂ :IA[}`b2Չ5̈3ƭ8p|a~ƎHW Q垍7Mג΃M$ ZTfL#hQZR09\a$KIq_ \?L,'j0r5&4(!jA#mR "#uϦriF(G9F6"a6GBdV̀ :͸2FUk3<2kEmT$j6 MG=RX>x/-4vܮ+JzqKǭ 4a6-Gs#ZYl̕?<2tb"8 Ƣut3Q"^PХ Hul1 0`IK1`P,1yMIP ģDuX/f5+V$lK{'i2g-;0/iFݵukjSPJÝ{F S`Z8HkVxirwa֙Q2SDZfʨJDz5f/q%G `VX( .Ux2 u'Ið^;,6j["BDMqO"f;00Svp7.Yb ` )NR:gH[揎I^x~M;7gmO(or3_؄XȽҦNW'1dhQx[xM)H?^<;y0W -bZhhSh&hK,kxmCU펎@J}QExxRFe+ʸS,\36uh[5d_|woc$6vrVx:kTi8_RJz 1v"@$FeOˋLI+uᄜiq!71L칉>%y`t y-:9quhʣ#Rbebݿ=a6jA.f.Fpo|ͳØMcŖ:Tdä"tg\ /\7NBEàNR2^y9tTb""I5QXӸ'yhI=,4_HAW̾,A)pGC2}|r)==KP;D51 )H3$2}&y ǎGLTj>ltg\8t2Kߦqk)8Z()-;cDo6G!rq *@iJQ/|#ZV'~O`ؾ(Cn,8bTن_I= ~xtA ГM!J(m1jO>Np%~f&Fd'FW^ˣsMCƝ@ٶ¼w {8fWɇ$bI 'g> J%dݭ4p!Tm{-7EM3HIC WYq,-]d??8}jgM7u'5vNʠnF,h#LܶTIk ʥ3Cz2 HJJ .iV#N P{B)(li|&!rxke"*Y c=h2*Y{(r?8W4XɸPDHTd;&Nloh8R̺s 2MQE$am~ SsbBڠ`W<'X/X1wm2~S6# A90i Qe!ڔF2#4s8y?5C8z\&> rSu/,B̘ xS} ߤĉ%K&KKLJ},'TC*cl K3 !>\WReU^Tt1:Mt; oQ_.~z?r9Ȭ$ NÅ4i9I 4? **,#Q ݕMcMʱ' #ʵSs}Fϐ-pV\a1vȘWy0jc睐3Z$+@ qF Be@8"і'8KWpA:9U*&oNP/Ř?]spwMp<2:uHW+ӈAZe @>ٽ$bmVGׯu@/e`A L><@Sh:,T{v`]$/sR*g-G`JQ]3nXn~Ck c%Ԏy,lA<``l ?s(DԆ3g^"Q͒NlG^[)hmpTWϙQXXPy>BzfB))z?働yx<}Dx"fMưik^hhjRƐ7&ah˖MuN@bQw}guzi!J}YhU- F?I>VX63 .K̯!pyY2F hzd4G33ه%Se5d:gM!W槐;;~F7ޅERdcyѷضqxv߬P_)%!1ykH`?~_ pͨBKvQY!5~ҋa=Q-Md z;PĉүR4lb CO4<"@%k*jI:l DڻBVeq\YW8+mhۆ^p&q0nORO$D %yYG V>z€ @U:^uiB:&cmEAvI۟0HLKE^\dʙ pƴYd4#j.6Adǁhcehh:6b2';ǹkZ9`a{ˏ2AV>)^3Jԟ;yp6Y|AQctY|6]6y034@d Z^!=Rnn"` PWAMf~f}C D_n\΋ɡb@lt8mG} ,!\uN;̕g.iѦKxFtq:IsLt kC!xw5'TkOEq8@o);ˎԿ}^>2aP >i"S.Zw{ 9z ,Uܦd; }'I] }ALGLZr?BSxr1|5 }:zV ̔ӂs) -A ᆞi9[Re [K#Z`wtB-W̻2Ӊĕ v؆n0RfEvqؐpDh}=. ~~< M5Σ֣=~Cvhт+;@7l;56dus< jK'4]PIWOσ2ZBe5.'+>U5g.Sr/b$NK &-">&"!@i=pK]\s5;HA眂AJZ7wcsb-@1.jds2pfw,5W¥ ZWCmhxMA}P0mk1~t?SmKkZ[H%ūC*;UOi#In~>7V;b? 'A|Ugekf]AcbW3 >~vfXD[ `S'1/2+ HA31v)+u8Lfa]늅a1b$+xI]&5b& '&` ć K1D_$pj)BL㉯S34_&e/n~L٩DG>9f]TpGՈƘϷ:q5$TwlIQ py~Q kndraTfG-+'wd~&UBk2c1y/!m^jnhtCc >VWF_g6=%xJ7Ƀ`*,e({mN1=3 )<:2qa&ũ2?vW &6$*QdaC;FW#RfXvЗźpX*#'+Ku2Z EQ'Hr}0cւޢ,dB6 =*'1>uϰ0ja\賫儫]fMט]bgFHiA~1=?dU#hV$:e𝑟OP~uv=W7(wgp?*7*,e$vdM>T|#,5tf:x' ,mgĢ;&u'JrB^'s~h͈_q>2v-$E ;bTD^9j }ɣO=&ʏfv4CF}&Z@48PdգUy :ܰfF2JL"w ^&Ns7Av/ͤrRKKvd/2toA;"1e ?sN°K/)&t@"x<$\ZGD069C ؀g5jԕܡ)FrHdBʅСz)ˑPx,VCB3mq_xEi'g 1S9̓yX);/ t ;=⬫LާwXfH"]kTxYNE\GxW|7͓̇mmq*$m+AJSM䍩Y^Sbf:/c0DSǍ{tVo舚s@pk|*VrvN \ܽV"o<m 38qXQUj:,hzD4F?7*shMcob0v}ݕ7\XJ ,ğd5+FWĠgI" |% `=;praM%E"!*Ink/7[s#,\?N$a%A?gD o ar^{"y:(6.f_y}%zTÎTomy ԝVpQH jAQAx?7&Mg6Dt= =<ƫ>v*w3]^76T!Ú]hX67Qږ _sU-"]$x'B(lB?kWr"/\G\EH Z+_hռG:0z1AatmȽ5K>ơ)(ZHI[JvbN.*gN} >D%_ʹNmE .ϋ5U.'}I( ,.}gt)a`v-{2?Iޗ%O jk jY΃|qgo Nø_ݣqg0 '_WEڬS:'k] sAI9}lȃWVj,S6P 'ud)g1^wk |u' ^l5mP(GLvro8˛&۾i˰].ػ˧75M'*4.l4vPf[ @-vCM@ybf?W6UVgH ΁6/LB2} $ KYi1Z95%Hf$&֬Ԥ/?KgY&Q. R J3|q{xf(7Ry\`Anzt c͞OAӾV+4H%_n$5J_" l# w)Q a>*~mdY Dϫd+"{jo6 jl;21e2 DhH=IOy ĈJH_ЍcɢJiQ.`g8*>{q4w"hIJyZct Qg>Pz*vG^ O ( ΃ C6dk,ŊpMɋPĊq՘y,(*ٽ"sf;huw-ph)u1,SEd neö́I2KTݱº_1Z!\$NIBWs/@[|+MNjw.d٘oDGwJy :+(%|mh/8}VS_ dȍhIqAo-ߪ+5G@6qՌ@b웁8F@j"Z?;Iĩl ՀXnsX)gIQ_tQş.6Ɏlȋ &2+x[YH|3?mHd{\ءb?s84[G0-J]}ME˸Bg|tjPRo:#^z4duZ{esv֣uzvT1G~K{ g,Sϋ&ɋ^gwqg{Y ~;?=z*Pf3 P6*'"Mhf²PU0a!MèA_v)\:^7?w|mf5oӠBiɞE6`"[sSb! F9QWx0}zqm3W!ә ~VMrW޸+H[SRۃJM%미 |c=Vu$#^̚0cӚJG([ a<$cd YS 3gG ?}sC+1G!>DgUdDJ9Ͻ֢P5VmtQ-ݻA~2Hx՜0^=خ o2/%%("k?87>&jeM Uǝa^h<[EKxχnXtUo:q5NwEez+鯴ЮoqY&1NhT`Ϊ o*jq2?o%zU@Lf űtSYvn{uplK4; 6:ˆuv ҇9 og/''E؂q`E}KUQ(« 9|2LqDp#-~Q4VV6Ko#JP3DFC-Bj5 Kz:Ĉjр=~u30fi.rgvH 0gH!W75C}H7Fq8=]掃W^2N(+kp\tm1J JKJi(Қ9 ,Fu5tJf4.;R^"7{M;ll.GZT `U=b*{c0=e9yGLlZuy]Zhuϝ2! ig]ڲ+V_= !=YNHLyP_M9d-վot-L1D bh3g@KblJrcZSԈ@srb-e拿&=R0~j8jy^F+(W{ Y)AD嬖pp3#E bMj@%܂|6f:dh" 9"*pCIf5Qm}R&#bq-W;W>T9!z|1y-Zߓg1gӵ+fqF:҆Vr&'w7SB`AqI!$~Ps+jI%6ca`)x_o a钐2\\@:$|nOt"ql[OO5˫pV[jO`'A"tЃٗj7C ʱOU f[{Sʾn_A !pCBS ob]RO04;m$c)&A [51Ѵ^ƪ"X >T[K"3RNB'P~|l\᧥cC'd]PȒ׭HW%܉-o$vjv;aѵUiU,*i_H?<9OsM ܼU@ҌTkc@&!l>g{}~nI+%OJ:ǣm?lo"{ |Lgং ]hKɯ ,PmY[)vG*;bJؔvܒ~}qu?^3m g)EE"% ׎0AgfG>vLTh y ^X$^ϟw9d?UbⷜAU{' oׇ:9Ľ@/,t5n~=JYA؛5BzZL%TIr-ě}UG/]||غ_pr-"I`X`JMU"PejA-vJ NJ3VL)▖Q3rNl`oInཎm~;k"jp0e{` Ž%;v.cCzxkY* Ku?NHmW5_EB^"8;d?w^.?=/4czu2i0V#eJ[WoiP@+E(Rׂ5N̟.X/۳`p?90>TZBщq~ pL_aF̈́qiYٔ] !ͯ{25fQ8~}GI,R>U_:!WPdSZE*b|7xL w,Yв)q vZ@PW\☻Nt)'uWMJ }R0!93+d!LB)`ΙMT,3y|ƒ!'>D0z%zd3"UYt\Oz5PBcgнr %~Hƅ,zVi'{_=iyYr2/j:L $bsu*WIl1rSTPp*#!36<7Xa }),ǵ[ey_qDgOriFbX~Bign@GӣB\Q:ޞD.373old=3MƙA$vW^8~EO( 餇pINkVAt0ě]@xaUX(ٞ6% ǽOH^pJwcN5c8U u~E0ݻPBHFY#8:.`fq.JAi'osPx1fSX]BiP br*į}]LțoT!+Zw0)Հzu_-UA}, ;آ}9*sG;k in }-gKngvӦ@?"f'!| G}\T9 =c1&@?wY["gʌAX]M|t+ PZvKOLnM^rys5daWᬄs0<`W9-6.O_(~JOdgC$2V1}BY*iuw{x) J#' ʁhY9(x X2u; 920TcՏWJſ69pQRpkVW!( \ň=3*8  cH`qjuS]dTJϺU{w;KdbҲG$t317 VnC2ZSIݖŨ,WҌ(('[m%aknbrҨ92"_ I}:W'5Y=.7l\W3^R>;h3tk`<ݱ$¼gH&,ru |K\D49L^ς8rIhב8s(9+0NqT Mexy6 8K m@4MrĹ+ɬ;2 rQ/Ԩ՘>[^c;5HPLvV 0e#M.5,9;qQyQ)$\ܞ̑i{ԀlrJ/ǧG R@4?O/gaTcT* 0@v ץxegaPz%'cDqqsN?]X:~S˰hETKʻmLjX:x~Ntk[IfJl|ٳodnAzHeI$~Yxk"&tr8_]`_F/սrWK6 n Otkm428 Ʉ_FH!&V>4zbp)񡅜h@7b-Uo`3Eր ='*|Q8'=1w`l-92ж` puy2`p'@* tGn]Z~!K `[><"kM;;8oTwCv'C^yԿDlFcp='/^*IX]d=Dush{(ԃK/TCp imR=.![S_ZD-C+]sWB1S s}V|d OMXfwO?{ᤁ溛]UoZF(*:76[@ &h[,E5wHYp0ϠTc\ϼԿ&| g[.QPS(^ oI '1d\Կ 94⽵NQvQ qx YbCzkLi{_΅W*? B'iHj:"$ZAi!oxw{&-'|k"xVd<; P1 uz ͫ no*AbTOFYZɬA*"#e8Rd1:ag^GN6:_7,4SI*WTꫂoOǧ6D~&s䦱k4;eta%= +yRK+F(*rUaM?jO\rǮ4*>7sкyۧ8B7͏T+GwxȎx}`+1*&&\߂.Ry'ds])/]̈́`DZF-of Ǩ8Kŭ-@M8OQsV{˓DAI)0 R̻k8k[4Wh!(ڏkn 4,Yդ/쟋;G.NZkj֔Ѱ?%CX${hK 6BՎ|%ɕp 2?H3 r8=3 I)9rngT@쟽 C}YicyejfAby'?Kmmbj)!qP4,[Pbn\;{a-[lXqrwl 5Ohʔ܌]$'4+$OijILтZx^54`.7 #TD}B P%,@cC򭂅xeM%,oO gZ3S@aUw1$-FB|Z;!Yw6h80LcR4L)։_$DA gN6Ec=E\~lHGcDAq੾-f1!_+Qw#!AWu/G[YFY#N! *eוQv!>ބX.L (8+Vx,-=|wɋ3% f7>-3t}o ˍ6#Rڒ-m^>|Ri)ȻX@."&`Vxlja\sm<Ÿj?guٱnX1f}s,8V֣\pZ_+(  '!Ѽsm |.IYZvl.jlE$.$6Tx_k`1 IdPἻa+2,6ũ𼬍"~B85E|7bmU~Z髰-x'¯XM]_kS%#=俓-: afRO9,ajGd;S^h5V +iwnڈ eW#8ZʲfOfm{I:U4j+Qe7m: Hkm XHQ'CPKB$Wʱb;ׂhD2ٯ'c[ VQC (;=lڞKϓۻ%A t%povntsW g^T%;*Em]t=z!nahq_ߏcL/O3U9'4hd;+A* !K(bdfrEvy ~%V".؊q3[FwJf~SL*\qCw=|a'':o·ѽoc&5vef,\LUf(} Y@H ]8PԴ\TMbÑLĚZRn@!^(H:V6[)GT&̇3M& P79Hಢl5tbɅ_ E{!_F&o#x3Ũ7 $]Qg~?S@3Go2!j`$< wXY(RqQs<~~Kۥ}QtFڒ!lgy PqMC*5nwI2y"'=z oxXS;{< Τ61Ooe~Ttwh(p v6|vybL)ޜe\k2i5Hr/!PnGβ cY -T0gp:װ64uQDd Lip8Voщ#^$*#zӟi*2 ^Л_tX%Hϱr49vsl`=H 7 4o HTR4bًJ( TAqM2 ɢf{)Ns߄ JІM V.Z/A\rAL$K!4sꝙuA0:Ssc#7d?wx-5E9ZFE*FSUA6,%ȏjc|CcIeS ]Ulz;f3Zq@K+KoY<Gc.$0o1BӺBDI^w(_ۑB)RD6Z[O2B#@oqehq]O?Ǘ]ډ+oӁb諗:CC| oo\nOL̐ Fm#Ikqΐ߾6>CsUw lxOz>0u<"?`O\6RkQ|YKT/ڹKu  yl$2ݾjl5M0=y%ut5"5]BiFVq-c±ڛ._h\ Jx `Q ?(9D@]ދ;7 dD'N+&?RH[L,XrH=6&|i0v+A90O< ҃bNV7/%9Z8nmnzoRӇ@#rCF~G-ݦooȳv4;.`LL^Xg'z#ES W?].$8藄c<:izMݸr)n`Ȋ ӰT.Iݑ{b癎yr|6UL+7pS\5zD 11G=sԕ*/W5l"\ ۛ'|:Jݗ(q2&+4ZTI]0+eptTC}_5" eAlN@dį;wIYobZ~G1ޏ$#2*"GkۜPHPVɎyvz۪NFƍj=([ mtʎX7; P?/4잽TEKVKO̒Vs4gKr+6v.[tc 8CkY^"&^tGQ%gk{6 )J[?.@-kA{#8a(%=+(O ,Y ꁿNB#Հ:kqXЈ"]A5 ed 1e¾ۦH4b0{$AQY~ݣ6-'Y9hNt*}T*`QpdMU cR7]+H,z*נ'0o0CSaR'ϮM)j[C,wbvxP2?#0Rh̞vMgJɖWD1 b̥㈂ 4'`F"g8F`M^3!EIۺ#N+7WEgM9 lTL4tS aFW.nQvs;M]ߞȌr(Df-'gu4$bix|ƒ%9˟_twb>&="f058)ؖp(ztfz=ѯ/. OϪ86B'}鯂~Db 2# 4Q;20!*!In)l!yQϊ$}ST45Ȥⷩ vuKufəY`pNpԴS8Aυ##arX fH~mxCM 4!H&iF RmkCSJny :%3`5 k`+q{.GTļ'plv'#}x":^J3>`GԼU@&uYhgL`KǚGn~:ZS F}=_F@\g*4P_4E2QV.A(5ɽ p,;:U [83D8Q;I/Ň7Ѡ4(`1=qɡk)bXaR}KZU@a'ܤL׿xU}SZGݭ/5 "YИt녟4< L#S3Yȭ{bƚoDž9N9ؙLM%L˃@Xhv46ft =oݜE  3iպAVT;=di^kHNuDLr_謄bW8Dvʷ.oE?,heC2X3GPNV#"{=ƕ= 6ίVs^n)i1GE)K W3VaҊA 4L:zň(oOV9ϯ!"K&@ZöI7f6ŝog/R1Ds GW}F@5σ#ځLXLX 98\Vn?ϛ+9Qk0:pv_r/@ME#d}kNM@q:wӿjѡ$R+6:p.p<.G)ِ#Xh} dj Q uS8.hJԚ>X,yjLi'CZ<:]FCp6:`H%w+=.*'gB:љVNFQRc\k[fJ$IH.2e+,^L; 5}Yq?h ,kmןLg©|71vKv7™QZ)˽IAxaOzdj^)t# ^uN\8po2tլ Z-Yv[ ?x{Rm2czGyrj<߬ .ODRNgkRAMkAspa+kDPQ\JG]-0\UFbܙ,^~>[$=CIaE\N)ӄ ~(iDZ <Z*l`c\.FvmO@O:,iI6o=tr+ Y|M:h^qY: PnFsq]ILBPz'iSG;a)uT7jz࠭hvSe;W =H7sA O;&?h|-dsvi,P',z+-FoBFe"d@~Q?9uy`&g#H%Bɦi+F/,J}D5[n^R?\ތXp6 Map*_s.ȇ%%D@hzI ZP~TTUޤ!*6 Nr `{ur`M lÛsO3%gQ8ML,!(`U\*.aػsxwFf J70hJC˚a*}7}CЛ'#Z7rq dN5\K]~o K#Hg@mMB3In.VكzH%Vۭ$|U7>7T>u4)qZ ŶE? 'D/HlAl&x_Yt;g8c5#k}Ug{(`Sh{A:qW݉A%z XNP: I-T3x-4;{CG54{fw7ro mI !-wGxeuVl%a2Jgjh[ؙ ܭ+5<WS!Ŕl٘G!T5 C åPb"};Ok@RrlwfWA.@[ #*H{G@]v&Iӛ~m#*Xxo?{):_^(:ȼ؀e/i"ҁG[=`S: =Q,ےc".~9gIRӉ͝<ϛ@귇X/A*n-*<+ B2i.OF7됙a|LH2XLܐ^>j|OW\A/(vSɂƝd}?#sl8\juF^FcÑ$O]_Ei.[Dhž0ݺ>tq0&`QU:Jg=zHbB6gg >- "ohhl*=t/qպ)CgE25|܇D K߳4B4!L5ws=8PW.OwD v@kE߯ wJ]joj]K#h}w4&n,t6/Cv,p:c1?V0X0F.Tv~Kv'v^;'H0]boҺvz S29`QHb/8ޗ$JL-!ѝF鈐,恵;W(N޴Mf>E ?K﬎.Rت*4jC.>Qd IU- LD/:;|% 9c P \ ,E]!u>^6K"BBj\T0QBh=3-m>(7w!b1H7m4Oe ho⫔&Ðÿ2*Oge'"qR2*BUkffad1a3S\IgU1$8 g2:3C]|Q'kOoLD闔;kbY}.Ƙ-j!⿐o@v Bk炣螯:2(p?CJXLeN1LzgY&9ƊNg=:nmh<_= nUw="hUڦ5ɞ^@IX.}T%Wί5ttPÉ<'KGe9ԥ%lIW'C-e1v^븽5MdRR#OG\ l AΥ*OOexO]NFiipƈ6_>kw{c[ qrE.TQT`wXmXS Ujk .:VWErˀ-kZa6%JW,JjĄNF۷yu/J2:FhsKz=TF|)1SB<hT> O/ `>[[pT% j3tG)+7V|RfjaM?$x2 ozǧ6؏z}ՑkmɰCKwϡ7No:>Θ').L}?ɒcsY AcHC`RB>{c M"e)D}f$A+;ٓ ELr(1z::*|/ y סp[ _jyי< Z>Ɯ0_h?{y#}؜VEんn )*ql@]k{P8G(Hә5B|.'{#o,euOTh́`h崊;~i9* a)Ey\P\|!̖|AF.={bi7" lZo1r'z̀d 7UJqĺ&YAzf/{IB5o Sq`O$3QHtPFX8A\*]Pwq@T#FCz?~2Vb[a7/ 1C^H27:ڜ*O:"cstIYVcjW4Eo)'mAw4n>MD U&Oфrs--ܷȄoOBW>JzWL(1爐l5PH&|U˨*.KVB$/2?UhHy.4/Šj 5J}Ra,u10isK9K q  zm=͚%ki׽`)j}m~^ ڜ?8 Rd~U-,A!Dk4; A{/y{]7{yH?gK:m킲Ñ|T=bxqhjO 魩lY۰NġUK z\Lzx 3K|蜎ͱu6w̓M%À)BH섆,FPܔ<=̶u!S} Ay&$,O; wFS-l]^=Jyz\ QQB7s7XW?{l{8N<ߢj*DLzVO@LEh96g7x?WSܴmׅev8Gyr/p͖:7Dw'X2~/E2 ZkѷDmFP81f^Z F)fXAԖ.$RG\5}n(K佝thlRd``${V37Q۳fcJυoTŽ#Dm-NtcET}:y'!=cҡ"n{QDǮa]]qDɡrDx ks+Qft8+ Ro5Kݹ\pUsbk4RIp;Tڊ'\!T:.9խ~]:=ՙ[{an,MVG=/k!p \5G ! 4ڜ0 C8Oׄ,?]+B`@3q<ߨU~ozlE Jo~*1WcYX3ԍ5@&x.]'mDue*`zk&2΂&:\%QFF0T`<,O@[Yn)[^@j`gT޳:{hȟcb SS( <2yMLK6~m EC7(NQpH CGX[JĻ( |$Ko搧8yG\e>ЯNcVZϓ [<~s +U\8w4&rn/t"$\]݋DׯߒBeV|#6œ\jdc}2Tg άQUvѐ8ߒƿ2?e9`arw^r*C|J! 2>3)Eó~ַ6X_\ww'l~z߂>Y8vݳ7c ښ^stSk۲͏VF ViƾzSPq2>(C%uZ51*>yshޛ-s1҈ m#Uuٸ]Hl+ !hHw1>ΘGX0%%;4_L3A %t򶑞Q(U"U$Ϟ[JFE!Gv]1 r4æ)q5k\ZI]ţة`2ak8 |- 튿*%PbHxJ4vAJH|[-_/ub M3gl& 47DQ13iN+~d : Ԩ*!fr>we[4\CSn? ќnZ<]?#M6Oo=xb˫DNz=L(u/`aM\ S#C.B, yذz%%RQ!z/s>^>jKrżԽұSF,GfoS޼ ^$Xfe؇ENz@jl.q0sűv?Í1] >:m<ȉ؍7 Yq8oV 0"$وRb:9Z{BhO*; h@sTz"qֆcC$>whGa1[解,R`^ *Sx"7_0&ʤ#%]9#+C bƿ2,35ZۺX0Jb9>'e$N$ G6WJv]V2>P2Zd_a!!%szLp%82uI *>mBAGZ!٠5u7Cp;wާtAȜr 6'?*b?QC@Ǘ>{XQmH_.2Wۓi 3'og|~k쟿Ѡ cT*]Aٿ\`aW-t:ҫ@Z|,1|g_v=(\W z-j/*/BK^} Y7#Sܾ1E2$\ Nt=WA Z3Vp%81pL>uo3F ?Qys@ ãa<@ sAճ1 c4vP0ӁE٪7[ebCuL=̀ Y>؛3XI).s#Xl1G$6wG|Rs\4}%L^1Y_t6T:Q:л:%,$IJĤI ؇`;1'9'HU~ tXl7hEAФ0 ~,QTH1E7(\ S78~)lr We7!uuRFOYn!>I_j YbΔP:e;+ I/~|_SvR]lgc3n:i9W-5N| 9F: ,sqaA_Y~2ͷu[7ZE'\N}EK>yk=f ZQB߆1j@G{?e'X&4t)& nrbGX*}x~OkEZa4NĵՋ BzUIIQ#d&Ɓzn 1?y^d(0E3V 6