libcurl4-32bit-8.0.1-150400.5.41.1 >  A exLkp9|B vt>Htƍ,XMIUrhEm9 7o|q,/9Tl86/5j u@ʢ_#]_TNgIEN}ӊ>\x %oB~ h7d8%XHs-|LkR-5zj"BJJ}xLQ#S<=4z9VqWp/ב ZKj3cfaea53ad4ef63998caead23a30991cfd366515ab7859fed5fa1cccb393c84dd4f47039645a7a4a02f726dd0cd7a156094a8475 ȉexLkp9|T3Eyl|)c{% j Y!~ eXo:G0eDqEv>sE3gbYzG~'s"8Sn$_AiEpִΔ:*ck5kҙҥ }6T흶VNl:+iAn>7il2(-,GH;S6N(nqAC+a:;Tdɽ2! ȹ{Gi^CB+Qx 94'+@i >pAg?gd % M !'.@H L P X  4**R*(89 <:>d)Bd1Gd<HdDIdLXdPYd`Zd[d\d]d^dbdcedf effflfuf(vf0wfxfyf&glgpgvgClibcurl4-32bit8.0.1150400.5.41.1Library for transferring data from URLsThe cURL shared library for accessing data using different network protocols.exLLh01-ch3b `SUSE Linux Enterprise 15SUSE LLC curlhttps://www.suse.com/Unspecifiedhttps://curl.selinuxx86_64/sbin/ldconfig `exLLexLL5c3e8c16bf987c6b07953d81c73f5f9ed698ce5b30eadeb049261503baa35b01libcurl.so.4.8.0rootrootrootrootcurl-8.0.1-150400.5.41.1.src.rpmcurl-32bitlibcurl.so.4libcurl4-32bitlibcurl4-32bit(x86-32)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@    /bin/shlibbrotlidec.so.1libc.so.6libc.so.6(GLIBC_2.0)libc.so.6(GLIBC_2.1)libc.so.6(GLIBC_2.1.2)libc.so.6(GLIBC_2.1.3)libc.so.6(GLIBC_2.15)libc.so.6(GLIBC_2.17)libc.so.6(GLIBC_2.2)libc.so.6(GLIBC_2.2.3)libc.so.6(GLIBC_2.28)libc.so.6(GLIBC_2.3)libc.so.6(GLIBC_2.3.4)libc.so.6(GLIBC_2.4)libc.so.6(GLIBC_2.7)libcrypto.so.1.1libcrypto.so.1.1(OPENSSL_1_1_0)libgssapi_krb5.so.2libgssapi_krb5.so.2(gssapi_krb5_2_MIT)libidn2.so.0libidn2.so.0(IDN2_0.0.0)liblber-2.4.so.2libldap_r-2.4.so.2libnghttp2.so.14libpsl.so.5libpthread.so.0libpthread.so.0(GLIBC_2.0)libpthread.so.0(GLIBC_2.1)libpthread.so.0(GLIBC_2.2)libssh.so.4libssh.so.4(LIBSSH_4_5_0)libssh.so.4(LIBSSH_4_8_1)libssl.so.1.1libssl.so.1.1(OPENSSL_1_1_0)libssl.so.1.1(OPENSSL_1_1_1)libz.so.1libzstd.so.1rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3eqee@e@diddZ5d=4d@dJd@c`c@c=@c=@c@ccctcY!@cMCcAf@c6@cM@cob4@bbb{@bs@bk@bbbbb+9b%a@a@aLl@aKaA@aA@a?=@a?=@` @`@`.`.`8@`Z``Y`dd@`]`[)`@`_ܙ_S_@_@_@_@_@_=@_5+@^z^@@^^^n@^l@^j$@^f/^_@^K^@]A]µ]µ]x]p]p]1]/ \\9\P\@\@\@\Y@\v{\Z@\P@@\P@@\N\N\A\$[ٙ@[@[^[^[@[@[}P@[O+[M@Z@Z@ZZZ ZiZhu@Zhu@ZTZ@YYYW@YYJYJY@YS@YMYI@YA%@Y?XQ@X @X}@XX]XZnX@W;WRWW@W_WUeW+5V@V@VT@V@VV^@V$@V#VUݪ@U@UUc@Uy@U@U\w@U@U7@UQT T8Tq@T6TeTHotto.hollmann@suse.comotto.hollmann@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.comguillaume.gardet@opensuse.orgpmonreal@suse.compmonreal@suse.compmonreal@suse.comdavid.anes@suse.compmonreal@suse.compmonreal@suse.comluc14n0@opensuse.orgpmonreal@suse.compmonreal@suse.comvasily.ulyanov@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.comdmueller@suse.comdavid.anes@suse.comdavid.anes@suse.comdavid.anes@suse.comdavid.anes@suse.comdavid.anes@suse.comdavid.anes@suse.comdavid.anes@suse.compmonreal@suse.cominfo@paolostivanin.comdmueller@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.comdmueller@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.comcrrodriguez@opensuse.orgpmonreal@suse.comcrrodriguez@opensuse.orgpmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonreal@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.comdimstar@opensuse.orginfo@paolostivanin.compmonrealgonzalez@suse.comschwab@suse.depmonrealgonzalez@suse.comdimstar@opensuse.orgpmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.comfvogt@suse.comcoolo@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.comjengelh@inai.depmonrealgonzalez@suse.comvcizek@suse.comsean@suspend.netpmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.comkbabioch@suse.comkbabioch@suse.compgajdos@suse.compgajdos@suse.comvcizek@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.comtchvatal@suse.comnormand@linux.vnet.ibm.comasn@cryptomilk.orgpmonrealgonzalez@suse.comnormand@linux.vnet.ibm.compmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.comzaitor@opensuse.orgschwab@suse.depmonrealgonzalez@suse.compmonrealgonzalez@suse.compmonrealgonzalez@suse.comdimstar@opensuse.orgdimstar@opensuse.orgidonmez@suse.comidonmez@suse.comlnussel@suse.deidonmez@suse.comidonmez@suse.comidonmez@suse.comastieger@suse.comidonmez@suse.comidonmez@suse.comidonmez@suse.comidonmez@suse.comidonmez@suse.compjanouch@suse.devcizek@suse.comastieger@suse.comidonmez@suse.comalarrosa@suse.comidonmez@suse.comastieger@suse.commpluskal@suse.comvcizek@suse.comidonmez@suse.comidonmez@suse.comvcizek@suse.comcrrodriguez@opensuse.orgmpluskal@suse.comvcizek@suse.comvcizek@suse.comschwab@suse.denormand@linux.vnet.ibm.comvcizek@suse.commpluskal@suse.comvcizek@suse.comvcizek@suse.comvcizek@suse.comlnussel@suse.desor.alexei@meowr.rumpluskal@suse.comvcizek@suse.commeissner@suse.comvcizek@suse.comcrrodriguez@opensuse.org- Fix: libssh: Implement SFTP packet size limit (bsc#1216987) * Add curl-libssh_Implement_SFTP_packet_size_limit.patch- Security fixes: * [bsc#1217573, CVE-2023-46218] cookie mixed case PSL bypass * [bsc#1217574, CVE-2023-46219] HSTS long file name clears contents * Add curl-CVE-2023-46218.patch curl-CVE-2023-46219.patch- Security fixes: * [bsc#1215888, CVE-2023-38545] SOCKS5 heap buffer overflow * [bsc#1215889, CVE-2023-38546] Cookie injection with none file * Add curl-CVE-2023-38545.patch curl-CVE-2023-38546.patch- Security fix: [bsc#1215026, CVE-2023-38039] * http: return error when receiving too large header * Add curl-CVE-2023-38039.patch- Security fix: [bsc#1213237, CVE-2023-32001] * fopen race condition: libcurl can be told to save cookie, HSTS and/or alt-svc data to files. When doing this, it called 'stat()' followed by 'fopen()' in a way that made it vulnerable to a TOCTOU race condition problem. * Add curl-CVE-2023-32001.patch- Security fixes: * [bsc#1211230, CVE-2023-28319] use-after-free in SSH sha256 fingerprint check. - Add curl-CVE-2023-28319.patch * [bsc#1211231, CVE-2023-28320] siglongjmp race condition - Add curl-CVE-2023-28320.patch * [bsc#1211232, CVE-2023-28321] IDN wildcard matching - Add curl-CVE-2023-28321.patch * [bsc#1211233, CVE-2023-28322] POST-after-PUT confusion - Add curl-CVE-2023-28322.patch- Update to 8.0.1: [jsc#PED-2580] * Rebase curl-secure-getenv.patch * Remove patches fixed in the update: - curl-CVE-2022-22576.patch curl-CVE-2022-27776.patch - curl-CVE-2022-27781.patch curl-CVE-2022-27782.patch - curl-CVE-2022-32206.patch curl-CVE-2022-32208.patch - curl-CVE-2022-32221.patch curl-CVE-2022-35252.patch - curl-CVE-2022-43552.patch curl-CVE-2023-23916.patch - curl-CVE-2022-27774.patch curl-CVE-2022-27774-2.patch - curl-CVE-2022-27774-disabletest-1568.patch - curl-CVE-2022-27775.patch curl-CVE-2022-32205.patch - curl-CVE-2022-32207.patch curl-CVE-2022-42916.patch - curl-CVE-2022-43551.patch curl-CVE-2023-23914-23915.patch - curl-CVE-2023-27533.patch curl-CVE-2023-27533-no-sscanf.patch - curl-CVE-2023-27534.patch curl-CVE-2023-27535.patch - curl-CVE-2023-27536.patch curl-CVE-2023-27538.patch- Update to 8.0.1: * Bugfixes: - fix crash in curl_easy_cleanup- Update to 8.0.0: * Security fixes: - TELNET option IAC injection [bsc#1209209, CVE-2023-27533] - SFTP path ~ resolving discrepancy [bsc#1209210, CVE-2023-27534] - FTP too eager connection reuse [bsc#1209211, CVE-2023-27535] - GSS delegation too eager connection re-use [bsc#1209212, CVE-2023-27536] - HSTS double-free [bsc#1209213, CVE-2023-27537] - SSH connection too eager reuse still [bsc#1209214, CVE-2023-27538] * Changes: - build: remove support for curl_off_t < 8 bytes * Bugfixes: - aws_sigv4: fall back to UNSIGNED-PAYLOAD for sign_as_s3 - BINDINGS: add Fortran binding - cf-socket: use port 80 when resolving name for local bind - cookie: don't load cookies again when flushing - curl_path: create the new path with dynbuf - CURLSHOPT_SHARE.3: HSTS sharing is not thread-safe - DYNBUF.md: note Curl_dyn_add* calls Curl_dyn_free on failure - ftp: active mode with SSL, add the filter - hostip: avoid sscanf and extra buffer copies - http2: fix for http2-prior-knowledge when reusing connections - http2: fix handling of RST and GOAWAY to recognize partial transfers - http: don't send 100-continue for short PUT requests - http: fix unix domain socket use in https connects - libssh: use dynbuf instead of realloc - ngtcp2-gnutls.yml: bump to gnutls 3.8.0 - sectransp: make read_cert() use a dynbuf when loading - telnet: only accept option arguments in ascii - telnet: parse telnet options without sscanf - url: fix the SSH connection reuse check - url: only reuse connections with same GSS delegation - urlapi: '%' is illegal in host names - ws: keep the socket non-blocking * Rebase libcurl-ocloexec.patch- Security fixes: * [bsc#1209209, CVE-2023-27533] TELNET option IAC injection Add curl-CVE-2023-27533-no-sscanf.patch curl-CVE-2023-27533.patch * [bsc#1209210, CVE-2023-27534] SFTP path ~ resolving discrepancy Add curl-CVE-2023-27534.patch * [bsc#1209211, CVE-2023-27535] FTP too eager connection reuse Add curl-CVE-2023-27535.patch * [bsc#1209212, CVE-2023-27536] GSS delegation too eager connection re-use Add curl-CVE-2023-27536.patch * [bsc#1209214, CVE-2023-27538] SSH connection too eager reuse still Add curl-CVE-2023-27538.patch- Update to 7.88.1: * Bugfix release - Drop upstreamed patch: * curl-fix-uninitialized-value-in-tests.patch- Update to 7.88.0: [bsc#1207990, CVE-2023-23914] [bsc#1207991, CVE-2023-23915] [bsc#1207992, CVE-2023-23916] * Security fixes: - CVE-2023-23914: HSTS ignored on multiple requests - CVE-2023-23915: HSTS amnesia with --parallel - CVE-2023-23916: HTTP multi-header compression denial of service * Changes: - curl.h: add CURL_HTTP_VERSION_3ONLY - share: add sharing of HSTS cache among handles - src: add --http3-only - tool_operate: share HSTS between handles - urlapi: add CURLU_PUNYCODE - writeout: add %{certs} and %{num_certs} * Bugfixes: - cf-socket: keep sockaddr local in the socket filters - cfilters:Curl_conn_get_select_socks: use the first non-connected filter - curl.h: allow up to 10M buffer size - curl.h: mark CURLSSLBACKEND_MESALINK as deprecated - curl/websockets.h: extend the websocket frame struct - curl: output warning at --verbose output for debug-enabled version - curl_free.3: fix return type of `curl_free` - curl_log: for failf/infof and debug logging implementations - dict: URL decode the entire path always - docs/DEPRECATE.md: deprecate gskit - easyoptions: fix header printing in generation script - haxproxy: send before TLS handhshake - hsts.d: explain hsts more - hsts: handle adding the same host name again - HTTP/[23]: continue upload when state.drain is set - http: decode transfer encoding first - http_aws_sigv4: remove typecasts from HMAC_SHA256 macro - http_proxy: do not assign data->req.p.http use local copy - lib: connect/h2/h3 refactor - libssh2: try sha2 algos for hostkey methods - md4: fix build with GnuTLS + OpenSSL v1 - ngtcp2: replace removed define and stop using removed function - noproxy: support for space-separated names is deprecated - nss: implement data_pending method - openldap: fix missing sasl symbols at build in specific configs - openssl: adapt to boringssl's error code type - openssl: don't ignore CA paths when using Windows CA store (redux) - openssl: don't log raw record headers - openssl: make the BIO_METHOD a local variable in the connection filter - openssl: only use CA_BLOB if verifying peer - openssl: remove attached easy handles from SSL instances - openssl: store the CA after first send (ClientHello) - setopt: use >, not >=, when checking if uarg is larger than uint-max - smb: return error on upload without size - socketpair: allow localhost MITM sniffers - strdup: name it Curl_strdup - tool_getparam: fix hiding of command line secrets - tool_operate: fix error codes on bad URL & OOM - tool_operate: repair --rate - transfer: break the read loop when RECV is cleared - typecheck: accept expressions for option/info parameters - urlapi: avoid Curl_dyn_addf() for hex outputs - urlapi: skip path checks if path is just "/" - urlapi: skip the extra dedotdot alloc if no dot in path - urldata: cease storing TLS auth type - urldata: make 'ftp_create_missing_dirs' depend on FTP || SFTP - urldata: make set.http200aliases conditional on HTTP being present - urldata: move the cookefilelist to the 'set' struct - urldata: remove unused struct fields, made more conditional - vquic: stabilization and improvements - vtls: fix hostname handling in filters - vtls: manage current easy handle in nested cfilter calls - vtls: use ALPN HTTP/1.0 when HTTP/1.0 is used * Rebase libcurl-ocloexec.patch * Fix regression tests: f1d09231adfc695d15995b9ef2c8c6e568c28091 - runtests: fix "uninitialized value $port" - Add curl-fix-uninitialized-value-in-tests.patch- Security Fix: [bsc#1207992, CVE-2023-23916] * HTTP multi-header compression denial of service * Add curl-CVE-2023-23916.patch- Security Fixes: * HSTS ignored on multiple requests [bsc#1207990, CVE-2023-23914] * HSTS amnesia with --parallel [bsc#1207991, CVE-2023-23915] * Add curl-CVE-2023-23914-23915.patch- Update to 7.87.0: * Security fixes: - CVE-2022-43551, bsc#1206308: another HSTS bypass via IDN - CVE-2022-43552, bsc#1206309: HTTP Proxy deny use-after-free * Changes - curl: add --url-query - CURLOPT_QUICK_EXIT: don't wait for DNS thread on exit - lib: add CURL_WRITEFUNC_ERROR to signal write callback error - openssl: reduce CA certificate bundle reparsing by caching - version: add a feature names array to curl_version_info_data * Bugfixes - altsvc: fix rejection of negative port numbers - aws_sigv4: consult x-%s-content-sha256 for payload hash - aws_sigv4: fix typos in aws_sigv4.c - base64: better alloc size - base64: encode without using snprintf - base64: faster base64 decoding - build: assume assert.h is always available - build: assume errno.h is always available - c-hyper: CONNECT respones are not server responses - c-hyper: fix multi-request mechanism - CI: Change FreeBSD image from 12.3 to 12.4 - CI: LGTM.com will be shut down in December 2022 - ci: Remove zuul fuzzing job as it's superseded by CIFuzz - cmake: check for cross-compile, not for toolchain - CMake: fix build with `CURL_USE_GSSAPI` - cmake: really enable warnings with clang - cmake: set the soname on the shared library - cmdline-opts/gen.pl: fix the linkifier - cmdline-opts/page-footer: remove long option nroff formatting - config-mac: define HAVE_SYS_IOCTL_H - config-mac: fix typo: size_T -> size_t - config-mac: remove HAVE_SYS_SELECT_H - config-win32: fix SIZEOF_OFF_T for MSVC and old MinGW - configure: require fork for NTLM-WB - contributors.sh: actually use $CURLWWW instead of just setting it - cookie: compare cookie prefixes case insensitively - cookie: expire cookies at once when max-age is negative - cookie: open cookie jar as a binary file - curl-openssl.m4: do not add $prefix/include/openssl to CPPFLAGS - curl-rustls.m4: on macOS, rustls also needs the Security framework - curl.h: include on SerenityOS - curl.h: name all public function parameters - curl.h: reword comment to not use deprecated option - curl: override the numeric locale and set "C" by force - curl: timeout in the read callback - curl_endian: remove Curl_write64_le from header - curl_get_line: allow last line without newline char - curl_path: do not add '/' if homedir ends with one - curl_url_get.3: remove spurious backtick - curl_url_set.3: document CURLU_DISALLOW_USER - curl_url_set.3: fix typo - CURLMOPT_SOCKETFUNCTION.3: clarify CURL_POLL_REMOVE - CURLOPT_COOKIEFILE.3: advice => advise - CURLOPT_DEBUGFUNCTION.3: do not assume nul-termination in example - CURLOPT_DEBUGFUNCTION.3: emphasize that incoming data is "raw" - CURLOPT_POST.3: Explain setting to 0 changes request type - docs/curl_ws_send: Fixed typo in websocket docs - docs/EARLY-RELEASE.md: how to determine an early release - docs/examples: spell correction ('Retrieve') - docs/INSTALL.md: expand on static builds - docs/WEBSOCKET.md: explain the URL use - docs: add missing parameters for --retry flag - docs: add more "SEE ALSO" links to CA related pages - docs: explain the noproxy CIDR notation support - docs: extend the dump-header documentation - docs: remove performance note in CURLOPT_SSL_VERIFYPEER - examples/10-at-a-time: fix possible skipped final transfers - examples: update descriptions - ftp: support growing files with CURLOPT_IGNORE_CONTENT_LENGTH - gen.pl: do not generate CURLHELP bitmask lines > 79 characters - GHA: clarify workflows permissions, set least possible privilege - GHA: NSS use clang instead of clang-9 - gnutls: use common gnutls init and verify code for ngtcp2 - headers: add endif comments - HTTP-COOKIES.md: mention that http://localhost is a secure context - HTTP-COOKIES.md: update the 6265bis link to draft-11 - http: do not send PROXY more than once - http: fix the ::1 comparison for IPv6 localhost for cookies - http: set 'this_is_a_follow' in the Location: logic - http: use the IDN decoded name in HSTS checks - hyper: classify headers as CONNECT and 1XX - hyper: fix handling of hyper_task's when reusing the same address - idn: remove Curl_win32_ascii_to_idn - INSTALL: update operating systems and CPU archs - KNOWN_BUGS: remove eight entries - lib1560: add some basic IDN host name tests - lib: connection filters (cfilter) addition to curl: - lib: feature deprecation warnings in gcc >= 4.3 - lib: fix some type mismatches and remove unneeded typecasts - lib: parse numbers with fixed known base 10 - lib: remove bad set.opt_no_body assignments - lib: rewind BEFORE request instead of AFTER previous - lib: sync guard for Curl_getaddrinfo_ex() definition and use - lib: use size_t or int etc instead of longs - libcurl-errors.3: remove duplicate word - libssh2: return error when ssh_hostkeyfunc returns error - limit-rate.d: see also --rate - log2changes.pl: wrap long lines at 80 columns - Makefile.mk: address minor issues - Makefile.mk: improve a GNU Make hack - Makefile.mk: portable Makefile.m32 - maketgz: set the right version in lib/libcurl.plist - mime: relax easy/mime structures binding - misc: Fix incorrect spelling - misc: remove duplicated include files - misc: typo and grammar fixes - negtelnetserver.py: have it call its close() method - netrc.d: provide mutext info - netware: remove leftover traces - noproxy: also match with adjacent comma - noproxy: guard against empty hostnames in noproxy check - noproxy: tailmatch like in 7.85.0 and earlier - nroff-scan.pl: detect double highlights - ntlm: improve comment for encrypt_des - ntlm: silence ubsan warning about copying from null target_info pointer - openssl/mbedtls: use %d for outputing port with failf (int) - openssl: prefix errors with '[lib]/[version]: ' - os400: use platform socklen_t in Curl_getnameinfo_a - page-header: grammar improvement (display transfer rate) - proxy: refactor haproxy protocol handling as connection filter - README.md: remove badges and xmas-tree garnish - rtsp: fix RTSP auth - runtests: --no-debuginfod now disables DEBUGINFOD_URLS - runtests: do CRLF replacements per section only - scripts/checksrc.pl: detect duplicated include files - sendf: change Curl_read_plain to wrap Curl_recv_plain - sendf: remove unnecessary if condition - setup: do not require __MRC__ defined for Mac OS 9 builds - smb/telnet: do not free the protocol struct in *_done() - socks: fix username max size is 255 (0xFF) - spellcheck.words: remove 'github' as an accepted word - ssl-reqd.d: clarify that this is for upgrading connections only - strcase: use curl_str(n)equal for case insensitive matches - styled-output.d: this option does not work on Windows - system.h: fix socklen_t, curl_off_t, long long for Classic Mac OS - system.h: support 64-bit curl_off_t for NonStop 32-bit - test1421: fix typo - test3026: reduce runtime in legacy mingw builds - tests/sshserver.pl: re-enable ssh-rsa while using openssh 8.8+ - tests: add authorityInfoAccess to generated certs - tests: add HTTP/3 test case, custom location for proper nghttpx - tls: backends use connection filters for IO, enabling HTTPS-proxy - tool: determine the correct fopen option for -D - tool_cfgable: free the ssl_ec_curves on exit - tool_cfgable: make socks5_gssapi_nec a boolean - tool_formparse: avoid clobbering on function params - tool_getparam: make --no-get work as the opposite of --get - tool_operate: provide better errmsg for -G with bad URL - tool_operate: when aborting, make sure there is a non-NULL error buffer - tool_paramhlp: free the proto strings on exit - url: move back the IDN conversion of proxy names - urlapi: reject more bad letters from the host name: &+() - urldata: change port num storage to int and unsigned short - vms: remove SIZEOF_SHORT - vtls: fix build without proxy support - vtls: localization of state data in filters - WEBSOCKET.md: fix broken link - Websocket: fixes for partial frames and buffer updates - websockets: fix handling of partial frames - windows: fail early with a missing windres in autotools - windows: fix linking .rc to shared curl with autotools - winidn: drop WANT_IDN_PROTOTYPES - ws: if no connection is around, return error - ws: return CURLE_NOT_BUILT_IN when websockets not built in - x509asn1: avoid freeing unallocated pointers- Security Fix: [bsc#1206309, CVE-2022-43552] * HTTP Proxy deny use-after-free * Add curl-CVE-2022-43552.patch- Security Fix: [bsc#1206308, CVE-2022-43551] * Fix Another HSTS bypass via IDN * Add curl-CVE-2022-43551.patch- Add 1.50.0 as the minimum libnghttp2 build requirement version as a bandaid. Curl's 7.86.0 release introduces the use of nghttp2_option_set_no_rfc9113_leading_and_trailing_ws_validation, introduced by nghttp2 1.50.0 release, without introducing a check for the function/right version in their build scripts. This will make Zypper/cURL unusable in some corner cases where users installing something that requires libcurl4 before doing full system upgrade, thus updating the cURL stack, but not libnghttp2's. Background: boo#1204983, Factory mailing list threadd: "? broken dependency in curl and/or *zyp* ?", and forums thread: Curl-is-broken-after-an-update-which-subsequently-breaks-zypper.- Update to 7.86.0: * Security fixes: - POST following PUT confusion [bsc#1204383, CVE-2022-32221] - .netrc parser out-of-bounds access [bsc#1204384, CVE-2022-35260] - HTTP proxy double-free [bsc#1204385, CVE-2022-42915] - HSTS bypass via IDN [bsc#1204386, CVE-2022-42916] * Changes: - NPN: remove support for and use of - Websockets: initial support * Bugfixes: - altsvc: reject bad port numbers - autotools: reduce brute-force when detecting recv/send arg list - aws_sigv4: fix header computation - cli tool: do not use disabled protocols - connect: change verbose IPv6 address:port to [address]:port - connect: fix builds without AF_INET6 - connect: fix Curl_updateconninfo for TRNSPRT_UNIX - connect: fix the wrong error message on connect failures - content_encoding: use writer struct subclasses for different encodings - cookie: reject cookie names or content with TAB characters - curl/add_file_name_to_url: use the libcurl URL parser - curl/get_url_file_name: use libcurl URL parser - curl: warn for --ssl use, considered insecure - docs/libcurl/symbols-in-versions: add several missing symbols - ftp: ignore a 550 response to MDTM - functypes: provide the recv and send arg and return types - getparameter: return PARAM_MANUAL_REQUESTED for -M even when disabled - header: define public API functions as extern c - headers: reset the requests counter at transfer start - hostip: guard PF_INET6 use - hostip: lazily wait to figure out if IPv6 works until needed - http, vauth: always provide Curl_allow_auth_to_host() functionality - http2: make nghttp2 less picky about field whitespace - http: try parsing Retry-After: as a number first - http_proxy: restore the protocol pointer on error - lib: add missing limits.h includes - lib: prepare the incoming of additional protocols - lib: sanitize conditional exclusion around MIME - libssh: if sftp_init fails, don't get the sftp error code - mprintf: reject two kinds of precision for the same argument - mqtt: return error for too long topic - netrc: compare user name case sensitively - netrc: replace fgets with Curl_get_line - netrc: use the URL-decoded user - ngtcp2: fix build errors due to changes in ngtcp2 library - noproxy: support proxies specified using cidr notation - openssl: make certinfo available for QUIC - resolve: make forced IPv4 resolve only use A queries - schannel: ban server ALPN change during recv renegotiation - schannel: don't reset recv/send function pointers on renegotiation - schannel: when importing PFX, disable key persistence - setopt: use the handler table for protocol name to number conversions - setopt: when POST is set, reset the 'upload' field - single_transfer: use the libcurl URL parser when appending query parts - smb: replace CURL_WIN32 with WIN32 - tool: avoid generating ambiguous escaped characters in --libcurl - tool_main: exit at once if out of file descriptors - tool_operate: more transfer cleanup after parallel transfer fail - tool_operate: prevent over-queuing in parallel mode - tool_paramhelp: asserts verify maximum sizes for string loading - tool_xattr: save the original URL, not the final redirected one - url: a zero-length userinfo part in the URL is still a (blank) user - url: allow non-HTTPS HSTS-matching for debug builds - url: rename function due to name-clash in Watt-32 - url: use IDN decoded names for HSTS checks - urlapi: detect scheme better when not guessing - urlapi: fix parsing URL without slash with CURLU_URLENCODE - urlapi: reject more bad characters from the host name field * Remove patch upstream: - connect-fix-Curl_updateconninfo-for-TRNSPRT_UNIX.patch- Security Fix: [bsc#1204383, CVE-2022-32221] * POST following PUT confusion * Add curl-CVE-2022-32221.patch - Security Fix: [bsc#1204386, CVE-2022-42916] * HSTS bypass via IDN * Add curl-CVE-2022-42916.patch- Update connection info when using UNIX socket as endpoint connect-fix-Curl_updateconninfo-for-TRNSPRT_UNIX.patch- Change the deprecated configure option --enable-hidden-symbols to the new --enable-symbol-hiding.- Update to 7.85.0: * Security fixes: [bsc#1202593, CVE-2022-35252] - control code in cookie denial of service * Changes: - quic: add support via wolfSSL - schannel: Add TLS 1.3 support - setopt: add CURLOPT_PROTOCOLS_STR and CURLOPT_REDIR_PROTOCOLS_STR * Bugfixes: - asyn-thread: fix socket leak on OOM - asyn-thread: make getaddrinfo_complete return CURLcode - base64: base64url encoding has no padding - configure: fix broken m4 syntax in TLS options - configure: if asked to use TLS, fail if no TLS lib was detected - connect: add quic connection information - connect: set socktype/protocol correctly - cookie: reject cookies with "control bytes" - cookie: treat a blank domain in Set-Cookie: as non-existing - curl: output warning when a cookie is dropped due to size - Curl_close: call Curl_resolver_cancel to avoid memory-leak - digest: fix memory leak, fix not quoted 'opaque' - digest: fix missing increment of 'nc' value for auth-int - digest: pass over leading spaces in qop values - digest: reject broken header with session protocol but without qop - doh: use https protocol by default - easy_lock.h: include sched.h if available to fix build - easy_lock.h: use __asm__ instead of asm to fix build - easy_lock: switch to using atomic_int instead of bool - ftp: use a correct expire ID for timer expiry - h2h3: fix overriding the 'TE: Trailers' header - hostip: resolve *.localhost to 127.0.0.1/::1 - HTTP3.md: update to msh3 v0.4.0 - hyper: use wakers for curl pause/resume - lib3026: reduce the number of threads to 100 - libssh2: make atime/mtime date overflow return error - libssh2: provide symlink name in SFTP dir listing - multi: have curl_multi_remove_handle close CONNECT_ONLY transfer - multi: use larger dns hash table for multi interface - multi_wait: fix skipping to populate revents for extra_fds - netrc: Use the password from lines without login - ngtcp2: Fix build error due to change in nghttp3 prototypes - ngtcp2: fix stall or busy loop on STOP_SENDING with upload data - ngtcp2: implement cb_h3_stop_sending and cb_h3_reset_stream callbacks - openssl: add 'CURL_BORINGSSL_VERSION' to identify BoringSSL - openssl: add cert path in error message - openssl: add details to "unable to set client certificate" error - openssl: fix BoringSSL symbol conflicts with LDAP and Schannel - select: do not return fatal error on EINTR from poll() - sendf: fix paused header writes since after the header API - sendf: skip storing HTTP headers if HTTP disabled - url: really use the user provided in the url when netrc entry exists - url: reject URLs with hostnames longer than 65535 bytes - url: treat missing usernames in netrc as empty - urldata: reduce size of several struct fields - vtls: make Curl_ssl_backend() return the enum type curl_sslbackend * Remove tests-for-32bit.patch fixed in the update * Rebase libcurl-ocloexec.patch- Security fix: [bsc#1202593, CVE-2022-35252] * Control codes in cookie denial of service * Add curl-CVE-2022-35252.patch- add tests-for-32bit.patch to fix testsuite on 32bit platforms- Security fix: [bsc#1200734, CVE-2022-32205] * Set-Cookie denial of service * Add curl-CVE-2022-32205.patch - Security fix: [bsc#1200735, CVE-2022-32206] * HTTP compression denial of service * Add curl-CVE-2022-32206.patch - Security fix: [bsc#1200736, CVE-2022-32207] * Unpreserved file permissions * Add curl-CVE-2022-32207.patch - Security fix: [bsc#1200737, CVE-2022-32208] * FTP-KRB bad message verification * Add curl-CVE-2022-32208.patch- Update to 7.84.0: * Security fixes: - (bsc#1200737, CVE-2022-32208): FTP-KRB bad message verification - (bsc#1200736, CVE-2022-32207): Unpreserved file permissions - (bsc#1200735, CVE-2022-32206): HTTP compression denial of service - (bsc#1200734, CVE-2022-32205): Set-Cookie denial of service * Changes: - curl: add --rate to set max request rate per time unit - curl: deprecate --random-file and --egd-file - curl_version_info: add CURL_VERSION_THREADSAFE - CURLINFO_CAPATH/CAINFO: get the default CA paths from libcurl - lib: make curl_global_init() threadsafe when possible - libssh2: add CURLOPT_SSH_HOSTKEYFUNCTION - opts: deprecate RANDOM_FILE and EGDSOCKET - socks: support unix sockets for socks proxy * Bugfixes: - aws-sigv4: fix potentional NULL pointer arithmetic - bindlocal: don't use a random port if port number would wrap - c-hyper: mark status line as status for Curl_client_write() - ci: avoid `cmake -Hpath` - CI: bump FreeBSD 13.0 to 13.1 - ci: update github actions - cmake: add libpsl support - cmake: do not add libcurl.rc to the static libcurl library - cmake: enable curl.rc for all Windows targets - cmake: fix detecting libidn2 - cmake: support adding a suffix to the OS value - configure: skip libidn2 detection when winidn is used - configure: use the SED value to invoke sed - configure: warn about rustls being experimental - content_encoding: return error on too many compression steps - cookie: address secure domain overlay - cookie: apply limits - copyright.pl: parse and use .reuse/dep5 for skips - copyright: make repository REUSE compliant - curl.1: add a few see also --tls-max - curl.1: mention exit code zero too - curl: re-enable --no-remote-name - curl_easy_pause.3: remove explanation of progress function - curl_getdate.3: document that some illegal dates pass through - Curl_parsenetrc: don't access local pwbuf outside of scope - curl_url_set.3: clarify by default using known schemes only - CURLOPT_ALTSVC.3: document the file format - CURLOPT_FILETIME.3: fix the protocols this works with - CURLOPT_HTTPHEADER.3: improve comment in example - CURLOPT_NETRC.3: document the .netrc file format - CURLOPT_PORT.3: We discourage using this option - CURLOPT_RANGE.3: remove ranged upload advice - digest: added detection of more syntax error in server headers - digest: tolerate missing "realm" - digest: unquote realm and nonce before processing - DISABLED: disable 1021 for hyper again - docs/cmdline-opts: add copyright and license identifier to each file - docs/CONTRIBUTE.md: document the 'needs-votes' concept - docs: clarify data replacement policy for MIME API - doh: remove UNITTEST macro definition - examples/crawler.c: use the curl license - examples: remove fopen.c and rtsp.c - FAQ: Clarify Windows double quote usage - fopen: add Curl_fopen() for better overwriting of files - ftp: restore protocol state after http proxy CONNECT - ftp: when failing to do a secure GSSAPI login, fail hard - GHA/hyper: enable debug in the build - gssapi: improve handling of errors from gss_display_status - gssapi: initialize gss_buffer_desc strings - headers api: remove EXPERIMENTAL tag - http2: always debug print stream id in decimal with %u - http2: reject overly many push-promise headers - http: restore header folding behavior - hyper: use 'alt-used' - krb5: return error properly on decode errors - lib: make more protocol specific struct fields #ifdefed - libcurl-security.3: add "Secrets in memory" - libcurl-security.3: document CRLF header injection - libssh: skip the fake-close when libssh does the right thing - links: update dead links to the curl-wiki - log2changes: do not indent empty lines [ci skip] - macos9: remove partial support - Makefile.am: fix portability issues - Makefile.m32: delete obsolete options, improve -On [ci skip] - Makefile.m32: delete two obsolete OpenSSL options [ci skip] - Makefile.m32: stop forcing XP target with ipv6 enabled [ci skip] - max-time.d: clarify max-time sets max transfer time - mprintf: ignore clang non-literal format string - netrc: check %USERPROFILE% as well on Windows - netrc: support quoted strings - ngtcp2: allow curl to send larger UDP datagrams - ngtcp2: correct use of ngtcp2 and nghttp3 signed integer types - ngtcp2: enable Linux GSO - ngtcp2: extend QUIC transport parameters buffer - ngtcp2: fix alert_read_func return value - ngtcp2: fix typo in preprocessor condition - ngtcp2: handle error from ngtcp2_conn_submit_crypto_data - ngtcp2: send appropriate connection close error code - ngtcp2: support boringssl crypto backend - ngtcp2: use helper funcs to simplify TLS handshake integration - ntlm: provide a fixed fake host name - projects: fix third-party SSL library build paths for Visual Studio - quic: add Curl_quic_idle - quiche: support ca-fallback - rand: stop detecting /dev/urandom in cross-builds - remote-name.d: mention --output-dir - runtests.pl: add the --repeat parameter to the --help output - runtests: fix skipping tests not done event-based - runtests: skip starting the ssh server if user name is lacking - scripts/copyright.pl: fix the exclusion to not ignore man pages - sectransp: check for a function defined when __BLOCKS__ is undefined - select: return error from "lethal" poll/select errors - server/sws: support spaces in the HTTP request path - speed-limit/time.d: mention these affect transfers in either direction - strcase: some optimisations - test 2081: add a valid reply for the second request - test 675: add missing CR so the test passes when run through Privoxy - test414: add the '--resolve' keyword - test681: verify --no-remote-name - tests 266, 116 and 1540: add a small write delay - tests/data/test1501: kill ftp server after slow LIST response - tests/getpart: fix getpartattr to work with "data" and "data2" - tests/server/sws.c: change the HTTP writedelay unit to milliseconds - test{440,441,493,977}: add "HTTP proxy" keywords - tool_getparam: fix --parallel-max maximum value constraint - tool_operate: make sure --fail-with-body works with --retry - transfer: fix potential NULL pointer dereference - transfer: maintain --path-as-is after redirects - transfer: upload performance; avoid tiny send - url: free old conn better on reuse - url: remove redundant #ifdefs in allocate_conn() - url: URL encode the path when extracted, if spaces were set - urlapi: make curl_url_set(url, CURLUPART_URL, NULL, 0) clear all parts - urlapi: support CURLU_URLENCODE for curl_url_get() - urldata: reduce size of a few struct fields - urldata: remove three unused booleans from struct UserDefined - urldata: store tcp_keepidle and tcp_keepintvl as ints - version: allow stricmp() for sorting the feature list - vtls: make curl_global_sslset thread-safe - wolfssh.h: removed - wolfssl: correct the failf() message when a handle can't be made - wolfSSL: explicitly use compatibility layer - x509asn1: mark msnprintf return as unchecked- Update to 7.83.1: * Security fixes: - (bsc#1199225, CVE-2022-30115) HSTS bypass via trailing dot - (bsc#1199224, CVE-2022-27782) TLS and SSH connection too eager reuse - (bsc#1199223, CVE-2022-27781) CERTINFO never-ending busy-loop - (bsc#1199222, CVE-2022-27780) percent-encoded path separator in URL host - (bsc#1199221, CVE-2022-27779) cookie for trailing dot TLD - (bsc#1199220, CVE-2022-27778) removes wrong file on error * Bugfixes: - altsvc: fix host name matching for trailing dots - cirrus: Update to FreeBSD 12.3 - cirrus: Use pip for Python packages on FreeBSD - conn: fix typo 'connnection' -> 'connection' in two function names - cookies: make bad_domain() not consider a trailing dot fine - curl: free resource in error path - curl: guard against size_t wraparound in no-clobber code - CURLOPT_DOH_URL.3: mention the known bug - CURLOPT_HSTS*FUNCTION.3: document the involved structs as well - CURLOPT_SSH_AUTH_TYPES.3: fix the default - data/test376: set a proper name - GHA/mbedtls: enabled nghttp2 in the build - gha: build msh3 - gskit: fixed bogus setsockopt calls - gskit: remove unused function set_callback - hsts: ignore trailing dots when comparing hosts names - HTTP-COOKIES: add missing CURLOPT_COOKIESESSION - http: move Curl_allow_auth_to_host() - http_proxy/hyper: handle closed connections - hyper: fix test 357 - Makefile: fix "make ca-firefox" - mbedtls: bail out if rng init fails - mbedtls: fix compile when h2-enabled - mbedtls: fix some error messages - misc: use "autoreconf -fi" instead buildconf - msh3: get msh3 version from MsH3Version - msh3: print boolean value as text representation - msh3: psss remote_port to MsH3ConnectionOpen - ngtcp2: add ca-fallback support for OpenSSL backend - nss: return error if seemingly stuck in a cert loop - openssl: define HAVE_SSL_CTX_SET_EC_CURVES for libressl - post_per_transfer: remove the updated file name - sectransp: bail out if SSLSetPeerDomainName fails - tests/server: declare variable 'reqlogfile' static - tests: fix markdown formatting in README - test{898,974,976}: add 'HTTP proxy' keywords - tls: check more TLS details for connection reuse - url: check SSH config match on connection reuse - urlapi: address (harmless) UndefinedBehavior sanitizer warning - urlapi: reject percent-decoding host name into separator bytes - x509asn1: make do_pubkey handle EC public keys- Securiy fix: [bsc#1199223, CVE-2022-27781] * CERTINFO never-ending busy-loop * Add curl-CVE-2022-27781.patch - Securiy fix: [bsc#1199224, CVE-2022-27782] * TLS and SSH connection too eager reuse * Add curl-CVE-2022-27782.patch- Security fix: [bsc#1198608, CVE-2022-27774] * Credential leak on redirect * Add curl-CVE-2022-27774-2.patch + openssl: don't leak the SRP credentials in redirects either + this is a follow up patch after the initial patch.- Patches rework: * Refreshed all patches as -p1. * Use autopatch macro. * Renamed: - dont-mess-with-rpmoptflags.diff -> dont-mess-with-rpmoptflags.patch * Removed (already upstream): - curl-fix-verifyhost.patch - Update to 7.83.0: * Security fixes: - (bsc#1198766, CVE-2022-27776) Auth/cookie leak on redirect - (bsc#1198723, CVE-2022-27775) Bad local IPv6 connection reuse - (bsc#1198608, CVE-2022-27774) Credential leak on redirect - (bsc#1198614, CVE-2022-22576) OAUTH2 bearer bypass in connection re-use * Changes: - curl: add %header{name} experimental support in -w handling - curl: add %{header_json} experimental support in -w handling - curl: add --no-clobber - curl: add --remove-on-error - header api: add curl_easy_header and curl_easy_nextheader - msh3: add support for QUIC and HTTP/3 using msh3 * Bugfixes: - appveyor: add Cygwin build - appveyor: only add MSYS2 to PATH where required - BearSSL: add CURLOPT_SSL_CIPHER_LIST support - BearSSL: add CURLOPT_SSL_CTX_FUNCTION support - BINDINGS.md: add Hollywood binding - CI: Do not use buildconf. Instead, just use: autoreconf -fi - CI: install Python package impacket to run SMB test 1451 - configure.ac: move -pthread CFLAGS setting back where it used to be - configure: bump the copyright year range int the generated output - conncache: include the zone id in the "bundle" hashkey - connecache: remove duplicate connc->closure_handle check - connect: make Curl_getconnectinfo work with conn cache from share handle - connect: use TCP_KEEPALIVE only if TCP_KEEPIDLE is not defined - cookie.d: clarify when cookies are sent - cookies: improve errorhandling for reading cookiefile - curl/system.h: update ifdef condition for MCST-LCC compiler - curl: error out if -T and -d are used for the same URL - curl: error out when options need features not present in libcurl - curl: escape '?' in generated --libcurl code - curl: fix segmentation fault for empty output file names. - curl_easy_header: fix typos in documentation - CURLINFO_PRIMARY_PORT.3: clarify which port this is - CURLOPT*TLSAUTH.3: they only work with OpenSSL or GnuTLS - CURLOPT_DISALLOW_USERNAME_IN_URL.3: use uppercase URL - CURLOPT_PREQUOTE.3: only works for FTP file transfers, not dirs - CURLOPT_PROGRESSFUNCTION.3: fix typo in example - CURLOPT_UNRESTRICTED_AUTH.3: extended explanation - CURLSHOPT_UNLOCKFUNC.3: fix the callback prototype - docs/HYPER.md: updated to reflect current hyper build needs - docs/opts: Mention Schannel client cert type is P12 - docs: Fix missing semicolon in example code - docs: lots of minor language polish - English: use American spelling consistently - fail.d: tweak the description - firefox-db2pem.sh: make the shell script safer - ftp: fix error message for partial file upload - gen.pl: change wording for mutexed options - GHA: add openssl3 jobs moved over from zuul - GHA: build hyper with nightly rustc - GHA: move bearssl jobs over from zuul - gha: move the event-based test over from Zuul - gtls: fix build for disabled TLS-SRP - http2: handle DONE called for the paused stream - http2: RST the stream if we stop it on our own will - http: avoid auth/cookie on redirects same host diff port - http: close the stream (not connection) on time condition abort - http: reject header contents with nul bytes - http: return error on colon-less HTTP headers - http: streamclose "already downloaded" - hyper: fix status_line() return code - hyper: fix tests 580 and 581 for hyper - hyper: no h2c support - infof: consistent capitalization of warning messages - ipv4/6.d: clarify that they are about using IP addresses - json.d: fix typo (overriden -> overridden) - keepalive-time.d: It takes many probes to detect brokenness - lib/warnless.[ch]: only check for WIN32 and ignore _WIN32 - lib670: avoid double check result - lib: #ifdef on USE_HTTP2 better - lib: fix some misuse of curlx_convert_wchar_to_UTF8 - lib: remove exclamation marks - libssh2: compare sha256 strings case sensitively - libssh2: make the md5 comparison fail if wrong length - libssh: fix build with old libssh versions - libssh: fix double close - libssh: Improve fix for missing SSH_S_ stat macros - libssh: unstick SFTP transfers when done event-based - macos: set .plist version in autoconf - mbedtls: remove 'protocols' array from backend when ALPN is not used - mbedtls: remove server_fd from backend - mk-ca-bundle.pl: Use stricter logic to process the certificates - mk-ca-bundle.vbs: delete this script in favor of mk-ca-bundle.pl - mlc_config.json: add file to ignore known troublesome URLs - mqtt: better handling of TCP disconnect mid-message - ngtcp2: add client certificate authentication for OpenSSL - ngtcp2: avoid busy loop in low CWND situation - ngtcp2: deal with sub-millisecond timeout - ngtcp2: disconnect the QUIC connection proper - ngtcp2: enlarge H3_SEND_SIZE - ngtcp2: fix HTTP/3 upload stall and avoid busy loop - ngtcp2: fix memory leak - ngtcp2: fix QUIC_IDLE_TIMEOUT - ngtcp2: make curl 1ms faster - ngtcp2: remove remote_addr which is not used in a meaningful way - ngtcp2: update to work after recent ngtcp2 updates - ngtcp2: use token when detecting :status header field - nonblock: restore setsockopt method to curlx_nonblock - openssl: check SSL_get_peer_cert_chain return value - openssl: enable CURLOPT_SSL_EC_CURVES with BoringSSL - openssl: fix CN check error code - options: remove mistaken space before paren in prototype - perl: removed a double semicolon at end of line - pop3/smtp: return *WEIRD_SERVER_REPLY when not understood - projects/README: converted to markdown - projects: Update VC version names for VS2017, VS2022 - rtsp: don't let CSeq error override earlier errors - runtests: add 'bearssl' as testable feature - runtests: make 'oldlibssh' be before 0.9.4 - schannel: remove dead code that will never run - scripts/copyright.pl: ignore the new mlc_config.json file - scripts: move three scripts from lib/ to scripts/ - test1135: sync with recent API updates - test1459: disable for oldlibssh - test375: fix line endings on Windows - test386: Fix an incorrect test markup tag - test718: edited slightly to return better HTTP - tests/server/util.h: align WIN32 condition with util.c - tests: refactor server/socksd.c to support --unix-socket - timediff.[ch]: add curlx helper functions for timeval conversions - tls: make mbedtls and NSS check for h2, not nghttp2 - tool and tests: force flush of all buffers at end of program - tool_cb_hdr: Turn the Location: into a terminal hyperlink - tool_getparam: error out on missing -K file - tool_listhelp.c: uppercase URL - tool_operate: fix a scan-build warning - tool_paramhlp: use feof(3) to identify EOF correctly when using fread(3) - transfer: redirects to other protocols or ports clear auth - unit1620: call global_init before calling Curl_open - url: check sasl additional parameters for connection reuse. - vtls: provide a unified APLN-disagree string for all backends - vtls: use a backend standard message for "ALPN: offers %s" - vtls: use a generic "ALPN, server accepted" message - winbuild/README.md: fixup dead link - winbuild: Add a Visual Studio example to the README - wolfssl: fix compiler error without IPv6- Security fix: [bsc#1198766, CVE-2022-27776] * Auth/cookie leak on redirect * Add curl-CVE-2022-27776.patch - Security fix: [bsc#1198723, CVE-2022-27775] * Bad local IPv6 connection reuse * Add curl-CVE-2022-27775.patch - Security fix: [bsc#1198608, CVE-2022-27774] * Credential leak on redirect * Add curl-CVE-2022-27774.patch * Disable test 1568, which is broken by upstream patch. - Add curl-CVE-2022-27774-disabletest-1568.patch - Security fix: [bsc#1198614, CVE-2022-22576] * OAUTH2 bearer bypass in connection re-use * Add curl-CVE-2022-22576.patch- Fix: openssl: fix CN check error code * Add curl-fix-verifyhost.patch- Update to 7.82.0: * curl: add --json command line option * curl: make it so that sensitive command line arguments do not show as easily in the output of ps(1) * curl_multi_socket.3: remove callback and typical usage descriptions * ftp: provide error message for control bytes in path * ldap: return CURLE_URL_MALFORMAT for bad URL * lib: remove support for CURL_DOES_CONVERSIONS * mqtt: plug some memory leaks * multi: allow user callbacks to call curl_multi_assign * multi: remember connection_id before returning connection to pool * multi: set in_callback for multi interface callbacks * netware: remove support * ngtcp2: adapt to changed end of headers callback proto * openldap: implement SASL authentication * openssl: return error if TLS 1.3 is requested when not supported * sectransp: mark a 3DES cipher as weak * smb: pass socket for writing and reading data instead of FIRSTSOCKET * tool_getparam: DNS options that need c-ares now fail without it * TPF: drop support * url: given a user in the URL, find pwd for that user in netrc * url: keep trailing dot in host name * urlapi: handle "redirects" smarter * urldata: CONN_IS_PROXIED replaces bits.proxy when proxy can be disabled * urldata: remove conn->bits.user_passwd- update to 7.81.0: * mime: use percent-escaping for multipart form field and file names * asyn-ares: ares_getaddrinfo needs no happy eyeballs timer * azure: make the "w/o HTTP/SMTP/IMAP" build disable SSL proper * BINDINGS: add cURL client for PostgreSQL * BINDINGS: add one from Everything curl and update a link * checksrc: detect more kinds of NULL comparisons we avoid * CI: build examples for additional code verification * CI: bump job to use mbedtls 3.1.0 * cmake: don't set _USRDLL on a static Windows build * cmake: prevent dev warning due to mismatched arg * cmake: private identifiers use CURL_ instead of CMAKE_ prefix * config.d: update documentation to match the path search * configure: add -lm to configure for rustls build. * configure: better diagnostics if hyper is built wrong * configure: don't enable TLS when --without-* flags are used * configure: fix runtime-lib detection on macOS * curl.1: require "see also" for every documented option * curl: improve error message for --head with -J * curl_easy_cleanup.3: remove from multi handle first * curl_easy_escape.3: call curl_easy_cleanup in example * curl_easy_unescape.3: call curl_easy_cleanup in example * curl_multi_init.3: fix EXAMPLE formatting * curl_multi_perform/socket_action.3: clarify what errors mean * curl_share_setopt.3: split out options into their own manpages * CURLOPT_STDERR.3: does not work with libcurl as a win32 DLL * digest: compute user:realm:pass digest w/o userhash * docs/checksrc: Add documentation for STRERROR * docs/cmdline-opts: do not say "protocols: all" * docs/examples: workaround broken -Wno-pedantic-ms-format * docs/HTTP3: describe how to setup a h3 reverse-proxy for testing * docs/INSTALL.md: typo fix : added missing "get" verb * docs/URL-SYNTAX.md: space is not fine in a given URL * docs: add known bugs list to HTTP3.md * docs: address proselint nits * docs: consistent manpage SYNOPSIS * docs: fix dead links, remove ECH.md * docs: fix typo in OpenSSL 3 build instructions * docs: Update the Reducing Size section * example/progressfunc: remove code for old libcurls * examples/multi-single.c: remove WAITMS() * FAQ: typo fix : "yout" ➤ "your" * ftp: disable warning 4706 in MSVC * gen.pl: improve example output format * github workflow: add wolfssl (removed from zuul) * github/workflows: add mbedtls and mbedtls-clang (removed from zuul) * gtls: check return code for gnutls_alpn_set_protocols * hash: lazy-alloc the table in Curl_hash_add() * http2:set_transfer_url() return early on OOM * HTTP3: update quiche build instructions * http: enable haproxy support for hyper backend * http: Fix CURLOPT_HTTP200ALIASES * http_proxy: don't close the socket (too early) * insecure.d: detail its use for SFTP and SCP as well * insecure.d: expand and clarify * libcurl-multi.3: "SOCKS proxy handshakes" are not blocking * libcurl-security.3: mention address and URL mitigations * libssh2: fix error message for sha256 mismatch * libtest: avoid "assignment within conditional expression" * lift: ignore is a deprecated config option, use ignoreRules * linkcheck.yml: add CI job that checks markdown links * m4/curl-compilers: tell clang -Wno-pointer-bool-conversion * Makefile.m32: rename -winssl option to -schannel and tidy up * mbedTLS: add support for CURLOPT_CAINFO_BLOB * mbedtls: fix CURLOPT_SSLCERT_BLOB * mbedtls: fix private member designations for v3.1.0 * misc: remove unused doh flags when CURL_DISABLE_DOH is defined * misc: s/e-mail/email * multi: cleanup the socket hash when destroying it * multi: handle errors returned from socket/timer callbacks * multi: shut down CONNECT in Curl_detach_connnection * netrc.d: edit the .netrc example to look nicer * ngtcp2: verify the server cert on connect (quictls) * ngtcp2: verify the server certificate for the gnutls case * nss:set_cipher don't clobber the cipher list * openldap: implement STARTTLS * openldap: process search query response messages one by one * openldap: several minor improvements * openldap: simplify ldif generation code * openssl: check the return value of BIO_new() * openssl: define HAVE_OPENSSL_VERSION for OpenSSL 1.1.0+ * openssl: remove `RSA_METHOD_FLAG_NO_CHECK` handling if unavailable * openssl: remove usage of deprecated `SSL_get_peer_certificate` * openssl: use non-deprecated API to read key parameters * page-footer: add a mention of how to report bugs to the man page * page-footer: document more environment variables * request.d: refer to 'method' rather than 'command' * retry-all-errors.d: make the example complete * runtests: make the SSH library a testable feature * rustls: read of zero bytes might be okay * rustls: remove comment about checking handshaking * rustls: remove incorrect EOF check * sha256/md5: return errors when init fails * socks5: use appropriate ATYP for numerical IP address host names * test1156: enable for hyper * test1156: fixup the stdout check for Windows * test1525: tweaked for hyper * test1526: enable for hyper * test1527: enable for hyper * test1528: enable for hyper * test1554: adjust for hyper * test1556: adjust for hyper * test302[12]: run only with the libssh2 backend * test661: enable for hyper * tests/CI.md: add more information on CI environments * tests/data/test302[12]: fix MSYS2 path conversion of hostpubsha256 * tftp: mark protocol as not possible to do over CONNECT * tool_findfile: updated search for a file in the homedir * tool_operate: only set SSH related libcurl options for SSH URLs * tool_operate: warn if too many output arguments were found * url.c: fix the SIGPIPE comment for Curl_close * url: check ssl_config when re-use proxy connection * url: reduce ssl backend count for CURL_DISABLE_PROXY builds * urlapi: accept port number zero * urlapi: if possible, shorten given numerical IPv6 addresses * urlapi: provide more detailed return codes * urlapi: reject short file URLs * version_win32: Check build number and platform id * vtls/rustls: adapt to the updated rustls_version proto * writeout: fix %{http_version} for HTTP/3 * x509asn1: return early on errors * zuul.d: update rustls-ffi to version 0.8.2 * zuul: fix quiche build pointing to wrong Cargo- Update to 7.80.0: * Changes: - CURLOPT_MAXLIFETIME_CONN: maximum allowed lifetime for conn reuse - CURLOPT_PREREQFUNCTION: add new callback - libssh2: add SHA256 fingerprint support - urlapi: add curl_url_strerror() * Bugfixes: - aws-sigv4: make signature work when post data is binary - c-hyper: don't abort CONNECT responses early when auth-in-progress - c-hyper: make CURLOPT_SUPPRESS_CONNECT_HEADERS work - cmake: add CURL_ENABLE_SSL option - cmake: with OpenSSL, define OPENSSL_SUPPRESS_DEPRECATED - configure.ac: replace krb5-config with pkg-config - configure: when hyper is selected, deselect nghttp2 - curl-confopts.m4: remove --enable/disable-hidden-symbols - curl-openssl.m4: modify library order for openssl linking - curl_ntlm_core: use OpenSSL only if DES is available - Curl_updateconninfo: store addresses for QUIC connections too - ftp: make the MKD retry to retry once per directory - http: fix Basic auth with empty name field in URL - http: reject HTTP response codes < 100 - http: remove assert that breaks hyper - http: set content length earlier - imap: display quota information - libssh2: Get the version at runtime if possible - md5: fix compilation with OpenSSL 3.0 API - ngtcp2: advertise h3 as well as h3-29 - ngtcp2: compile with the latest nghttp3 - ngtcp2: use latest QUIC TLS RFC9001 - NTLM: use DES_set_key_unchecked with OpenSSL - openssl: if verifypeer is not requested, skip the CA loading - openssl: with OpenSSL 1.1.0+ a failed RAND_status means goaway - schannel: fix memory leak due to failed SSL connection - sendf: accept zero-length data in Curl_client_write() - sha256: use high-level EVP interface for OpenSSL - sws: fix memory leak on exit - tool_operate: a failed etag save now only fails that transfer - url: check the return value of curl_url() - url: set "k->size" -1 at start of request - urlapi: skip a strlen(), pass in zero - urlapi: URL decode percent-encoded host names - vtls: Fix a memory leak if an SSL session cannot be added to the cache - wolfssl: use for SHA256, MD4, MD5, and setting DES odd parity * Use --with-openssl configure option, --with-ssl is now deprecated- Update to 7.79.1 in SLE-15-SP4 [jsc#SLE-21047] * Deleted patches fixed in the update: curl-CVE-2020-8284.patch curl-CVE-2020-8285.patch curl-CVE-2020-8286.patch curl-CVE-2020-8231.patch curl-CVE-2020-8177.patch curl-CVE-2020-8169.patch curl-CVE-2021-22947.patch curl-CVE-2021-22946.patch curl-CVE-2021-22898.patch curl-CVE-2021-22924.patch curl-CVE-2021-22925.patch curl-CVE-2021-22876.patch curl-CVE-2021-22890.patch curl-X509_V_FLAG_PARTIAL_CHAIN.patch * Rebased patches: curl-disabled-redirect-protocol-message.patch curl-secure-getenv.patch libcurl-ocloexec.patch- Update to 7.79.1: * Bugfixes: - Curl_http2_setup: don't change connection data on repeat invokes - curl_multi_fdset: make FD_SET() not operate on sockets out of range - dist: provide lib/.checksrc in the tarball - FAQ: add GOPHERS + curl works on data, not files - hsts: CURLSTS_FAIL from hsts read callback should fail transfer - hsts: handle unlimited expiry - http: fix the broken >3 digit response code detection - strerror: use sys_errlist instead of strerror on Windows - test1184: disable: https://github.com/curl/curl/issues/7725 - tests/sshserver.pl: make it work with openssh-8.7p1- Temporarily disable flaky test 1184 * See https://github.com/curl/curl/issues/7725- Update to 7.79.0: [bsc#1190213, CVE-2021-22945] [bsc#1190373, CVE-2021-22946] [bsc#1190374, CVE-2021-22947] * Changes: - bearssl: support CURLOPT_CAINFO_BLOB - http: consider cookies over localhost to be secure - secure transport: support CURLINFO_CERTINFO * Bugfixes: - CVE-2021-22945: clear the leftovers pointer when sending succeeds - CVE-2021-22946: do not ignore --ssl-reqd - CVE-2021-22947: reject STARTTLS server response pipelining - auth: do not append zero-terminator to authorisation id in kerberos - auth: properly handle byte order in kerberos security message - auth: use sasl authzid option in kerberos - auth: we do not support a security layer after kerberos authentication - c-hyper: deal with Expect: 100-continue combined with POSTFIELDS - c-hyper: handle HTTP/1.1 => HTTP/1.0 downgrade on reused connection - c-hyper: initial step for 100-continue support - c-hyper: initial support for "dumping" 1xx HTTP responses - curl-openssl.m4: show correct output for OpenSSL v3 - docs/MQTT: update state of username/password support - docs: the security list is reached at security at curl.se now - getparameter: fix the --local-port number parser - hostip: Make Curl_ipv6works function independent of getaddrinfo - http_proxy: fix the User-Agent inclusion in CONNECT - http_proxy: fix user-agent and custom headers for CONNECT with hyper - http_proxy: only wait for writable socket while sending request - mailing lists: move from cool.haxx.se to lists.haxx.se - mbedtls: avoid using a large buffer on the stack - mbedTLS: initial 3.0.0 support - ngtcp2: remove the acked_crypto_offset struct field init - ngtcp2: replace deprecated functions with nghttp3_conn_shutdown_stream_read - ngtcp2: reset the oustanding send buffer again when drained - ngtcp2: rework the return value handling of ngtcp2_conn_writev_stream - ngtcp2: stop buffering crypto data - ngtcp2: utilize crypto API functions to simplify - openssl: when creating a new context, there cannot be an old one - scripts: invoke interpreters through /usr/bin/env - tests/runtests.pl: cleanup copy&paste mistakes and unused code - tests: be explicit about using 'python3' instead of 'python' - tool/tests: fix potential year 2038 issues - tool_operate: Fix --fail-early with parallel transfers - x509asn1: fix heap over-read when parsing x509 certificates * Rebase libcurl-ocloexec.patch- Security fix: [bsc#1190374, CVE-2021-22947] * STARTTLS protocol injection via MITM * Add curl-CVE-2021-22947.patch- Security fix: [bsc#1190373, CVE-2021-22946] * Protocol downgrade required TLS bypassed * Add curl-CVE-2021-22946.patch- Update to 7.78.0: [bsc#1188217, CVE-2021-22922][bsc#1188218, CVE-2021-22923] [bsc#1188219, CVE-2021-22924][bsc#1188220, CVE-2021-22925] * Changes: - curl_url_set: reject spaces in URLs w/o CURLU_ALLOW_SPACE - CURLE_SETOPT_OPTION_SYNTAX: new error name for wrong setopt syntax - hostip: make 'localhost' return fixed values - mbedtls: add support for cert and key blob options - metalink: remove all support for it - mqtt: add support for username and password * Bugfixes: - ares: always store IPv6 addresses first - c-hyper: abort CONNECT response reading early on non 2xx responses - c-hyper: add support for transfer-encoding in the request - c-hyper: bail on too long response headers - c-hyper: clear NTLM auth buffer when request is issued - c-hyper: fix NTLM on closed connection tested with test159 - conncache: lowercase the hash key for better match - curl_multibyte: Remove local encoding fallbacks - Curl_ntlm_core_mk_nt_hash: fix OOM in error path - Curl_ssl_getsessionid: fail if no session cache exists - easy: during upkeep, attach Curl_easy to connections in the cache - gnutls: set the preferred TLS versions in correct order - hsts: ignore numberical IP address hosts - HSTS: not experimental anymore - http2: init recvbuf struct for pushed streams - http: fix crash in rate-limited upload - http: make the haproxy support work with unix domain sockets - http_proxy: deal with non-200 CONNECT response with Hyper - lib: don't compare fd to FD_SETSIZE when using poll - lib: fix compiler warnings with CURL_DISABLE_NETRC - lib: fix type of len passed to *printf's %*s - lib: more %u for port and int for %*s fixes - lib: use %u instead of %ld for port number printf - libssh2: limit time a disconnect can take to 1 second - mqtt: detect illegal and too large file size - msnprintf: return number of printed characters excluding null byte - multi: add scan-build-6 work-around in curl_multi_fdset - multi: alter transfer timeout ordering - multi: do not switch off connect_only flag when closing - multi: fix crash in curl_multi_wait / curl_multi_poll - ngtcp2: disable TLSv1.3 compatible mode when using GnuTLS - openssl: avoid static variable for seed flag - openssl: don't remove session id entry in disassociate - socketpair: fix potential hangs - socks4: scan for the IPv4 address in resolve results - ssl: read pending close notify alert before closing the connection - telnet: fix option parser to not send uninitialized contents - TLS: prevent shutdown loops to get stuck - vtls: exit addsessionid if no cache is inited - vtls: fix connection reuse checks for issuer cert and case sensitivity- Security fix: [bsc#1188220, CVE-2021-22925] * TELNET stack contents disclosure again * Add curl-CVE-2021-22925.patch- Security fix: [bsc#1188219, CVE-2021-22924] * Bad connection reuse due to flawed path name checks * Add curl-CVE-2021-22924.patch- Security fix: Disable the metalink feature: * Insufficiently Protected Credentials [bsc#1188218, CVE-2021-22923] * Wrong content via metalink not discarded [bsc#1188217, CVE-2021-22922]- Update to 7.77.0: [bsc#1186114, CVE-2021-22898] [bsc#1186115, bsc#1185579, CVE-2021-22901] * Security fixes: - CVE-2021-22297: schannel cipher selection surprise - CVE-2021-22298: TELNET stack contents disclosure - CVE-2021-22901: TLS session caching disaster * Changes: - configure: make the TLS library choice(s) explicit - curl: ignore options asking for SSLv2 or SSLv3 - hsts: enable by default - SSL: support in-memory CA certs for some backends - vtls: refuse setting any SSL version * Bugfixes: - configure: provide --with-openssl, deprecate --with-ssl - cookie: CURLOPT_COOKIEFILE set to NULL switches off cookies - curl: include libmetalink version in --version output - data_pending: check only SECONDARY socket for FTP(S) transfers - gnutls: don't allow TLS 1.3 for versions that don't support it - gnutls: make setting only the MAX TLS allowed version work - http2: fix resource leaks in set_transfer_url() and push_promise() - http: limit the initial send amount to used upload buffer size - rustls: only return CURLE_AGAIN when TLS session is fully drained - rustls: use ALPN - schannel: Disable auto credentials; add an option to enable it - schannel: Support strong crypto option - sectransp: allow cipher name to be specified - sockfilt: avoid getting stuck waiting for writable socket- Security fix: [bsc#1186114, CVE-2021-22898] * TELNET stack contents disclosure - Add curl-CVE-2021-22898.patch- Allow partial chain verification [jsc#SLE-17956] * Have intermediate certificates in the trust store be treated as trust-anchors, in the same way as self-signed root CA certificates are. This allows users to verify servers using the intermediate cert only, instead of needing the whole chain. * Set FLAG_TRUSTED_FIRST unconditionally. * Do not check partial chains with CRL check. - Add curl-X509_V_FLAG_PARTIAL_CHAIN.patch- update to 7.76.1: - ngtcp2: Use ALPN h3-29 for now - TODO: remove 18.22 --fail-with-body- Update to 7.76.0 * Security fixes: - [bsc#1183933, CVE-2021-22876]: strip credentials from the auto-referer header field - [bsc#1183934, CVE-2021-22890]: add 'isproxy' argument to Curl_ssl_get/addsessionid() * Changes: - cookies: Support multiple -b parameters - curl: add --fail-with-body - doh: add options to disable ssl verification - http: add support to read and store the referrer header - sasl: support SCRAM-SHA-1 and SCRAM-SHA-256 via libgsasl - vtls: initial implementation of rustls backend * Bugfixes: - CVE-2021-22876: strip credentials from the auto-referer header field - CVE-2021-22890: add 'isproxy' argument to Curl_ssl_get/addsessionid() - c-hyper: support automatic content-encoding - configure: only add OpenSSL paths if they are defined - configure: provide Largefile feature for curl-config - curl: set CURLOPT_NEW_FILE_PERMS if requested - doh: Fix sharing user's resolve list with DOH handles - doh: Inherit CURLOPT_STDERR from user's easy handle - dynbuf: bump the max HTTP request to 1MB - ftp: add 'list_only' to the transfer state struct - ftp: add 'prefer_ascii' to the transfer state struct - ftp: allow SIZE to fail when doing (resumed) upload - ftp: avoid SIZE when asking for a TYPE A file - ftp: fix memory leak in ftp_done - ftp: never set data->set.ftp_append outside setopt - gnutls: assume nettle crypto support - http2: don't set KEEP_SEND when there's no more data to be sent - http2: fail if connection terminated without END_STREAM - http: do not add a referrer header with empty value - http: strip default port from URL sent to proxy - http: use credentials from transfer, not connection - lib: remove 'conn->data' completely - multi: close the connection when h2=>h1 downgrading - multi: do once-per-transfer inits in before_perform in DID state - multi: rename the multi transfer states - multi: update pending list when removing handle - ngtcp2: adapt to the new recv_datagram callback - ngtcp2: clarify calculation precedence - ngtcp2: sync with recent API updates - openssl: adapt to v3's new const for a few API calls - openssl: ensure to check SSL_CTX_set_alpn_protos return values - openssl: remove get_ssl_version_txt in favor of SSL_get_version - parse_proxy: fix a memory leak in the OOM path - url: fix memory leak if OOM in the HSTS handling - url: fix possible use-after-free in default protocol - urldata: don't touch data->set.httpversion at run-time - urldata: merge "struct DynamicStatic" into "struct UrlState" - urldata: remove the 'rtspversion' field - urldata: remove the _ORIG suffix from string names - wolfssl: don't store a NULL sessionid- Security fix: [bsc#1183934, CVE-2021-22890] * When using a HTTPS proxy and TLS 1.3, libcurl can confuse session tickets arriving from the HTTPS proxy but work as if they arrived from the remote server and then wrongly "short-cut" the host handshake. - Add curl-CVE-2021-22890.patch- Security fix: [bsc#1183933, CVE-2021-22876] * The automatic referer leaks credentials - Add curl-CVE-2021-22876.patch- Harden build, enable full RELRO - Never allow undefined symbols anywhere.- Update to 7.75.0 * Changes: - curl: add --create-file-mode [mode] - curl: add new variables to --write-out - dns: extend CURLOPT_RESOLVE syntax for adding non-permanent entries - gopher: implement secure gopher protocol - http: add Hyper as new optional HTTP backend - http: introduce AWS HTTP v4 Signature support * Bugfixes: - cmake: Add an option to disable libidn2 - cmake: enable gophers correctly in curl-config - cmake: expose CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG - digest_sspi: Show InitializeSecurityContext errors in verbose mode - getinfo: build with disabled HTTP support - http: get CURLOPT_REQUEST_TARGET working with a HTTP proxy - http_proxy: Fix CONNECT chunked encoding race condition - httpauth: make multi-request auth work with custom port - lib: pass in 'struct Curl_easy *' to most functions - lib: remove Curl_ prefix from many static functions - lib: save a bit of space with some structure packing - libssh: avoid plain free() of libssh-memory - mime: make sure setting MIMEPOST to NULL resets properly - multi_runsingle: bail out early on data->conn == NULL - ngtcp2: Fix http3 upload stall - ngtcp2: Fix stack buffer overflow - openssl: lowercase the hostname before using it for SNI - socks: use the download buffer instead - speedcheck: exclude paused transfers - tooĺ_writeout: fix the -w time output units - url: if IDNA conversion fails, fallback to Transitional - Refresh libcurl-ocloexec.patch- Enable zstd and brotli support- Update to 7.74.0 * Changes: hsts: add experimental support for Strict-Transport-Security * Bugfixes: - Inferior OCSP verification [bsc#1179593, CVE-2020-8286] - FTP wildcard stack overflow [bsc#1179399, CVE-2020-8285] - trusting FTP PASV responses [bsc#1179398, CVE-2020-8284] - Revert "multi: implement wait using winsock events" - openssl: free mem_buf in error path - ntlm: avoid malloc(0) on zero length user and domain - ngtcp2: use the minimal version of QUIC supported by ngtcp2 - ngtcp2: advertise h3 ALPN unconditionally - file: avoid duplicated code sequence - openssl: guard against OOM on context creation - docs: document the 8MB input string limit for curl_easy_escape and curl_easy_setopt() - hsts: add read/write callbacks - hsts: add support for Strict-Transport-Security - alt-svc: enable by default - checksrc: warn on empty line before open brace - connect: repair build without ipv6 availability - curl.se: new home - ftp: retry getpeername for FTP with TCP_FASTOPEN - gnutls: fix memory leaks (certfields memory wasn't released) - http: pass correct header size to debug callback for chunked post - libssh2: fix transport over HTTPS proxy - openssl: guard against OOM on context creation - openssl: use OPENSSL_init_ssl() with >= 1.1.0 - Revert "multi: implement wait using winsock events" - socks: check for DNS entries with the right port number - tool_operate: --retry for HTTP 408 responses too - tool_operate: bail out proper on errors during parallel transfers - urlapi: don't accept blank port number field without scheme - urlapi: URL encode a '+' in the query part - vquic/ngtcp2.h: define local_addr as sockaddr_storage - Update check section: * runtests now supports dynamically base64 encoded sections in tests * Replace env interpreter for perl and python3 - Remove curl-use_OPENSSL_config.patch since the OpenSSL initialization has been updated to use OPENSSL_init_ssl() with >= 1.1.0- Security fix: [bsc#1179593, CVE-2020-8286] * Inferior OCSP verification: libcurl offers "OCSP stapling" via the 'CURLOPT_SSL_VERIFYSTATUS' option that, when set, verifies the OCSP response that a server responds with as part of the TLS handshake. It then aborts the TLS negotiation if something is wrong with the response. The same feature can be enabled with '--cert-status' using the curl tool. * As part of the OCSP response verification, a client should verify that the response is indeed set out for the correct certificate. This step was not performed by libcurl when built or told to use OpenSSL as TLS backend. - Add curl-CVE-2020-8286.patch- Security fix: [bsc#1179399, CVE-2020-8285] * FTP wildcard stack overflow: The wc_statemach() internal function has been rewritten to use an ordinary loop instead of the recursive approach. - Add curl-CVE-2020-8285.patch- Security fix: [bsc#1179398, CVE-2020-8284] * Trusting FTP PASV responses: When curl performs a passive FTP transfer, it first tries the 'EPSV' command and if that is not supported, it falls back to using 'PASV'. A malicious server can use the 'PASV' response to trick curl into connecting back to a given IP address and port, and this way potentially make curl extract information about services that are otherwise private and not disclosed. * The IP address part of the response is now ignored by default, by making 'CURLOPT_FTP_SKIP_PASV_IP' default to '1L'. The same goes for the command line tool, which then might need '--no-ftp-skip-pasv-ip' set to prevent curl from ignoring the address in the server response. - Add curl-CVE-2020-8284.patch- Update patches to fix compiling warnings: * curl-disabled-redirect-protocol-message.patch * libcurl-ocloexec.patch - Enable test 1165- Update to 7.73.0 * Changes: - curl: add --output-dir - curl: support XDG_CONFIG_HOME to find .curlrc - curl: update --help with categories - curl_easy_option_*: new API for meta-data about easy options - CURLE_PROXY: new error code - mqtt: enable by default - sftp: add new quote commands 'atime' and 'mtime' - ssh: add the option CURLKHSTAT_FINE_REPLACE - tls: add CURLOPT_SSL_EC_CURVES and --curves * Bugfixes: - base64: also build for smtp, pop3 and imap - cleanups: avoid curl_ on local variables - configure: let --enable-debug set -Wenum-conversion with gcc >= 10 - conn: check for connection being dead before reuse - curl: in retry output don't call all problems "transient" - curl: make checkpasswd, file2memory, file2string and glob_match_url use dynbuf - curl: retry delays in parallel mode no longer sleeps blocking - curl: use curlx_dynbuf for realloc when loading config files - curl:parallel_transfers: make sure retry readds the transfer - curl_get_line: build only if cookies or alt-svc are enabled - Curl_pgrsTime - return new time to avoid timeout integer overflow - Curl_send: return error when pre_receive_plain can't malloc - dynbuf: make sure Curl_dyn_tail() zero terminates - etag: save and use the full received contents - ftp: a 550 response to SIZE returns CURLE_REMOTE_FILE_NOT_FOUND - ftp: avoid risk of reading uninitialized integers - ftp: get rid of the PPSENDF macro - ftp: make a 552 response return CURLE_REMOTE_DISK_FULL - ftp: separate FTPS from FTP over "HTTPS proxy" - HTTP/3: update to OpenSSL_1_1_1g-quic-draft-29 - http: consolidate nghttp2_session_mem_recv() call paths - http_proxy: do not count proxy headers in the header bytecount - http_proxy: do not crash with HTTPS_PROXY and NO_PROXY set - imap: make imap_send use dynbuf for the send buffer management - imap: set cselect_bits to CURL_CSELECT_IN initially - lib1560: verify "redirect" to double-slash leading URL - lib: make Curl_gethostname accept a const pointer - libssh2: handle the SSH protocols done over HTTPS proxy - libssh2: pass on the error from ssh_force_knownhost_key_type - memdebug: remove 9 year old unused debug function - multi: expand pre-check for socket readiness - ngtcp2: adapt to new NGTCP2_PROTO_VER_MAX define - ngtcp2: adapt to the new pkt_info arguments - openssl: avoid error conditions when importing native CA - openssl: consider ALERT_CERTIFICATE_EXPIRED a failed verification - parsedate: tune the date to epoch conversion - pause: only trigger a reread if the unpause sticks - pingpong: use a dynbuf for the *_pp_sendf() function - runtests: allow creating files without newlines - runtests: allow generating a binary sequence from hex - runtests: clear pid variables when failing to start a server - schannel: fix memory leak when using get_cert_location - schannel: return CURLE_PEER_FAILED_VERIFICATION for untrusted root - sectransp: make it build with --disable-proxy - select.h: make socket validation macros test for INVALID_SOCKET - select: align poll emulation to return all relevant events - select: fix poll-based check not detecting connect failure - select: simplify return code handling for poll and select - setopt: if the buffer exists, refuse the new BUFFERSIZE - setopt: return CURLE_BAD_FUNCTION_ARGUMENT on bad argument - socketpair: allow CURL_DISABLE_SOCKETPAIR - sockfilt: handle FD_CLOSE winsock event on write socket - symbian: drop support - tests: remove pipelining tests - tls: fix SRP detection by using the proper #ifdefs - tls: provide the CApath verbose log on its own line - tool_setopt: escape binary data to hex, not octal - url: use blank credentials when using proxy w/o username and password - urlapi: use more Curl_safefree - vtls: deduplicate client certificates in ssl_config_data- Update to 7.72.0 [bsc#1175109, CVE-2020-8231] * Changes: - content_encoding: add zstd decoding support - CURL_PUSH_ERROROUT: allow the push callback to fail the parent stream - CURLINFO_EFFECTIVE_METHOD: added * Bugfixes: - CVE-2020-8231: libcurl: wrong connect-only connection - curl-config: ignore REQUIRE_LIB_DEPS in --libs output - curl: improve the existing file check with -J - curl_multi_setopt: fix compiler warning "result is always false" - curl_version_info.3: CURL_VERSION_KERBEROS4 is deprecated - docs: Add video link to docs/CONTRIBUTE.md - docs: clarify MAX_SEND/RECV_SPEED functionality - ftp: don't do ssl_shutdown instead of ssl_close - ftpserver: don't verify SMTP MAIL FROM names - getinfo: reset retry-after value in initinfo - gnutls: repair the build with 'CURL_DISABLE_PROXY' - gtls: survive not being able to get name/issuer - h2: repair trailer handling - http2: close the http2 connection when no more requests may be sent - http2: fix nghttp2_strerror -> nghttp2_http2_strerror in debug messages - libssh2: s/ssherr/sftperr/ - mprintf: Fix dollar string handling - mprintf: Fix stack overflows - multi_remove_handle: close unused connect-only connections - ngtcp2: adapt to error code rename - ngtcp2: adjust to recent sockaddr updates - ngtcp2: update to modified qlog callback prototype - ntlm: free target_info before (re-)malloc - page-header: provide protocol details in the curl.1 man page - quiche: handle calling disconnect twice - setopt: unset NOBODY switches to GET if still HEAD - smtp_parse_address: handle blank input string properly - socks: use size_t for size variable - tls-max.d: this option is only for TLS-using connections - tlsv1.3.d. only for TLS-using connections - tool_getparam: make --krb option work again - transfer: fix data_pending for builds with both h2 and h3 enabled - transfer: fix memory-leak with CURLOPT_CURLU in a duped handle - transfer: move retrycount from connect struct to easy handle - url: fix CURLU and location following- Security fix: [bsc#1175109, CVE-2020-8231] * An application that performs multiple requests with libcurl's multi API and sets the 'CURLOPT_CONNECT_ONLY' option, might in rare circumstances experience that when subsequently using the setup connect-only transfer, libcurl will pick and use the wrong connection and instead pick another one the application has created since then. - Add curl-CVE-2020-8231.patch- Update to 7.71.1 * Bugfixes: - Curl_inet_ntop: always check the return code - CURLOPT_READFUNCTION.3: provide the upload data size up front - escape: make the URL decode able to reject only %00-bytes - escape: zero length input should return a zero length output - examples/multithread.c: call curl_global_cleanup() - http2: set the correct URL in pushed transfers - http: fix proxy auth with blank password - mbedtls: fix build with disabled proxy support - ngtcp2: sync with current master - Revert "multi: implement wait using winsock events" - sendf: improve the message on client write errors - terminology: call them null-terminated strings - tool_cb_hdr: Fix etag warning output and return code - url: allow user + password to contain "control codes" for HTTP(S) - vtls: compare cert blob when finding a connection to reuse- Update to 7.71.0 [bsc#1173026, CVE-2020-8169][bsc#1173027, CVE-2020-8177] * Changes: - CURLOPT_SSL_OPTIONS: optional use of Windows' CA store (with openssl) - setopt: add CURLOPT_PROXY_ISSUERCERT(_BLOB) for coherency - setopt: support certificate options in memory with struct curl_blob - tool: Add option --retry-all-errors to retry on any error * Bugfixes: - *_sspi: fix bad uses of CURLE_NOT_BUILT_IN - altsvc: bump to h3-29 - altsvc: fix 'dsthost' may be used uninitialized in this function - altsvc: fix parser for lines ending with CRLF - altsvc: remove the num field from the altsvc struct - asyn-*: remove support for never-used NULL entry pointers - azure: use matrix strategy to avoid configuration redundancy - build: disable more code/data when built without proxy support - buildconf: remove -print from the find command that removes files - checksrc: enhance the ASTERISKSPACE and update code accordingly - cirrus: disable SFTP and SCP tests - CMake: add ENABLE_ALT_SVC option - CMake: add HTTP/3 support (ngtcp2+nghttp3, quiche) - CMake: add libssh build support - configure: fix pthread check with static boringssl - configure: for wolfSSL, check for the DES func needed for NTLM - configure: only strip first -L from LDFLAGS - configure: repair the check if argv can be written to - configure: the wolfssh backend does not provide SCP - connect: improve happy eyeballs handling - connect: make happy eyeballs work for QUIC (again) - curl: remove -J "informational" written on stdout - Curl_addrinfo: use one malloc instead of three - dynbuf: introduce internal generic dynamic buffer functions - easy: fix dangling pointer on easy_perform fail - examples/ephiperfifo: turn off interval when setting timerfd - examples/http2-down/upload: add error checks - FILEFORMAT: add more features that tests can depend on - FILEFORMAT: describe verify/stderr - ftp: make domore_getsock() return the secondary socket properly - ftp: mark return-ignoring calls to Curl_GetFTPResponse with (void) - ftp: shut down the secondary connection properly when SSL is used - GnuTLS: Backend support for CURLINFO_SSL_VERIFYRESULT - hostip: make Curl_printable_address not return anything - http2: keep trying to send pending frames after req.upload_done - http2: simplify and clean up trailer handling - http: move header storage to Curl_easy from connectdata - libssh2: improved error output for wrong quote syntax - libssh2: keep sftp errors as 'unsigned long' - libssh2: set the expected total size in SCP upload init - multi: add defensive check on data->multi->num_alive - multi: implement wait using winsock events - ngtcp2: cleanup memory when failing to connect - ngtcp2: fix build with current ngtcp2 master implementing draft 28 - ngtcp2: fix happy eyeballs quic connect crash - ngtcp2: introduce qlog support - ngtcp2: never call fprintf() in lib code in release version - ngtcp2: update with recent API changes - ntlm: enable NTLM support with wolfSSL - OpenSSL: have CURLOPT_CRLFILE imply CURLSSLOPT_NO_PARTIALCHAIN - openssl: set FLAG_TRUSTED_FIRST unconditionally - projects: Add crypt32.lib to dependencies for all OpenSSL configs - quiche: clean up memory properly when failing to connect - quiche: enable qlog output - quiche: update SSLKEYLOGFILE support - Revert "ssh: ignore timeouts during disconnect" - select: fix overflow protection in Curl_socket_check - sendf: make failf() use the mvsnprintf() return code - server/sws: fix asan warning on use of uninitialized variable - server/util: fix logmsg format using curl_off_t argument - sha256: fixed potentially uninitialized variable - share: don not set the share flag it something fails - sockfilt: make select_ws stop waiting on exit signal event - socks: detect connection close during handshake - socks: fix expected length of SOCKS5 reply - socks: remove unreachable breaks in socks.c and mime.c - source cleanup: remove all custom typedef structs - timeouts: change millisecond timeouts to timediff_t from time_t - timeouts: move ms timeouts to timediff_t from int and long - tool_cfgable: free login_options at exit - tool_getparam: -i is not OK if -J is used - tool_getparam: fix memory leak in parse_args - tool_operate: fixed potentially uninitialized variables - tool_paramhlp: fixed potentially uninitialized strtol() variable - transfer: close connection after excess data has been read - typecheck-gcc.h: CURLINFO_PRIVATE does not need a 'char *' - unit1604.c: fix implicit conv from 'SANITIZEcode' to 'CURLcode' - url: accept "any length" credentials for proxy auth - url: alloc the download buffer at transfer start - url: make the updated credentials URL-encoded in the URL - url: reject too long input when parsing credentials - url: sort the protocol schemes in rough popularity order - urlapi: accept :: as a valid IPv6 address - urldata: leave the HTTP method untouched in the set.* struct - urlglob: treat literal IPv6 addresses with zone IDs as a host name - user-agent.d: spell out what happens given a blank argument - vauth/cleartext: fix theoretical integer overflow - version.d: expanded and alpha-sorted - vtls: Extract and simplify key log file handling from OpenSSL - wolfssl: add SSLKEYLOGFILE support - wording: avoid blacklist/whitelist stereotypes - write-out.d: added "response_code"- Security fix: [bsc#1173027, CVE-2020-8177] * curl can be tricked my a malicious server to overwrite a local file when using '-J' ('--remote-header-name') and '-i' ('--head') in the same command line. - Add curl-CVE-2020-8177.patch- Security fix: [bsc#1173026, CVE-2020-8169] * Partial password leak over DNS on HTTP redirect - Add curl-CVE-2020-8169.patch- Change with-gssapi configure parameter: krb5 is changing location in the future: ask krb5-config about the correct prefix values.- Update to 7.70.0 * Changes: - curl: add --ssl-revoke-best-effort to allow a "best effort" revocation check - mqtt: add new experimental protocol - schannel: add "best effort" revocation check option: CURLSSLOPT_REVOKE_BEST_EFFORT - writeout: support to generate JSON output with '%{json}' * Bugfixes: - gnutls: Don't skip really long certificate fields - gnutls: ensure TLS 1.3 when SRP isn't requested - lib: never define CURL_CA_BUNDLE with a getenv - libcurl-multi.3: added missing full stop - libssh: avoid options override by configuration files - libssh: Use new ECDSA key types to check known hosts - tons of other fixes- Update to 7.69.1 * Bugfixes: - ares: store dns parameters for duphandle - cirrus-ci: disable the FreeBSD 13 builds - curl_share_setopt.3: Note sharing cookies doesn't enable the engine - lib1564: reduce number of mid-wait wakeup calls - libssh: Fix matching user-specified MD5 hex key - MANUAL: update a dict-using command line - mime: do not perform more than one read in a row - mime: fix the binary encoder to handle large data properly - mime: latch last read callback status - multi: skip EINTR check on wakeup socket if it was closed - pause: bail out on bad input - pause: force a connection recheck after unpausing (take 2) - pause: return early for calls that don't change pause state - runtests.1: rephrase how to specify what tests to run - runtests: fix missing use of exe_ext helper function - seek: fix fall back for missing ftruncate on Windows - sftp: fix segfault regression introduced by #4747 in 7.69.0 - sha256: Added SecureTransport implementation - sha256: Added WinCrypt implementation - socks4: fix host resolve regression - socks5: host name resolv regression fix - tests/server: fix missing use of exe_ext helper function - tests: fix static ip:port instead of dynamic values being used - tests: make sleeping portable by avoiding select - unit1612: fix the inclusion and compilation of the HMAC unit test - urldata: remove the 'stream_was_rewound' connectdata struct member - version: make curl_version* thread-safe without using global context- ignore_runtests_failure.patch: remove, no longer needed- Update to 7.69.0 * Changes: - polarssl: removed - smtp: add CURLOPT_MAIL_RCPT_ALLLOWFAILS and --mail-rcpt-allowfails - wolfSSH: new SSH backend * Bugfixes: - altsvc: improved header parser - altsvc: keep a copy of the file name to survive handle reset - altsvc: make saving the cache an atomic operation - altsvc: use h3-27 - azure: disable brotli on the macos debug-builds - build: remove all HAVE_OPENSSL_ENGINE_H defines - cleanup: fix several comment typos - cleanup: fix typos and wording in docs and comments - cmake: add support for CMAKE_LTO option - cmake: clean up and improve build procedures - cmake: Show HTTPS-proxy in the features output - cmake: use check_symbol_exists also for inet_pton - configure.ac: fix comments about --with-quiche - configure: disable metalink if mbedTLS is specified - configure: disable metalink support for incompatible SSL/TLS - conn: do not reuse connection if SOCKS proxy credentials differ - conncache: removed unused Curl_conncache_bundle_size() - connect: remove some spurious infof() calls - connection reuse: respect the max_concurrent_streams limits - cookie: check __Secure- and __Host- case sensitively - cookies: make saving atomic with a rename - create-dirs.d: mention the mode - curl: avoid using strlen for testing if a string is empty - curl: error on --alt-svc use w/o support - curl: let -D merge headers in one file again - curl: make #0 not output the full URL - curl: make the -# spaceship bar not wrap the line - curl: remove 'config' field from OutStruct - curl:progressbarinit: ignore column width from terminals < 20 - curl_escape.3: add a link to curl_free - curl_getenv.3: fix the memory handling description - curl_global_init: assume the EINTR bit by default - curl_global_init: move the IPv6 works status bool to multi handle - CURLINFO_COOKIELIST.3: Fix example - CURLOPT_ALTSVC_CTRL.3: fix the DEFAULT wording - CURLOPT_PROXY_SSL_OPTIONS.3: Sync with CURLOPT_SSL_OPTIONS.3 - CURLOPT_REDIR_PROTOCOLS.3: update the DEFAULT section - data.d: remove "Multiple files can also be specified" - digest: do not quote algorithm in HTTP authorisation - docs/HTTP3: add --enable-alt-svc to curl's configure - docs/HTTP3: update the OpenSSL branch to use for ngtcp2 - docs: fix typo on CURLINFO_RETRY_AFTER - easy: remove dead code - form.d: fix two minor typos - ftp: convert 'sock_accepted' to a plain boolean - ftp: remove superfluous checking for crlf in user or pwd - ftp: shrink temp buffers used for PORT - github: Instructions to post "uname -a" on Unix systems in issues - GnuTLS: always send client cert - gtls: fixed compilation when using GnuTLS < 3.5.0 - hostip: move code to resolve IP address literals to 'Curl_resolv' - HTTP-COOKIES: describe the cookie file format - HTTP-COOKIES: mention that a trailing newline is required - http2: make pausing/unpausing set/clear local stream window - http2: now requires nghttp2 >= 1.12.0 - http: added 417 response treatment - http: increase EXPECT_100_THRESHOLD to 1Mb - http: mark POSTs with no body as "upload done" from the start - http: move "oauth_bearer" from connectdata to Curl_easy - include: remove non-curl prefixed defines - KNOWN_BUGS: Multiple methods in a single WWW-Authenticate: header - libssh2: add support for forcing a hostkey type - libssh2: fix variable type - libssh: improve known hosts handling - llist: removed unused Curl_llist_move() - location.d: the method change is from POST to GET only - md4: fixed compilation issues when using GNU TLS gcrypt - md4: use init/update/final functions in Secure Transport - md5: added implementation for mbedTLS - mk-ca-bundle: add support for CKA_NSS_SERVER_DISTRUST_AFTER - multi: change curl_multi_wait/poll to error on negative timeout - multi: fix outdated comment - multi: if Curl_readwrite sets 'comeback' use expire, not loop - multi_done: if multiplexed, make conn->data point to another transfer - multi_wait: stop loop when sread() returns zero - ngtcp2: add error code for QUIC connection errors - ngtcp2: fixed to only use AF_INET6 when ENABLE_IPV6 - ngtcp2: update to git master and its draft-25 support - ntlm: removed the dependency on the TLS libaries when using MD5 - ntlm_wb: use Curl_socketpair() for greater portability - oauth2-bearer.d: works for HTTP too - openssl: make CURLINFO_CERTINFO not truncate x509v3 fields - openssl: remove redundant assignment - os400: fixed the build - pause: force-drain the transfer on unpause - quiche: update to draft-25 - README: mention that the docs is in docs/ - runtests: make random seed fixed for a month - runtests: restore the command log - schannel_verify: Fix alt names manual verify for UNICODE builds - sha256: use crypto implementations when available - singleuse.pl: support new API functions, fix curl_dbg_ handling - smtp: support the SMTPUTF8 extension - smtp: support UTF-8 based host names in MAIL FROM - SOCKS: make the connect phase non-blocking - strcase: turn Curl_raw_tolower into static - strerror: increase STRERROR_LEN 128 -> 256 - test1323: added missing 'unit test' feature requirement - tests: add a unit test for MD4 digest generation - tests: add a unit test for SHA256 digest generation - tests: add a unit test for the HMAC hash generation - tests: deduce the tool name from the test case for unit tests - tests: fix Python 3 compatibility of smbserver.py - tool_dirhie: allow directory traversal during creation - tool_homedir: change GetEnv() to use libcurl's curl_getenv() - url: include the failure reason when curl_win32_idn_to_ascii() fails - urlapi: guess scheme properly with credentials given - urldata: do string enums without #ifdefs for build scripts - vtls: refactor Curl_multissl_version to make the code clearer - Refresh patches: * curl-secure-getenv.patch * libcurl-ocloexec.patch- Eliminate curl-mini: The reason for this to exist was that cmake pulled in curl into too many places, causing build cycles. A new cmake-mini was generated, eliminating that need.- Update to 7.68.0 * Changes: - TLS: add BearSSL vtls implementation - XFERINFOFUNCTION: support CURL_PROGRESSFUNC_CONTINUE - curl: add --etag-compare and --etag-save - curl: add --parallel-immediate - multi: add curl_multi_wakeup() - openssl: CURLSSLOPT_NO_PARTIALCHAIN can disable partial cert chains * Bugfixes: - CVE-2019-15601: file: on Windows, refuse paths that start with \\ - Azure Pipelines: add several builds - CMake: add support for building with the NSS vtls backend - CURL-DISABLE: initial docs for the CURL_DISABLE_* defines - CURLOPT_HEADERFUNCTION.3: Document that size is always 1 - CURLOPT_QUOTE.3: fix typos - CURLOPT_READFUNCTION.3: fix the example - CURLOPT_URL.3: "curl supports SMB version 1 (only)" - CURLOPT_VERBOSE.3: see also ERRORBUFFER - HISTORY: added cmake, HTTP/3 and parallel downloads with curl - HISTORY: the SMB(S) support landed in 2014 - INSTALL.md: provide Android build instructions - KNOWN_BUGS: Connection information when using TCP Fast Open - KNOWN_BUGS: LDAP on Windows doesn't work correctly - KNOWN_BUGS: TLS session cache doesn't work with TFO - OPENSOCKETFUNCTION.3: correct the purpose description - TrackMemory tests: always remove CR before LF - altsvc: bump to h3-24 - altsvc: make the save function ignore NULL filenames - build: Disable Visual Studio warning "conditional expression is constant" - build: fix for CURL_DISABLE_DOH - checksrc.bat: Add a check for vquic and vssh directories - checksrc: repair the copyrightyear check - cirrus-ci: enable clang sanitizers on freebsd 13 - cirrus: Drop the FreeBSD 10.4 build - config-win32: cpu-machine-OS for Windows on ARM - configure: avoid unportable `==' test(1) operator - configure: enable IPv6 support without `getaddrinfo` - configure: fix typo in help text - conncache: CONNECT_ONLY connections assumed always in-use - conncache: fix multi-thread use of shared connection cache - copyrights: fix copyright year range - create_conn: prefer multiplexing to using new connections - curl -w: handle a blank input file correctly - curl.h: add two missing defines for "pre ISO C" compilers - curl/parseconfig: fix mem-leak - curl/parseconfig: use curl_free() to free memory allocated by libcurl - curl: cleanup multi handle on failure - curl: fix --upload-file . hangs if delay in STDIN - curl: fix -T globbing - curl: improved cleanup in upload error path - curl: make a few char pointers point to const char instead - curl: properly free mimepost data - curl: show better error message when no homedir is found - curl: show error for --http3 if libcurl lacks support - curl_setup_once: consistently use WHILE_FALSE in macros - define: remove HAVE_ENGINE_LOAD_BUILTIN_ENGINES, not used anymore - docs: Change 'experiemental' to 'experimental' - docs: TLS SRP doesn't work with TLS 1.3 - docs: fix several typos - docs: mention CURL_MAX_INPUT_LENGTH restrictions - doh: improved both encoding and decoding - doh: make it behave when built without proxy support - examples/postinmemory.c: Call curl_global_cleanup always - examples/url2file.c: corrected erroneous comment - examples: add multi-poll.c - global_init: undo the "intialized" bump in case of failure - hostip: suppress compiler warning - http_ntlm: Remove duplicate NSS initialisation - lib: Move lib/ssh.h -> lib/vssh/ssh.h - lib: fix compiler warnings with `CURL_DISABLE_VERBOSE_STRINGS` - lib: fix warnings found when porting to NuttX - lib: remove ASSIGNWITHINCONDITION exceptions, use our code style - lib: remove erroneous +x file permission on some c files - libssh2: add support for ECDSA and ed25519 knownhost keys - multi.h: remove INITIAL_MAX_CONCURRENT_STREAMS from public header - multi: free sockhash on OOM - multi_poll: avoid busy-loop when called without easy handles attached - ngtcp2: Support the latest update key callback type - ngtcp2: fix thread-safety bug in error-handling - ngtcp2: free used resources on disconnect - ngtcp2: handle key updates as ngtcp2 master branch tells us - ngtcp2: increase QUIC window size when data is consumed - ngtcp2: use overflow buffer for extra HTTP/3 data - ntlm: USE_WIN32_CRYPTO check removed to get USE_NTLM2SESSION set - ntlm_wb: fix double-free in OOM - openssl: Revert to less sensitivity for SYSCALL errors - openssl: improve error message for SYSCALL during connect - openssl: prevent recursive function calls from ctx callbacks - openssl: retrieve reported LibreSSL version at runtime - openssl: set X509_V_FLAG_PARTIAL_CHAIN by default - parsedate: offer a getdate_capped() alternative - pause: avoid updating socket if done was already called - projects: Fix Visual Studio projects SSH builds - projects: Fix Visual Studio wolfSSL configurations - quiche: reject HTTP/3 headers in the wrong order - remove_handle: clear expire timers after multi_done() - runtests: --repeat=[num] to repeat tests - runtests: introduce --shallow to reduce huge torture tests - schannel: fix --tls-max for when min is --tlsv1 or default - setopt: Fix ALPN / NPN user option when built without HTTP2 - strerror: Add Curl_winapi_strerror for Win API specific errors - strerror: Fix an error looking up some Windows error strings - strerror: Fix compiler warning "empty expression" - system.h: fix for MCST lcc compiler - test/sws: search for "Testno:" header unconditionally if no testno - test1175: verify symbols-in-versions and libcurl-errors.3 in sync - test1270: a basic -w redirect_url test - test1456: remove the use of a fixed local port number - test1558: use double slash after file: - test1560: require IPv6 for IPv6 aware URL parsing - tests/lib1557: fix mem-leak in OOM - tests/lib1559: fix mem-leak in OOM - tests/lib1591: free memory properly on OOM, in the trailers callback - tests/unit1607: fix mem-leak in OOM - tests/unit1609: fix mem-leak in OOM - tests/unit1620: fix bad free in OOM - tests: Change NTLM tests to require SSL - tests: Fix bounce requests with truncated writes - tests: fix build with `CURL_DISABLE_DOH` - tests: fix permissions of ssh keys in WSL - tests: make it possible to set executable extensions - tests: make sure checksrc runs on header files too - tests: set LC_ALL=en_US.UTF-8 instead of blank in several tests - tests: use DoH feature for DoH tests - tests: use \r\n for log messages in WSL - tool_operate: fix mem leak when failed config parse - travis: Fix error detection - travis: abandon coveralls, it is not reliable - travis: build ngtcp2 with --enable-lib-only - travis: export the CC/CXX variables when set - vtls: make BearSSL possible to set with CURL_SSL_BACKEND - winbuild: Define CARES_STATICLIB when WITH_CARES=static - winbuild: Document CURL_STATICLIB requirement for static libcurl - Remove curl-expire-clear.patch- Fix segfault in zypper ref: [bsc#1156481] * remove_handle: clear expire timers after multi_done() * Add patch curl-expire-clear.patch- Update spec file with spec-cleaner- Update to 7.67.0 * Changes: - curl: added --no-progress-meter - setopt: CURLMOPT_MAX_CONCURRENT_STREAMS is new - urlapi: CURLU_NO_AUTHORITY allows empty authority/host part * Bugfixes: - BINDINGS: five new bindings addded - CURLOPT_TIMEOUT.3: Clarify transfer timeout time includes queue time - CURLOPT_TIMEOUT.3: remove the mention of "minutes" - ESNI: initial build/setup support - FTP: FTPFILE_NOCWD: avoid redundant CWDs - FTP: allow "rubbish" prepended to the SIZE response - FTP: remove trailing slash from path for LIST/MLSD - FTP: skip CWD to entry dir when target is absolute - FTP: url-decode path before evaluation - HTTP3.md: move -p for mkdir, remove -j for make - HTTP3: fix invalid use of sendto for connected UDP socket - HTTP3: fix prefix parameter for ngtcp2 build - HTTP3: show an --alt-svc using example too - INSTALL: add missing space for configure commands - INSTALL: add vcpkg installation instructions - altsvc: accept quoted ma and persist values - altsvc: both backends run h3-23 now - appveyor: Add MSVC ARM64 build - appveyor: Use two parallel compilation on appveyor with CMake - appveyor: add --disable-proxy autotools build - appveyor: publish artifacts on appveyor - appveyor: upgrade VS2017 to VS2019 - asyn-thread: make use of Curl_socketpair() where available - asyn-thread: s/AF_LOCAL/AF_UNIX for Solaris - build: Remove unused HAVE_LIBSSL and HAVE_LIBCRYPTO defines - checksrc: fix uninitialized variable warning - chunked-encoding: stop hiding the CURLE_BAD_CONTENT_ENCODING error - cirrus: Switch the FreeBSD 11.x build to 11.3 and add a 13.0 build - cirrus: switch off blackhole status on the freebsd CI machines - cleanups: 21 various PVS-Studio warnings - configure: only say ipv6 enabled when the variable is set - configure: remove all cyassl references - conn-reuse: requests wanting NTLM can reuse non-NTLM connections - connect: return CURLE_OPERATION_TIMEDOUT for errno == ETIMEDOUT - connect: silence sign-compare warning - cookie: avoid harmless use after free - cookie: pass in the correct cookie amount to qsort() - cookies: change argument type for Curl_flush_cookies - cookies: using a share with cookies shouldn't enable the cookie engine - copyrights: update copyright notices to 2019 - curl: create easy handles on-demand and not ahead of time - curl: ensure HTTP 429 triggers --retry - curl: exit the create_transfers loop on errors - curl: fix memory leaked by parse_metalink() - curl: load large files with -d @ much faster - docs/HTTP3: fix `--with-ssl` ngtcp2 configure flag - docs: added multi-event.c example - docs: disambiguate CURLUPART_HOST is for host name (ie no port) - docs: note on failed handles not being counted by curl_multi_perform - doh: allow only http and https in debug mode - doh: avoid truncating DNS QTYPE to lower octet - doh: clean up dangling DOH memory on easy close - doh: fix (harmless) buffer overrun - doh: fix undefined behaviour and open up for gcc and clang optimization - doh: return early if there is no time left - examples/sslbackend: fix -Wchar-subscripts warning - gnutls: make gnutls_bye() not wait for response on shutdown - http2: expire a timeout at end of stream - http2: prevent dup'ed handles to send dummy PRIORITY frames - http2: relax verification of :authority in push promise requests - http2_recv: a closed stream trumps pause state - http: lowercase headernames for HTTP/2 and HTTP/3 - ldap: Stop using wide char version of ldapp_err2string - ldap: fix OOM error on missing query string - mbedtls: add error message for cert validity starting in the future - mime: when disabled, avoid C99 macro - ngtcp2: adapt to API change - ngtcp2: compile with latest ngtcp2 + nghttp3 draft-23 - ngtcp2: remove fprintf() calls - openssl: close_notify on the FTP data connection doesn't mean closure - openssl: use strerror on SSL_ERROR_SYSCALL - os400: getpeername() and getsockname() return ebcdic AF_UNIX sockaddr - parsedate: fix date parsing disabled builds - quiche: don't close connection at end of stream - quiche: persist connection details (fixes -I with --http3) - quiche: set 'drain' when returning without having drained the queues - quiche: update HTTP/3 config creation to new API - redirect: handle redirects to absolute URLs containing spaces - runtests: get textaware info from curl instead of perl - schannel: reverse the order of certinfo insertions - schannel_verify: Fix concurrent openings of CA file - security: silence conversion warning - setopt: handle ALTSVC set to NULL - setopt: make it easier to add new enum values - setopt: store CURLOPT_RTSP_SERVER_CSEQ correctly - smb: check for full size message before reading message details - smbserver: fix Python 3 compatibility - socks: Fix destination host shown on SOCKS5 error - test1162: disable MSYS2's POSIX path conversion - test1591: fix spelling of http feature - tests: add 'connect to non-listen' keywords - tests: fix narrowing conversion warnings - tests: fix the test 3001 cert failures - tests: makes tests succeed when using --disable-proxy - tests: use %FILE_PWD for file:// URLs - tests: use port 2 instead of 60000 for a safer non-listening port - tool_operate: Fix retry sleep time shown to user when Retry-After - url: Curl_free_request_state() should also free doh handles - url: don't set appconnect time for non-ssl/non-ssh connections - url: fix the NULL hostname compiler warning - url: normalize CURLINFO_EFFECTIVE_URL - url: only reuse TLS connections with matching pinning - urlapi: avoid index underflow for short ipv6 hostnames - urlapi: fix URL encoding when setting a full URL - urlapi: question mark within fragment is still fragment - urldata: use 'bool' for the bit type on MSVC compilers - vtls: fix narrowing conversion warnings- Update to 7.66.0 [bsc#1149496, CVE-2019-5482][bsc#1149495, CVE-2019-5481] [bsc#1149604, bsc#1149572, jsc#SLE-9295] * Changes: - CURLINFO_RETRY_AFTER: parse the Retry-After header value - HTTP3: initial (experimental still not working) support - curl: --sasl-authzid added to support CURLOPT_SASL_AUTHZID from the tool - curl: support parallel transfers with -Z - curl_multi_poll: a sister to curl_multi_wait() that waits more - sasl: Implement SASL authorisation identity via CURLOPT_SASL_AUTHZID * Bugfixes: - CVE-2019-5481: FTP-KRB double-free - CVE-2019-5482: TFTP small blocksize heap buffer overflow - CMake: remove needless newlines at end of gss variables - CMake: use platform dependent name for dlopen() library - CURLINFO docs: mention that in redirects times are added - CURLOPT_ALTSVC.3: use a "" file name to not load from a file - CURLOPT_ALTSVC_CTRL.3: remove CURLALTSVC_ALTUSED - CURLOPT_HEADERFUNCTION.3: clarify - CURLOPT_HTTP_VERSION: seting this to 3 forces HTTP/3 use directly - CURLOPT_READFUNCTION.3: provide inline example - CURLOPT_SSL_VERIFYHOST: treat the value 1 as 2 - Curl_addr2string: take an addrlen argument too - Curl_fillreadbuffer: avoid double-free trailer buf on error - HTTP: use chunked Transfer-Encoding for HTTP_POST if size unknown - alt-svc: add protocol version selection masking - alt-svc: fix removal of expired cache entry - alt-svc: make it use h3-22 with ngtcp2 as well - alt-svc: more liberal ALPN name parsing - alt-svc: send Alt-Used: in redirected requests - alt-svc: with quiche, use the quiche h3 alpn string - asyn-thread: create a socketpair to wait on - cleanup: move functions out of url.c and make them static - cleanup: remove the 'numsocks' argument used in many places - configure: avoid undefined check_for_ca_bundle - curl.h: add CURL_HTTP_VERSION_3 to the version enum - curl: cap the maximum allowed values for retry time arguments - curl: handle a libcurl build without netrc support - curl: make use of CURLINFO_RETRY_AFTER when retrying - curl: use CURLINFO_PROTOCOL to check for HTTP(s) - curl_global_init_mem.3: mention it was added in 7.12.0 - curl_version: bump string buffer size to 250 - curl_version_info.3: mentioned ALTSVC and HTTP3 - curl_version_info: offer quic (and h3) library info - curl_version_info: provide nghttp2 details - defines: avoid underscore-prefixed defines - docs/ALTSVC: remove what works and the experimental explanation - docs/EXPERIMENTAL: explain what it means and what's experimental now - docs/MANUAL.md: converted to markdown from plain text - docs/examples/curlx: fix errors - docs: s/curl_debug/curl_dbg_debug in comments and docs - easy: resize receive buffer on easy handle reset - examples: Avoid reserved names in hiperfifo examples - examples: add http3.c, altsvc.c and http3-present.c - http09: disable HTTP/0.9 by default in both tool and library - http2: when marked for closure and wanted to close == OK - http2_recv: trigger another read when the last data is returned - http: fix use of credentials from URL when using HTTP proxy - http_negotiate: improve handling of gss_init_sec_context() failures - md4: Use our own MD4 when no crypto libraries are available - multi: call detach_connection before Curl_disconnect - nss: use TLSv1.3 as default if supported - openssl: build warning free with boringssl - openssl: use SSL_CTX_set__proto_version() when available - plan9: add support for running on Plan 9 - progress: reset download/uploaded counter between transfers - readwrite_data: repair setting the TIMER_STARTTRANSFER stamp - scp: fix directory name length used in memcpy - smb: init *msg to NULL in smb_send_and_recv() - smtp: check for and bail out on too short EHLO response - source: remove names from source comments - spnego_sspi: add typecast to fix build warning - src/makefile: fix uncompressed hugehelp.c generation - ssh-libssh: do not specify O_APPEND when not in append mode - ssh: move code into vssh for SSH backends - sspi: fix memory leaks - tests: Replace outdated test case numbering documentation - tftp: return error when packet is too small for options - timediff: make it 64 bit (if possible) even with 32 bit time_t - travis: reduce number of torture tests in 'coverage' - url: make use of new HTTP version if alt-svc has one - urlapi: verify the IPv6 numerical address - urldata: avoid 'generic', use dedicated pointers - vauth: Use CURLE_AUTH_ERROR for auth function errors * Removed patches: - curl-CVE-2018-0500.patch - curl-CVE-2018-14618.patch - curl-CVE-2018-16839.patch - curl-CVE-2018-16840.patch - curl-CVE-2018-16842.patch - curl-CVE-2018-16890.patch - curl-CVE-2019-3822.patch - curl-CVE-2019-3823.patch - curl-CVE-2019-5436.patch - curl-CVE-2019-5481.patch - curl-CVE-2019-5482.patch- Security fix: [bsc#1149496,CVE-2019-5482] * TFTP small blocksize heap buffer overflow * Added curl-CVE-2019-5482.patch- Security fix: [bsc#1149495,CVE-2019-5481] * FTP-KRB: double-free during kerberos FTP data transfer * Added curl-CVE-2019-5481.patch- Update to 7.65.3 * progress: make the progress meter appear again- Update to 7.65.2 * Bugfixes: - CIPHERS.md: Explain Schannel error SEC_E_ALGORITHM_MISMATCH - CMake: Fix finding Brotli on case-sensitive file systems - CURLOPT_RANGE.3: Caution against using it for HTTP PUT - CURLOPT_SEEKDATA.3: fix variable name - bindlocal: detect and avoid IP version mismatches in bind() - build: fix Codacy warnings - c-ares: honor port numbers in CURLOPT_DNS_SERVERS - config-os400: add getpeername and getsockname defines - configure: --disable-progress-meter - configure: fix --disable-code-coverage - configure: more --disable switches to toggle off individual features - configure: remove CURL_DISABLE_TLS_SRP - conn_maxage: move the check to prune_dead_connections() - curl: skip CURLOPT_PROXY_CAPATH for disabled-proxy builds - docs: Explain behavior change in --tlsv1. options since 7.54 - docs: Fix links to OpenSSL docs - docs: fix string suggesting HTTP/2 is not the default - headers: Remove no longer exported functions - http2: call done_sending on end of upload - http2: don't call stream-close on already closed streams - http2: remove CURL_DISABLE_TYPECHECK define - http: allow overriding timecond with custom header - http: clarify header buffer size calculation - krb5: fix compiler warning - lib: Use UTF-8 encoding in comments - libcurl: Restrict redirect schemes to HTTP, HTTPS, FTP and FTPS - multi: enable multiplexing by default (again) - multi: fix the transfer hashes in the socket hash entries - multi: make sure 'data' can present in several sockhash entries - netrc: Return the correct error code when out of memory - nss: don't set unused parameter - nss: inspect returnvalue of token check - nss: only cache valid CRL entries - openssl: define HAVE_SSL_GET_SHUTDOWN based on version number - openssl: disable engine if OPENSSL_NO_UI_CONSOLE is defined - openssl: fix pubkey/signature algorithm detection in certinfo - os400: make vsetopt() non-static as Curl_vsetopt() for os400 support - quote.d: asterisk prefix works for SFTP as well - runtests: keep logfiles around by default - runtests: report single test time + total duration - test1165: verify that CURL_DISABLE_ symbols are in sync - test1521: adapt to SLISTPOINT - test1523: test CURLOPT_LOW_SPEED_LIMIT - test153: fix content-length to avoid occasional hang - test188/189: fix Content-Length - tests: have runtests figure out disabled features - tests: support non-localhost HOSTIP for dict/smb servers - tests: update fixed IP for hostip/clientip split - tool_cb_prg: Fix integer overflow in progress bar - typecheck: CURLOPT_CONNECT_TO takes an slist too - typecheck: add 3 missing strings and a callback data pointer - unit1654: cleanup on memory failure - unpause: trigger a timeout for event-based transfers - url: Fix CURLOPT_MAXAGE_CONN time comparison - Rebased patch curl-use_OPENSSL_config.patch - Disable new added failing test1165- Update to 7.65.1 * Bugfixes: - CURLOPT_LOW_SPEED_* repaired - NTLM: reset proxy "multipass" state when CONNECT request is done - PolarSSL: deprecate support step 1. Removed from configure - cmake: check for if_nametoindex() - cmake: support CMAKE_OSX_ARCHITECTURES when detecting SIZEOF variables - conncache: Remove the DEBUGASSERT on length check - conncache: make "bundles" per host name when doing proxy tunnels - curl_share_setopt.3: improve wording - dump-header.d: spell out that no headers == empty file - example/http2-download: fix format specifier - examples: cleanups and compiler warning fixes - http2: Stop drain from being permanently set - http: don't parse body-related headers in bodyless responses - md4: build correctly with openssl without MD4 - md4: include the mbedtls config.h to get the MD4 info - multi: track users of a socket better - nss: allow to specify TLS 1.3 ciphers if supported by NSS - parse_proxy: make sure portptr is initialized - parse_proxy: use the IPv6 zone id if given - sectransp: handle errSSLPeerAuthCompleted from SSLRead() - singlesocket: use separate variable for inner loop - ssl: Update outdated "openssl-only" comments for supported backends - tests: add HAProxy keywords - tests: make test 1420 and 1406 work with rtsp-disabled libcurl - tls13-docs: mention it is only for OpenSSL >= 1.1.1 - tool_setopt: for builds with disabled-proxy, skip all proxy setopts() - url: fix bad feature-disable #ifdef - url: use correct port in ConnectionExists()- Update to 7.65.0 [bsc#1135176, CVE-2019-5435][bsc#1135170, CVE-2019-5436] * Changes: - CURLOPT_DNS_USE_GLOBAL_CACHE: removed - CURLOPT_MAXAGE_CONN: set the maximum allowed age for conn reuse - pipelining: removed * Bugfixes: - CVE-2019-5435: Integer overflows in curl_url_set - CVE-2019-5436: tftp: use the current blksize for recvfrom() - --config: clarify that initial : and = might need quoting - CURLMOPT_TIMERFUNCTION.3: warn about the recursive risk - CURLOPT_ADDRESS_SCOPE: fix range check and more - CURLOPT_CHUNK_BGN_FUNCTION.3: document the struct and time value - CURLOPT_READFUNCTION.3: see also CURLOPT_UPLOAD_BUFFERSIZE - CURL_MAX_INPUT_LENGTH: largest acceptable string input size - Curl_disconnect: treat all CONNECT_ONLY connections as "dead" - OS400/ccsidcurl: replace use of Curl_vsetopt - OpenSSL: Report -fips in version if OpenSSL is built with FIPS - WRITEFUNCTION: add missing set_in_callback around callback - altsvc: Fix building with cookies disabled - auth: Rename the various authentication clean up functions - base64: build conditionally if there are users - cmake: avoid linking executable for some tests with cmake 3.6+ - cmake: clear CMAKE_REQUIRED_LIBRARIES after each use - cmake: set SSL_BACKENDS - configure: avoid unportable '==' test(1) operator - configure: error out if OpenSSL wasn't detected when asked for - configure: fix default location for fish completions - cookie: Guard against possible NULL ptr deref - curl: make code work with protocol-disabled libcurl - curl: report error for "--no-" on non-boolean options - curlver.h: use parenthesis in CURL_VERSION_BITS macro - docs/INSTALL: fix broken link - doh: acknowledge CURL_DISABLE_DOH - doh: disable DOH for the cases it doesn't work - examples: remove unused variables - ftplistparser: fix LGTM alert "Empty block without comment" - hostip: acknowledge CURL_DISABLE_SHUFFLE_DNS - http: Ignore HTTP/2 prior knowledge setting for HTTP proxies - http: acknowledge CURL_DISABLE_HTTP_AUTH - http: mark bundle as not for multiuse on < HTTP/2 response - http_digest: Don't expose functions when HTTP and Crypto Auth are disabled - http_negotiate: do not treat failure of gss_init_sec_context() as fatal - http_ntlm: Corrected the name of the include guard - http_ntlm_wb: Handle auth for only a single request - http_ntlm_wb: Return the correct error on receiving an empty auth message - lib509: add missing include for strdup - lib557: initialize variables - mbedtls: enable use of EC keys - mime: acknowledge CURL_DISABLE_MIME - multi: improved HTTP_1_1_REQUIRED handling - netrc: acknowledge CURL_DISABLE_NETRC - nss: allow fifos and character devices for certificates - nss: provide more specific error messages on failed init - ntlm: Fix misaligned function comments for Curl_auth_ntlm_cleanup - ntlm: Support the NT response in the type-3 when OpenSSL doesn't include MD4 - openssl: mark connection for close on TLS close_notify - openvms: Remove pre-processor for SecureTransport - parse_proxy: use the URL parser API - parsedate: disabled on CURL_DISABLE_PARSEDATE - pingpong: disable more when no pingpong protocols are enabled - polarssl_threadlock: remove conditionally unused code - progress: acknowledge CURL_DISABLE_PROGRESS_METER - proxy: acknowledge DISABLE_PROXY more - resolve: apply Happy Eyeballs philosophy to parallel c-ares queries - revert "multi: support verbose conncache closure handle" - sasl: Don't send authcid as authzid for the PLAIN mechanism as per RFC 4616 - sasl: only enable if there's a protocol enabled using it - singleipconnect: show port in the verbose "Trying ..." message - socks5: user name and passwords must be shorter than 256 - socks: fix error message - socksd: new SOCKS 4+5 server for tests - spnego_gssapi: fix return code on gss_init_sec_context() failure - ssh-libssh: remove unused variable - ssh: define USE_SSH if SSH is enabled (any backend) - ssh: move variable declaration to where it's used - test1002: correct the name - test2100: Fix typos in test description - tests: Run global cleanup at end of tests - tests: make Impacket (SMB server) Python 3 compatible - tool_cb_wrt: fix bad-function-cast warning - tool_formparse: remove redundant assignment - tool_help: Warn if curl and libcurl versions do not match - tool_help: include for strcasecmp - url: always clone the CUROPT_CURLU handle - url: convert the zone id from a IPv6 URL to correct scope id - urlapi: add CURLUPART_ZONEID to set and get - urlapi: increase supported scheme length to 40 bytes - urlapi: require a non-zero host name length when parsing URL - urlapi: stricter CURLUPART_PORT parsing - urlapi: strip off zone id from numerical IPv6 addresses - urlapi: urlencode characters above 0x7f correctly - vauth/cleartext: update the PLAIN login to match RFC 4616 - vauth/oauth2: Fix OAUTHBEARER token generation - vauth: Fix incorrect function description for Curl_auth_user_contains_domain - vtls: fix potential ssl_buffer stack overflow - wildcard: disable from build when FTP isn't present - xattr: skip unittest on unsupported platforms- Security fix [bsc#1135170, CVE-2019-5436] * A heap buffer overflow exists in tftp_receive_packet that receives data from a TFTP server * Added curl-CVE-2019-5436.patch- Install curl.fish completions file from curl rather than from the fish package- update to version 7.64.1 * Changes: - alt-svc: experiemental support added - configure: add --with-amissl * Bugfixes: - AppVeyor: switch VS 2015 builds to VS 2017 image - CURLU: fix NULL dereference when used over proxy - Curl_easy: remove req.maxfd - never used! - Curl_resolv: fix a gcc -Werror=maybe-uninitialized warning - DoH: inherit some SSL options from user's easy handle - Secure Transport: no more "darwinssl" - Secure Transport: tvOS 11 is required for ALPN support - cirrus: Added FreeBSD builds using Cirrus CI - cleanup: make local functions static - cli tool: do not use mime.h private structures - cmdline-opts/proxytunnel.d: the option tunnnels all protocols - configure: add additional libraries to check for LDAP support - configure: remove the unused fdopen macro - configure: show features as well in the final summary - conncache: use conn->data to know if a transfer owns it - connection: never reuse CONNECT_ONLY connections - connection_check: restore original conn->data after the check - connection_check: set ->data to the transfer doing the check - cookie: Add support for cookie prefixes - cookies: dotless names can set cookies again - cookies: fix NULL dereference if flushing cookies with no CookieInfo set - curl.1: --user and --proxy-user are hidden from ps output - curl.1: mark the argument to --cookie as - curl.h: use __has_declspec_attribute for shared builds - curl: display --version features sorted alphabetically - curl: fix FreeBSD compiler warning in the --xattr code - curl: remove MANUAL from -M output - curl_easy_duphandle.3: clarify that a duped handle has no shares - curl_multi_remove_handle.3: use at any time, just not from within callbacks - curl_url.3: this API is not experimental anymore - dns: release sharelock as soon as possible - docs: update max-redirs.d phrasing - examples/10-at-a-time.c: improve readability and simplify - examples/cacertinmem.c: use multiple certificates for loading CA-chain - examples/crawler: Fix the Accept-Encoding setting - examples/ephiperfifo.c: various fixes - examples/externalsocket: add missing close socket calls - examples/http2-download: cleaned up - examples/http2-serverpush: add some sensible error checks - examples/http2-upload: cleaned up - examples/httpcustomheader: Value stored to 'res' is never read - examples/postinmemory: Potential leak of memory pointed to by 'chunk.memory' - examples/sftpuploadresume: Value stored to 'result' is never read - examples: only include - examples: remove recursive calls to curl_multi_socket_action - examples: remove superfluous null-pointer checks - file: fix "Checking if unsigned variable 'readcount' is less than zero." - fnmatch: disable if FTP is disabled - gnutls: remove call to deprecated gnutls_compression_get_name - gopher: remove check for path == NULL - gssapi: fix deprecated header warnings - hostip: make create_hostcache_id avoid alloc + free - http2: multi_connchanged() moved from multi.c, only used for h2 - http2: verify :athority in push promise requests - http: make adding a blank header thread-safe - http: send payload when (proxy) authentication is done - http: set state.infilesize when sending multipart formposts - makefile: make checksrc and hugefile commands "silent" - mbedtls: make it build even if MBEDTLS_VERSION_C isn't set - mbedtls: release sessionid resources on error - memdebug: log pointer before freeing its data - memdebug: make debug-specific functions use curl_dbg_ prefix - mime: put the boundary buffer into the curl_mime struct - multi: call multi_done on connect timeouts, fixes CURLINFO_TOTAL_TIME - multi: remove verbose "Expire in" ... messages - multi: removed unused code for request retries - multi: support verbose conncache closure handle - negotiate: fix for HTTP POST with Negotiate - openssl: add support for TLS ASYNC state - openssl: if cert type is ENG and no key specified, key is ENG too - pretransfer: don't strlen() POSTFIELDS set for GET requests - rand: Fix a mismatch between comments in source and header - runtests: detect "schannel" as an alias for "winssl" - schannel: be quiet - remove verbose output - schannel: close TLS before removing conn from cache - schannel: support CALG_ECDH_EPHEM algorithm - scripts/completion.pl: also generate fish completion file - singlesocket: fix the 'sincebefore' placement - source: fix two 'nread' may be used uninitialized warnings - ssh: fix Condition '!status' is always true - ssh: loop the state machine if not done and not blocking - strerror: make the strerror function use local buffers - test578: make it read data from the correct test - tests: Fixed XML validation errors in some test files - tests: add stderr comparison to the test suite - tests: fix multiple may be used uninitialized warnings - threaded-resolver: shutdown the resolver thread without error message - tool_cb_wrt: fix writing to Windows null device NUL - tool_getpass: termios.h is present on AmigaOS 3, but no tcgetattr/tcsetattr - tool_operate: build on AmigaOS - tool_operate: fix typecheck warning - transfer.c: do not compute length of undefined hex buffer - travis: add build using gnutls - travis: add scan-build - travis: bump the used wolfSSL version to 4.0.0 - travis: enable valgrind for the iconv tests - travis: use updated compiler versions: clang 7 and gcc 8 - unit1307: require FTP support - unit1651: survive curl_easy_init() fails - url/idnconvert: remove scan for <= 32 ascii values - url: change conn shutdown order to ensure SOCKETFUNCTION callbacks - urlapi: reduce variable scope, remove unreachable 'break' - urldata: convert bools to bitfields and move to end - urldata: simplify bytecounters - urlglob: Argument with 'nonnull' attribute passed null - version.c: silent scan-build even when librtmp is not enabled - vtls: rename some of the SSL functions - wolfssl: stop custom-adding curves - x509asn1: "Dereference of null pointer" - x509asn1: cleanup and unify code layout - zsh.pl: escape ':' character - zsh.pl: update regex to better match curl -h output - Dropped patches fixed upstream: * 0001-connection_check-set-data-to-the-transfer-doing-the-.patch * 0002-connection_check-restore-original-conn-data-after-th.patch * curl-singlesocket-sincebefore-placement.patch- Fix variable placement that wasn't properly reset within a loop missing to notify sockets. [bsc#1129083, bsc#1129470] * Added curl-singlesocket-sincebefore-placement.patch- Add patches to fix use-after-free (boo#1127849): * 0001-connection_check-set-data-to-the-transfer-doing-the-.patch * 0002-connection_check-restore-original-conn-data-after-th.patch- BuildRequire libcurl4-mini for !bootstrap to avoid build cycles due to cmake pulling libcurl4- update to version 7.64.0 [bcs#1123371, CVE-2018-16890][bcs#1123377, CVE-2019-3822] [bcs#1123378, CVE-2019-3823] * Changes: - cookies: leave secure cookies alone - hostip: support wildcard hosts - http: Implement trailing headers for chunked transfers - http: added options for allowing HTTP/0.9 responses - timeval: Use high resolution timestamps on Windows * Bugfixes: - CVE-2018-16890: NTLM type-2 out-of-bounds buffer read - CVE-2019-3822: NTLMv2 type-3 header stack buffer overflow - CVE-2019-3823: SMTP end-of-response out-of-bounds read - FAQ: remove mention of sourceforge for github - OS400: handle memory error in list conversion - OS400: upgrade ILE/RPG binding. - README: add codacy code quality badge - Revert http_negotiate: do not close connection - THANKS: added several missing names from year <= 2000 - build: make 'tidy' target work for metalink builds - cmake: added checks for variadic macros - cmake: updated check for HAVE_POLL_FINE to match autotools - cmake: use lowercase for function name like the rest of the code - configure: detect xlclang separately from clang - configure: fix recv/send/select detection on Android - configure: rewrite --enable-code-coverage - conncache_unlock: avoid indirection by changing input argument type - cookie: fix comment typo - cookies: allow secure override when done over HTTPS - cookies: extend domain checks to non psl builds - cookies: skip custom cookies when redirecting cross-site - curl --xattr: strip credentials from any URL that is stored - curl -J: refuse to append to the destination file - curl/urlapi.h: include "curl.h" first - curl_multi_remove_handle() don't block terminating c-ares requests - darwinssl: accept setting max-tls with default min-tls - disconnect: separate connections and easy handles better - disconnect: set conn->data for protocol disconnect - docs/version.d: mention MultiSSL - docs: fix the --tls-max description - docs: use $(INSTALL_DATA) to install man page - docs: use meaningless port number in CURLOPT_LOCALPORT example - gopher: always include the entire gopher-path in request - http2: clear pause stream id if it gets closed - if2ip: remove unused function Curl_if_is_interface_name - libssh: do not let libssh create socket - libssh: enable CURLOPT_SSH_KNOWNHOSTS and CURLOPT_SSH_KEYFUNCTION for libssh - libssh: free sftp_canonicalize_path() data correctly - libtest/stub_gssapi: use "real" snprintf - mbedtls: use VERIFYHOST - multi: multiplexing improvements - multi: set the EXPIRE_*TIMEOUT timers at TIMER_STARTSINGLE time - ntlm: fix NTMLv2 compliance - ntlm_sspi: add support for channel binding - openssl: adapt to 3.0.0, OpenSSL_version_num() is deprecated - openssl: fix the SSL_get_tlsext_status_ocsp_resp call - openvms: fix OpenSSL discovery on VAX - openvms: fix typos in documentation - os400: add a missing closing bracket - os400: fix extra parameter syntax error - pingpong: change default response timeout to 120 seconds - pingpong: ignore regular timeout in disconnect phase - printf: fix format specifiers - runtests.pl: Fix perl call to include srcdir - schannel: fix compiler warning - schannel: preserve original certificate path parameter - schannel: stop calling it "winssl" - sigpipe: if mbedTLS is used, ignore SIGPIPE - smb: fix incorrect path in request if connection reused - ssh: log the libssh2 error message when ssh session startup fails - test1558: verify CURLINFO_PROTOCOL on file:// transfer - test1561: improve test name - test1653: make it survive torture tests - tests: allow tests to pass by 2037-02-12 - tests: move objnames-* from lib into tests - timediff: fix math for unsigned time_t - timeval: Disable MSVC Analyzer GetTickCount warning - tool_cb_prg: avoid integer overflow - travis: added cmake build for osx - urlapi: Fix port parsing of eol colon - urlapi: distinguish possibly empty query - urlapi: fix parsing ipv6 with zone index - urldata: rename easy_conn to just conn - winbuild: conditionally use /DZLIB_WINAPI - wolfssl: fix memory-leak in threaded use - spnego_sspi: add support for channel binding- Security fix [bsc#1123378, CVE-2019-3823] * SMTP end-of-response out-of-bounds read * Added patch curl-CVE-2019-3823.patch- Security fix [bsc#1123377, CVE-2019-3822] * NTLMv2 type-3 header stack buffer overflow * Added patch curl-CVE-2019-3822.patch- Fix wrong summary, curl is at version 7, not 4.- Security fix [bsc#1123371, CVE-2018-16890] * NTLM type-2 out-of-bounds buffer read * Added patch curl-CVE-2018-16890.patch- Provide libcurl4 = %version in the mini library package- Update to version 7.63.0 Changes: * curl: add %{stderr} and %{stdout} for --write-out * curl: add undocumented option --dump-module-paths for w32 * setopt: add CURLOPT_CURLU Bugfixes: * (lib)curl.rc: fixup for minor bugs * CURLINFO_REDIRECT_URL: extract the Location: header field unvalidated * CURLOPT_HEADERFUNCTION.3: match 'nitems' name in synopsis/desc * CURLOPT_WRITEFUNCTION.3: spell out that it gets called many times * Curl_follow: accept non-supported schemes for "fake" redirects * KNOWN_BUGS: add --proxy-any connection issue * NTLM: Remove redundant ifdef USE_OPENSS * NTLM: force the connection to HTTP/1.1 * OS400: add URL API ccsid wrappers and sync ILE/RPG bindings * SECURITY-PROCESS: bountygraph shuts down again * TODO: Have the URL API offer IDN decoding * ares: remove fd from multi fd set when ares is about to close the fd * axtls: removed * checksrc: add COPYRIGHTYEAR check * cmake: fix MIT/Heimdal Kerberos detection * configure: include all libraries in ssl-libs fetch * configure: show CFLAGS, LDFLAGS etc in summary * connect: fix building for recent versions of Minix * cookies: create the cookiejar even if no cookies to save * cookies: expire "Max-Age=0" immediately * curl: --local-port range was not "including" * curl: fix --local-port integer overflow * curl: fix memory leak reading --writeout from file * curl: fixed UTF-8 in current console code page (Win) * curl_easy_perform: fix timeout handling * curl_global_sslset(): id == -1 is not necessarily an error * curl_multibyte: fix a malloc overcalculation * curle: move deprecated error code to ifndef block * docs: curl_formadd field and file names are now escaped * docs: escape "\n" codes * doh: fix memory leak in OOM situation * doh: make it work for h2-disabled builds too * examples/ephiperfifo: report error when epoll_ctl fails * ftp: avoid unsigned int overflows in FTP listing parser * host names: allow trailing dot in name resolve, then strip it * http2: Upon HTTP_1_1_REQUIRED, retry the request with HTTP/1.1 * http: don't set CURLINFO_CONDIITON_UNMET for http status code 204 * http: fix HTTP DIgest auth to include query in URI * http_negotiate: do not close connection until negotiation is completed * impacket: add LICENSE * infof: clearly indicate truncation * ldap: fix LDAP URL parsing regressions * libcurl: stop reading from paused transfers * mprintf: avoid unsigned integer overflow warning * netrc: don't ignore the login name specified with "--user" * nss: Fall back to latest supported SSL version * nss: Fix compatibility with nss versions 3.14 to 3.15 * nss: fix fallthrough comment to fix picky compiler warning * nss: remove version selecting dead code * nss: set default max-tls to 1.3/1.2 * openssl: Remove SSLEAY leftovers * openssl: do not log excess "TLS app data" lines for TLS 1.3 * openssl: do not use file BIOs if not requested * openssl: fix unused variable compiler warning with old openssl * openssl: support session resume with TLS 1.3 * openvms: fix example name * os400: Add curl_easy_conn_upkeep() to ILE/RPG binding * os400: add CURLOPT_CURLU to ILE/RPG binding * os400: fix return type of curl_easy_pause() in ILE/RPG binding * packages: remove old leftover files and dirs * pop3: only do APOP with a valid timestamp * runtests: use the local curl for verifying * schannel: be consistent in Schannel capitalization * schannel: better CURLOPT_CERTINFO support * schannel: use Curl_prefix for global private symbols * snprintf: renamed and now we only use msnprintf() * ssl: fix compilation with OpenSSL 0.9.7 * ssl: replace all internal uses of CURLE_SSL_CACERT * symbols-in-versions: add missing CURLU_symbols * test328: verify Content-Encoding: none * tests: disable SO_EXCLUSIVEADDRUSE for stunnel/Win * tests: drop http_pipe.py script no longer used * tests: drop http_pipe.py script no longer used * tool_cb_wrt: Silence function cast compiler warning * tool_doswin: Fix uninitialized field warning * travis: build with clang sanitizers * travis: remove curl before a normal build * url: a short host name + port is not a scheme * url: fix IPv6 numeral address parser * urlapi: only skip encoding the first '=' with APPENDQUERY set - refreshed curl-disabled-redirect-protocol-message.patch- Update to version 7.62.0 Changes: * multiplex: enable by default * url: default to CURL_HTTP_VERSION_2TLS if built h2-enabled * setopt: add CURLOPT_DOH_URL * curl: --doh-url added * setopt: add CURLOPT_UPLOAD_BUFFERSIZE: set upload buffer size * imap: change from "FETCH" to "UID FETCH" * configure: add option to disable automatic OpenSSL config loading * upkeep: add a connection upkeep API: curl_easy_upkeep() * URL-API: added five new functions * vtls: MesaLink is a new TLS backend Bugfixes: * CVE-2018-16839: SASL password overflow via integer overflow [bsc#1112758] * CVE-2018-16840: use-after-free in handle close [bsc#1113029] * CVE-2018-16842: warning message out-of-buffer read [bsc#1113660] * CURLOPT_DNS_USE_GLOBAL_CACHE: deprecated * Curl_dedotdotify(): always nul terminate returned string * Curl_follow: Always free the passed new URL * Curl_http2_done: fix memleak in error path * Curl_retry_request: fix memory leak * Curl_saferealloc: Fixed typo in docblock * FILE: fix CURLOPT_NOBODY and CURLOPT_HEADER output * GnutTLS: TLS 1.3 support * SECURITY-PROCESS: mention the bountygraph program * VS projects: add USE_IPV6: * certs: generate tests certs with sha256 digest algorithm * checksrc: enable strict mode and warnings * checksrc: handle zero scoped ignore commands * cmake: Backport to work with CMake 3.0 again * cmake: Improve config installation * cmake: add support for transitive ZLIB target * cmake: disable -Wpedantic-ms-format * cmake: don't require OpenSSL if USE_OPENSSL=OFF * cmake: fixed path used in generation of docs/tests * cmake: remove unused *SOCKLEN_T variables * cmake: suppress MSVC warning C4127 for libtest * cmake: test and set missed defines during configuration * config: Remove unused SIZEOF_VOIDP * configure: force-use -lpthreads on HPUX * configure: remove CURL_CONFIGURE_CURL_SOCKLEN_T * configure: s/AC_RUN_IFELSE/CURL_RUN_IFELSE * cookies: Remove redundant expired check * cookies: fix leak when writing cookies to file * curl-config.in: remove dependency on bc * curl.1: --ipv6 mutexes ipv4 (fixed typo) * curl: update the documentation of --tlsv1.0 * curl_multi_wait: call getsock before figuring out timeout * curl_ntlm_wb: check aprintf() return codes * data-binary.d: clarify default content-type is x-www-form-urlencoded * docs/CIPHERS: Mention the options used to set TLS 1.3 ciphers * docs/CIPHERS: fix the TLS 1.3 cipher names * docs/CIPHERS: mention the colon separation for OpenSSL * docs/examples: URL updates * docs: add "see also" links for SSL options * example/asiohiper: insert warning comment about its status * example/htmltidy: fix include paths of tidy libraries * examples/http2-pushinmemory: receive HTTP/2 pushed files in memory * examples/parseurl.c: show off the URL API * examples: Fix memory leaks from realloc errors * examples: do not wait when no transfers are running * ftp: include command in Curl_ftpsend sendbuffer * gskit: make sure to terminate version string * gtls: Values stored to but never read * hostip: fix check on Curl_shuffle_addr return value * http2: fix memory leaks on error-path * http: fix memleak in rewind error path * krb5: fix memory leak in krb_auth * memory: add missing curl_printf header * memory: ensure to check allocation results * multi: Fix error handling in the SENDPROTOCONNECT state * multi: fix memory leak in content encoding related error path * multi: make the closure handle "inherit" CURLOPT_NOSIGNAL * netrc: free temporary strings if memory allocation fails * nss: try to connect even if libnssckbi.so fails to load * ntlm_wb: Fix memory leaks in ntlm_wb_response * ntlm_wb: bail out if the response gets overly large * openssl: assume engine support in 0.9.8 or later * openssl: enable TLS 1.3 post-handshake auth * openssl: fix gcc8 warning * openssl: load built-in engines too * openssl: make 'done' a proper boolean * openssl: output the correct cipher list on TLS 1.3 error * openssl: return CURLE_PEER_FAILED_VERIFICATION on failure to parse issuer * openssl: show "proper" version number for libressl builds * pipelining: deprecated * rand: add comment to skip a clang-tidy false positive * rtmp: fix for compiling with lwIP * runtests: ignore disabled even when ranges are given * schannel: unified error code handling * sendf: Fix whitespace in infof/failf concatenation * ssh: free the session on init failures * ssl: deprecate CURLE_SSL_CACERT in favour of a unified error code * system.h: use proper setting with Sun C++ as well * test1299: use single quotes around asterisk * test1452: mark as flaky * test1651: unit test Curl_extract_certinfo() * test320: strip out more HTML when comparing * tests/negtelnetserver.py: fix Python2-ism in neg TELNET server * tests: add unit tests for url.c * tool_cb_hdr: handle failure of rename() * travis: add a "make tidy" build that runs clang-tidy * travis: add build for "configure --disable-verbose" * travis: bump the Secure Transport build to use xcode * travis: make distcheck scan for BOM markers * unit1300: fix stack-use-after-scope AddressSanitizer warning * urldata: Fix "connecting" comment * urlglob: improve error message on bad globs * vtls: fix ssl version "or later" behavior change for many backends * x509asn1: Fix SAN IP address verification * x509asn1: always check return code from getASN1Element() * x509asn1: return CURLE_PEER_FAILED_VERIFICATION on failure to parse cert * x509asn1: suppress left shift on signed value - Rebased patches after update: * curl-disabled-redirect-protocol-message.patch * curl-use_OPENSSL_config.patch- Security fix [bsc#1113660, CVE-2018-16842] * Fixed Out-of-bounds Read in tool_msgs.c * Added curl-CVE-2018-16842.patch- Security fix [bsc#1113029, CVE-2018-16840] * use-after-free in handle close * Added curl-CVE-2018-16840.patch- Security fix [bsc#1112758, CVE-2018-16839] * SASL password overflow via integer overflow * Added curl-CVE-2018-16839.patch- Security fix [CVE-2018-14618, bsc#1106019] * NTLM password overflow via integer overflow * Added patch curl-CVE-2018-14618.patch- Update to version 7.61.1 Bugfixes: * CVE-2018-14618: NTLM password overflow via integer overflow (bsc#1106019) * CURLINFO_SIZE_UPLOAD: fix missing counter update * CURLOPT_ACCEPT_ENCODING.3: list them comma-separated * CURLOPT_SSL_CTX_FUNCTION.3: might cause accidental connection reuse * Curl_getoff_all_pipelines: improved for multiplexed * DEPRECATE: remove release date from 7.62.0 * HTTP: Don't attempt to needlessly decompress redirect body * INTERNALS: require GnuTLS >= 2.11.3 * README.md: add LGTM.com code quality grade for C/C++ * SSLCERTS: improve the openssl command line * Silence GCC 8 cast-function-type warnings * ares: check for NULL in completed-callback * asyn-thread: Remove unused macro * auth: only pick CURLAUTH_BEARER if we *have* a Bearer token * auth: pick Bearer authentication whenever a token is available * cmake: CMake config files are defining CURL_STATICLIB for static builds * cmake: Respect BUILD_SHARED_LIBS * cmake: Update scripts to use consistent style * cmake: bumped minimum version to 3.4 * cmake: link curl to the OpenSSL targets instead of lib absolute paths * configure: conditionally enable pedantic-errors * configure: fix for -lpthread detection with OpenSSL and pkg-config * conn: remove the boolean 'inuse' field * content_encoding: accept up to 4 unknown trailer bytes after raw deflate data * cookie tests: treat files as text * cookies: support creation-time attribute for cookies * curl: Fix segfault when -H @headerfile is empty * curl: add http code 408 to transient list for --retry * curl: fix time-of-check, time-of-use race in dir creation * curl: use Content-Disposition before the "URL end" for -OJ * curl: warn the user if a given file name looks like an option * curl_threads: silence bad-function-cast warning * darwinssl: add support for ALPN negotiation * docs/CURLOPT_URL: fix indentation * docs/CURLOPT_WRITEFUNCTION: size is always 1 * docs/SECURITY-PROCESS: mention bounty, drop pre-notify * docs/examples: add hiperfifo example using linux epoll/timerfd * docs: add disallow-username-in-url.d and haproxy-protocol.d to dist * docs: clarify NO_PROXY env variable functionality * docs: improved the manual pages of some callbacks * docs: mention NULL is fine input to several functions * formdata: Remove unused macro HTTPPOST_CONTENTTYPE_DEFAULT * gopher: Do not translate `?' to `%09' * header output: switch off all styles, not just unbold * hostip: fix unused variable warning * http2: Use correct format identifier for stream_id * http2: abort the send_callback if not setup yet * http2: avoid set_stream_user_data() before stream is assigned * http2: check nghttp2_session_set_stream_user_data return code * http2: clear the drain counter in Curl_http2_done * http2: make sure to send after RST_STREAM * http2: separate easy handle from connections better * http: fix for tiny "HTTP/0.9" response * http_proxy: Remove unused macro SELECT_TIMEOUT * lib/Makefile: only do symbol hiding if told to * lib1502: fix memory leak in torture test * lib1522: fix curl_easy_setopt argument type * libcurl-thread.3: expand somewhat on the NO_SIGNAL motivation * mime: check Curl_rand_hex's return code * multi: always do the COMPLETED procedure/state * openssl: assume engine support in 1.0.0 or later * openssl: fix debug messages * projects: Improve Windows perl detection in batch scripts * retry: return error if rewind was necessary but didn't happen * reuse_conn(): memory leak - free old_conn->options * schannel: client certificate store opening fix * schannel: enable CALG_TLS1PRF for w32api >= 5.1 * schannel: fix MinGW compile break * sftp: don't send post-qoute sequence when retrying a connection * smb: fix memory leak on early failure * smb: fix memory-leak in URL parse error path * smb_getsock: always wait for write socket too * ssh-libssh: fix infinite connect loop on invalid private key * ssh-libssh: reduce excessive verbose output about pubkey auth * ssh-libssh: use FALLTHROUGH to silence gcc8 * ssl: set engine implicitly when a PKCS#11 URI is provided * sws: handle EINTR when calling select() * system_win32: fix version checking * telnet: Remove unused macros TELOPTS and TELCMDS * test1143: disable MSYS2's POSIX path conversion * test1148: disable if decimal separator is not point * test1307: (fnmatch testing) disabled * test1422: add required file feature * test1531: Add timeout * test1540: Remove unused macro TEST_HANG_TIMEOUT * test214: disable MSYS2's POSIX path conversion for URL * test320: treat curl320.out file as binary * tests/http_pipe.py: Use /usr/bin/env to find python * tests: Don't use Windows path %PWD for SSH tests * tests: fixes for Windows line endlings * tool_operate: Fix setting proxy TLS 1.3 ciphers * travis: build darwinssl on macos 10.12 to fix linker errors * travis: execute "set -eo pipefail" for coverage build * travis: run a 'make checksrc' too * travis: update to GCC-8 * travis: verify that man pages can be regenerated * upload: allocate upload buffer on-demand * upload: change default UPLOAD_BUFSIZE to 64KB * urldata: remove unused pipe_broke struct field * vtls: reinstantiate engine on duplicated handles * windows: implement send buffer tuning * wolfSSL/CyaSSL: Fix memory leak in Curl_cyassl_random - Remove patch included upstream: * curl-switch-off-all-styles.patch- Added curl-switch-off-all-styles.patch: Fix output of wrong escape sequences, which might mess up the terminal (bsc#1105624)- security update * CVE-2018-0500 [bsc#1099793] + curl-CVE-2018-0500.patch- Update to version 7.61.0 [bsc#1099793, CVE-2018-0500] Changes: * getinfo: add microsecond precise timers for seven intervals * curl: show headers in bold, switch off with --no-styled-output * httpauth: add support for Bearer tokens * Add CURLOPT_TLS13_CIPHERS and CURLOPT_PROXY_TLS13_CIPHERS * curl: --tls13-ciphers and --proxy-tls13-ciphers * Add CURLOPT_DISALLOW_USERNAME_IN_URL * curl: --disallow-username-in-url Bugfixes: * CVE-2018-0500: smtp: fix SMTP send buffer overflow * schannel: disable client cert option if APIs not available * schannel: disable manual verify if APIs not available * tests/libtest/Makefile: Do not unconditionally add gcc-specific flags * openssl: acknowledge --tls-max for default version too * stub_gssapi: fix 'unused parameter' warnings * examples/progressfunc: make it build on both new and old libcurls * docs: mention it is HA Proxy protocol "version 1" * curl_fnmatch: only allow two asterisks for matching * docs: clarify CURLOPT_HTTPGET * configure: replace a AC_TRY_RUN with CURL_RUN_IFELSE * configure: do compile-time SIZEOF checks instead of run-time * checksrc: make sure sizeof() is used *with* parentheses * CURLOPT_ACCEPT_ENCODING.3: add brotli and clarify a bit * schannel: make CAinfo parsing resilient to CR/LF * tftp: make sure error is zero terminated before printfing it * http resume: skip body if http code 416 (range error) is ignored * configure: add basic test of --with-ssl prefix * cmake: set -d postfix for debug builds * multi: provide a socket to wait for in Curl_protocol_getsock * content_encoding: handle zlib versions too old for Z_BLOCK * winbuild: only delete OUTFILE if it exists * winbuild: In MakefileBuild.vc fix typo DISTDIR->DIRDIST * schannel: add failf calls for client certificate failures * cmake: Fix the test for fsetxattr and strerror_r * curl.1: Fix cmdline-opts reference errors * cmdline-opts/gen.pl: warn if mutexes: or see-also: list non-existing options * cmake: check for getpwuid_r * configure: fix ssh2 linking when built with a static mbedtls * psl: use latest psl and refresh it periodically * fnmatch: insist on escaped bracket to match * KNOWN_BUGS: restore text regarding #2101 * INSTALL: LDFLAGS=-Wl,-R/usr/local/ssl/lib * configure: override AR_FLAGS to silence warning * os400: implement mime api EBCDIC wrappers * curl.rc: embed manifest for correct Windows version detection * strictness: correct {infof, failf} format specifiers * tests: update .gitignore for libtests * configure: check for declaration of getpwuid_r * fnmatch: use the system one if available * CURLOPT_RESOLVE: always purge old entry first * multi: remove a potentially bad DEBUGF() * curl_addrinfo: use same #ifdef conditions in source as header * build: remove the Borland specific makefiles * axTLS: not considered fit for use * cmdline-opts/cert-type.d: mention "p12" as a recognized type * system.h: add support for IBM xlc C compiler * tests/libtest: Add lib1521 to nodist_SOURCES * mk-ca-bundle.pl: leave certificate name untouched * boringssl + schannel: undef X509_NAME in lib/schannel.h * openssl: assume engine support in 1.0.1 or later * cppcheck: fix warnings * test 46: make test pass after year 2025 * schannel: support selecting ciphers * Curl_debug: remove dead printhost code * test 1455: unflakified * Curl_init_do: handle NULL connection pointer passed in * progress: remove a set of unused defines * mk-ca-bundle.pl: make -u delete certdata.txt if found not changed * GOVERNANCE.md: explains how this project is run * configure: use pkg-config for c-ares detection * configure: enhance ability to build with static openssl * maketgz: fix sed issues on OSX * multi: fix memory leak when stopped during name resolve * CURLOPT_INTERFACE.3: interface names not supported on Windows * url: fix dangling conn->data pointer * cmake: allow multiple SSL backends * system.h: fix for gcc on 32 bit OpenServer * ConnectionExists: make sure conn->data is set when "taking" a connection * multi: fix crash due to dangling entry in connect-pending list * CURLOPT_SSL_VERIFYPEER.3: Add performance note * netrc: use a larger buffer to support longer passwords * url: check Curl_conncache_add_conn return code * configure: Add dependent libraries after crypto * easy_perform: faster local name resolves by using *multi_timeout() * getnameinfo: not used, removed all configure checks * travis: add a build using the synchronous name resolver * CURLINFO_TLS_SSL_PTR.3: improve the example * openssl: allow TLS 1.3 by default * openssl: make the requested TLS version the *minimum* wanted * openssl: Remove some dead code * telnet: fix clang warnings * DEPRECATE: new doc describing planned item removals * example/crawler.c: simple crawler based on libxml2 * libssh: goto DISCONNECT state on error, not SESSION_FREE * CMake: Remove unused functions * darwinssl: allow High Sierra users to build the code using GCC * scripts: include _curl as part of CLEANFILES * examples: fix -Wformat warnings * curl_setup: include before * schannel: make more cipher options conditional * CMake: remove redundant and old end-of-block syntax * post303.d: clarify that this is an RFC violation - refreshed libcurl-ocloexec.patch- Use OPENSSL_config instead of CONF_modules_load_file() to avoid crashes due to openssl engines conflicts (bsc#1086367) * add curl-use_OPENSSL_config.patch- Update to version 7.60.0 [bsc#1092094, CVE-2018-1000300][bsc#1092098, CVE-2018-1000301] Changes: * Add CURLOPT_HAPROXYPROTOCOL, support for the HAProxy PROXY protocol * Add --haproxy-protocol for the command line tool * Add CURLOPT_DNS_SHUFFLE_ADDRESSES, shuffle returned IP addresses Bugfixes: * FTP: shutdown response buffer overflow CVE-2018-1000300 * RTSP: bad headers buffer over-read CVE-2018-1000301 * FTP: fix typo in recursive callback detection for seeking * test1208: marked flaky * HTTP: make header-less responses still count correct body size * user-agent.d:: mention --proxy-header as well * http2: fixes typo * cleanup: misc typos in strings and comments * rate-limit: use three second window to better handle high speeds * examples/hiperfifo.c: improved * pause: when changing pause state, update socket state * multi: improved pending transfers handling => improved performance * curl_version_info.3: fix ssl_version description * add_handle/easy_perform: clear errorbuffer on start if set * cmake: add support for brotli * parsedate: support UT timezone * vauth/ntlm.h: fix the #ifdef header guard * lib/curl_path.h: added #ifdef header guard * vauth/cleartext: fix integer overflow check * CURLINFO_COOKIELIST.3: made the example not leak memory * cookie.d: mention that "-" as filename means stdin * CURLINFO_SSL_VERIFYRESULT.3: fixed the example * http2: read pending frames (including GOAWAY) in connection-check * timeval: remove compilation warning by casting * cmake: avoid warn-as-error during config checks * travis-ci: enable -Werror for CMake builds * openldap: fix for NULL return from ldap_get_attribute_ber() * threaded resolver: track resolver time and set suitable timeout values * cmake: Add advapi32 as explicit link library for win32 * docs: fix CURLINFO_*_T examples use of CURL_FORMAT_CURL_OFF_T * test1148: set a fixed locale for the test * cookies: when reading from a file, only remove_expired once * cookie: store cookies per top-level-domain-specific hash table * openssl: fix build with LibreSSL 2.7 * tls: fix mbedTLS 2.7.0 build + handle sha256 failures * openssl: RESTORED verify locations when verifypeer==0 * file: restore old behavior for file:////foo/bar URLs * FTP: allow PASV on IPv6 connections when a proxy is being used * build-openssl.bat: allow custom paths for VS and perl * winbuild: make the clean target work without build-type * build-openssl.bat: Refer to VS2017 as VC14.1 instead of VC15 * curl: retry on FTP 4xx, ignore other protocols * configure: detect (and use) sa_family_t * examples/sftpuploadresume: Fix Windows large file seek * build: cleanup to fix clang warnings/errors * winbuild: updated the documentation * lib: silence null-dereference warnings * travis: bump to clang 6 and gcc 7 * travis: build libpsl and make builds use it * proxy: show getenv proxy use in verbose output * duphandle: make sure CURLOPT_RESOLVE is duplicated * all: Refactor malloc+memset to use calloc * checksrc: Fix typo * system.h: Add sparcv8plus to oracle/sunpro 32-bit detection * vauth: Fix typo * ssh: show libSSH2 error code when closing fails * test1148: tolerate progress updates better * urldata: make service names unconditional * configure: keep LD_LIBRARY_PATH changes local * ntlm_sspi: fix authentication using Credential Manager * schannel: add client certificate authentication * winbuild: Support custom devel paths for each dependency * schannel: add support for CURLOPT_CAINFO * http2: handle on_begin_headers() called more than once * openssl: support OpenSSL 1.1.1 verbose-mode trace messages * openssl: fix subjectAltName check on non-ASCII platforms * http2: avoid strstr() on data not zero terminated * http2: clear the "drain counter" when a stream is closed * http2: handle GOAWAY properly * tool_help: clarify --max-time unit of time is seconds * curl.1: clarify that options and URLs can be mixed * http2: convert an assert to run-time check * curl_global_sslset: always provide available backends * ftplistparser: keep state between invokes * Curl_memchr: zero length input can't match * examples/sftpuploadresume: typecast fseek argument to long * examples/http2-upload: expand buffer to avoid silly warning * ctype: restore character classification for non-ASCII platforms * mime: avoid NULL pointer dereference risk * cookies: ensure that we have cookies before writing jar * os400.c: fix checksrc warnings * configure: provide --with-wolfssl as an alias for --with-cyassl * cyassl: adapt to libraries without TLS 1.0 support built-in * http2: get rid of another strstr * checksrc: force indentation of lines after an else * cookies: remove unused macro * CURLINFO_PROTOCOL.3: mention the existing defined names * tests: provide 'manual' as a feature to optionally require * travis: enable libssh2 on both macos and Linux * CURLOPT_URL.3: added ENCODING section * wolfssl: Fix non-blocking connect * vtls: don't define MD5_DIGEST_LENGTH for wolfssl * docs: remove extraneous commas in man pages * URL: fix ASCII dependency in strcpy_url and strlen_url * ssh-libssh.c: fix left shift compiler warning * configure: only check for CA bundle for file-using SSL backends * travis: add an mbedtls build * http: don't set the "rewind" flag when not uploading anything * configure: put CURLDEBUG and DEBUGBUILD in lib/curl_config.h * transfer: don't unset writesockfd on setup of multiplexed conns * vtls: use unified "supports" bitfield member in backends * URLs: fix one more http url * travis: add a build using WolfSSL * openssl: change FILE ops to BIO ops * travis: add build using NSS * smb: reject negative file sizes * cookies: accept parameter names as cookie name * http2: getsock fix for uploads * all over: fixed format specifiers * http2: use the correct function pointer typedef- Added message about protocol redirection not supported or disabled to the function findprotocol() [bsc#1076446] * Added curl-disabled-redirect-protocol-message.patch- Update to version 7.59.0 [bsc#1084521, CVE-2018-1000120][bsc#1084524, CVE-2018-1000121] [bsc#1084532, CVE-2018-1000122] Changes: * curl: add --proxy-pinnedpubkey * added: CURLOPT_TIMEVALUE_LARGE and CURLINFO_FILETIME_T * CURLOPT_RESOLVE: Add support for multiple IP addresses per entry * Add option CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS * Add new tool option --happy-eyeballs-timeout-ms * Add CURLOPT_RESOLVER_START_FUNCTION and CURLOPT_RESOLVER_START_DATA Bugfixes: * openldap: check ldap_get_attribute_ber() results for NULL before using * FTP: reject path components with control codes * readwrite: make sure excess reads don't go beyond buffer end * lib555: drop text conversion and encode data as ascii codes * lib517: make variable static to avoid compiler warning * lib544: sync ascii code data with textual data * GSKit: restore pinnedpubkey functionality * darwinssl: Don't import client certificates into Keychain on macOS * parsedate: fix date parsing for systems with 32 bit long * openssl: fix pinned public key build error in FIPS mode * SChannel/WinSSL: Implement public key pinning * cookies: remove verbose "cookie size:" output * progress-bar: don't use stderr explicitly, use bar->out * build: open VC15 projects with VS 2017 * curl_ctype: private is*() type macros and functions * configure: set PATH_SEPARATOR to colon for PATH w/o separator * curl_easy_reset: clear digest auth state * curl/curl.h: fix comment typo for CURLOPT_DNS_LOCAL_IP6 * range: commonize FTP and FILE range handling * progress-bar docs: update to match implementation * fnmatch: do not match the empty string with a character set * fnmatch: accept an alphanum to be followed by a non-alphanum in char set * build: fix termios issue on android cross-compile * getdate: return -1 for out of range * formdata: use the mime-content type function * openssl: Don't add verify locations when verifypeer==0 * fnmatch: optimize processing of consecutive *s and ?s pattern characters * schannel: fix compiler warnings * content_encoding: Add "none" alias to "identity" * get_posix_time: only check for overflows if they can happen * http_chunks: don't write chunks twice with CURLOPT_HTTP_TRANSFER_DECODING * README: language fix * sha256: build with OpenSSL < 0.9.8 * smtp: fix processing of initial dot in data * --tlsauthtype: works only if libcurl is built with TLS-SRP support * tests: new tests for http raw mode * libcurl-security.3: man page discussion security concerns when using libcurl * curl_gssapi: make sure this file too uses our *printf() * BINDINGS: fix curb link (and remove ruby-curl-multi) * nss: use PK11_CreateManagedGenericObject() if available * travis: add build with iconv enabled * ssh: add two missing state names * CURLOPT_HEADERFUNCTION.3: mention folded headers * http: fix the max header length detection logic * header callback: don't chop headers into smaller pieces * CURLOPT_HEADER.3: clarify problems with different data sizes * curl --version: show PSL if the run-time lib has it enabled * examples/sftpuploadresume: resume upload via CURLOPT_APPEND * Return error if called recursively from within callbacks * sasl: prefer PLAIN mechanism over LOGIN * winbuild: Use CALL to run batch scripts * curl_share_setopt.3: connection cache is shared within multi handles * projects/README: remove reference to dead IDN link/package * lib655: silence compiler warning * configure: Fix version check for OpenSSL 1.1.1 * docs/MANUAL: formfind.pl is not accessible on the site anymore * unit1307: proper cleanup on OOM to fix torture tests * curl_ctype: fix macro redefinition warnings * build: get CFLAGS (including -werror) used for examples and tests * NO_PROXY: fix for IPv6 numericals in the URL * krb5: use nondeprecated functions * http2: mark the connection for close on GOAWAY * limit-rate: kick in even before "limit" data has been received * HTTP: allow "header;" to replace an internal header with a blank one * http2: verbose output new MAX_CONCURRENT_STREAMS values * SECURITY: distros' max embargo time is 14 days * curl tool: accept --compressed also if Brotli is enabled and zlib is not * WolfSSL: adding TLSv1.3 * checksrc.pl: add -i and -m options * CURLOPT_COOKIEFILE.3: "-" as file name means stdin - Refreshed patch libcurl-ocloexec.patch- Sort a bit with spec-cleaner - Install license with the library- ignore all test failures for PowerPC as bypass boo#1075219 (not only the 1501 previously skipped) * Added patch ignore_runtests_failure.patch- Build curl with libssh.org libssh offers a lot more features than libssh2, for example: * Key Exchange Methods: curve25519-sha256@libssh.org * Hostkey Types: ssh-ed25519 * Authentication: gssapi-with-mic- Update to version 7.58.0 [bsc#1076360,CVE-2018-1000005][bsc#1077001,CVE-2018-1000007] Changes: * new libssh-powered SSH SCP/SFTP back-end * curl-config: add --ssl-backends Bugfixes: * http2: fix incorrect trailer buffer size * http: prevent custom Authorization headers in redirects * travis: add boringssl build * examples/xmlstream.c: don't switch off CURL_GLOBAL_SSL * SSL: Avoid magic allocation of SSL backend specific data * lib: don't export all symbols, just everything curl_* * libssh2: send the correct CURLE error code on scp file not found * libssh2: return CURLE_UPLOAD_FAILED on failure to upload * openssl: enable pkcs12 in boringssl builds * libssh2: remove dead code from SSH_SFTP_QUOTE * sasl_getmesssage: make sure we have a long enough string to pass * conncache: fix several lock issues * threaded-shared-conn.c: new example * conncache: only allow multiplexing within same multi handle * configure: check for netinet/in6.h * URL: tolerate backslash after drive letter for FILE: * openldap: add commented out debug possibilities * include: get netinet/in.h before linux/tcp.h * CONNECT: keep close connection flag in http_connect_state struct * BINDINGS: another PostgreSQL client * curl: limit -# update frequency for unknown total size * configure: add AX_CODE_COVERAGE only if using gcc * curl.h: remove incorrect comment about ERRORBUFFER * openssl: improve data-pending check for https proxy * curl: remove __EMX__ #ifdefs * CURLOPT_PRIVATE.3: fix grammar * sftp: allow quoted commands to use relative paths * CURLOPT_DNS_CACHE_TIMEOUT.3: see also CURLOPT_RESOLVE * RESOLVE: output verbose text when trying to set a duplicate name * multi_done: prune DNS cache * tests: update .gitignore for libtests * tests: mark data files as non-executable in git * CURLOPT_DNS_LOCAL_IP4.3: fixed the "SEE ALSO" to not self-reference * curl.1: documented two missing valid exit codes * curl.1: mention http:// and https:// as valid proxy prefixes * vtls: replaced getenv() with curl_getenv() * setopt: less *or equal* than INT_MAX/1000 should be fine * examples/smtp-mail.c: use separate defines for options and mail * curl: support >256 bytes warning messsages * conncache: fix a return code * krb5: fix a potential access of uninitialized memory * rand: add a clang-analyzer work-around * CURLOPT_READFUNCTION.3: refer to argument with correct name * brotli: allow compiling with version 0.6.0 * content_encoding: rework zlib_inflate * curl_easy_reset: release mime-related data * examples/rtsp: fix error handling macros * curl: Support size modifiers for --max-filesize * examples/cacertinmem: ignore cert-already-exists error * brotli: data at the end of content can be lost * curl_version_info.3: call the argument 'age' * openssl: fix memory leak of SSLKEYLOGFILE filename * build: remove HAVE_LIMITS_H check * --mail-rcpt: fix short-text description * scripts: allow all perl scripts to be run directly * progress: calculate transfer speed on milliseconds if possible * system.h: check __LONG_MAX__ for defining curl_off_t * easy: fix connection ownership in curl_easy_pause * setopt: reintroduce non-static Curl_vsetopt() for OS400 support * setopt: fix SSLVERSION to allow CURL_SSLVERSION_MAX_ values * configure.ac: append extra linker flags instead of prepending them * HTTP: bail out on negative Content-Length: values * docs: comment about CURLE_READ_ERROR returned by curl_mime_filedata * mime: clone mime tree upon easy handle duplication * openssl: enable SSLKEYLOGFILE support by default * smtp/pop3/imap_get_message: decrease the data length too... * CURLOPT_TCP_NODELAY.3: fix typo * SMB: fix numeric constant suffix and variable types * ftp-wildcard: fix matching an empty string with "*[^a]" * curl_fnmatch: only allow 5 '*' sections in a single pattern * openssl: fix potential memory leak in SSLKEYLOGFILE logic * SSH: Fix state machine for ssh-agent authentication * examples/url2file.c: add missing curl_global_cleanup() call * http2: don't close connection when single transfer is stopped * libcurl-env.3: first version * curl: progress bar refresh, get width using ioctl() * CONNECT_TO: fail attempt to set an IPv6 numerical without IPv6 support- disable 1501 test for PowerPC as byass boo#1075219- Update to version 7.57.0 [bsc#1069226, CVE-2017-8816] [bsc#1069222, CVE-2017-8817] [bsc#1069714, CVE-2017-8818] Changes: * auth: add support for RFC7616 - HTTP Digest access authentication * share: add support for sharing the connection cache * HTTP: implement Brotli content encoding Bugfixes: * CVE-2017-8816: NTLM buffer overflow via integer overflow * CVE-2017-8817: FTP wildcard out of bounds read * CVE-2017-8818: SSL out of buffer access * curl_mime_filedata.3: fix typos * libtest: Add required test libraries for lib1552 and lib1553 * fix time diffs for systems using unsigned time_t * ftplistparser: memory leak fix: free temporary memory always * multi: allow table handle sizes to be overridden * wildcards: don't use with non-supported protocols * curl_fnmatch: return error on illegal wildcard pattern * transfer: Fix chunked-encoding upload too early exit * resolvers: only include anything if needed * setopt: fix CURLOPT_SSH_AUTH_TYPES option read * Curl_timeleft: change return type to timediff_t * cmake: Export libcurl and curl targets to use by other cmake projects * curl: in -F option arg, comma is a delimiter for files only * curl: improved ";type=" handling in -F option arguments * timeval: use mach_absolute_time() on MacOS * curlx: the timeval functions are no longer provided as curlx_* * mkhelp.pl: do not generate comment with current date * memdebug: use send/recv signature for curl_dosend/curl_dorecv * cookie: avoid NULL dereference * url: fix CURLOPT_POSTFIELDSIZE arg value check to allow -1 * include: remove conncache.h inclusion from where its not needed * CURLOPT_MAXREDIRS: allow -1 as a value * tests: Fixed torture tests on tests 556 and 650 * http2: Fixed OOM handling in upgrade request * url: fix CURLOPT_DNS_CACHE_TIMEOUT arg value check to allow -1 * CURLOPT_INFILESIZE: accept -1 * curl: pass through [] in URLs instead of calling globbing error * curl: speed up handling of many URLs * ntlm: avoid malloc(0) for zero length passwords * url: remove faulty arg value check from CURLOPT_SSH_AUTH_TYPES * HTTP: support multiple Content-Encodings * travis: add a job with brotli enabled * url: remove unncessary NULL-check * fnmatch: remove dead code * connect: store IPv6 connection status after valid connection * imap: deal with commands case insensitively * --interface: add support for Linux VRF * content_encoding: fix inflate_stream for no bytes available * cmake: Add missing setmode check * connect.c: remove executable bit on file * SMB: fix uninitialized local variable * zlib/brotli: only include header files in modules needing them * URL: return error on malformed URLs with junk after IPv6 bracket * openssl: fix too broad use of HAVE_OPAQUE_EVP_PKEY * macOS: Fix missing connectx function with Xcode version older than 9.0 * --resolve: allow IP address within [] brackets * examples/curlx: Fix code style * ntlm: remove unnecessary NULL-check to please scan-build * Curl_llist_remove: fix potential NULL pointer deref * mime: fix "Value stored to 'sz' is never read" scan-build error * openssl: fix "Value stored to 'rc' is never read" scan-build error * http2: fix "Value stored to 'hdbuf' is never read" scan-build error * http2: fix "Value stored to 'end' is never read" scan-build error * Curl_open: fix OOM return error correctly * url: reject ASCII control characters and space in host names * examples/rtsp: clear RANGE again after use * connect: improve the bind error message * make: fix "make distclean" * connect: add support for new TCP Fast Open API on Linux * metalink: fix memory-leak and NULL pointer dereference * URL: update "file:" URL handling * ssh: remove check for a NULL pointer * global_init: ignore CURL_GLOBAL_SSL's absense- Update to version 7.56.1 [bsc#1063824] Bugfixes: * imap: if a FETCH response has no size, don't call write callback [CVE-2017-1000257] * ftp: UBsan fixup 'pointer index expression overflowed * failf: skip the sprintf() if there are no consumers * fuzzer: move to using external curl-fuzzer * lib/Makefile.m32: allow customizing dll suffixes * docs: fix typo in curl_mime_data_cb man page * darwinssl: add support for TLSv1.3 * build: fix --disable-crypto-auth * openssl: fix build without HAVE_OPAQUE_EVP_PKEY * strtoofft: Remove extraneous null check * multi_cleanup: call DONE on handles that never got that * tests: added flaky keyword to tests 587 and 644 * pingpong: return error when trying to send without connection * remove_handle: call multi_done() first, then clear dns cache pointer * mime: be tolerant about setting the same header list twice in a part * mime: improve unbinding top multipart from easy handle * mime: avoid resetting a part's encoder when part's contents change * mime: refuse to add subparts to one of their own descendants * RTSP: avoid integer overflow on funny RTSP responses * curl: don't pass semicolons when parsing Content-Disposition * openssl: enable PKCS12 support for !BoringSSL * FAQ: s/CURLOPT_PROGRESSFUNCTION/CURLOPT_XFERINFOFUNCTION * CURLOPT_NOPROGRESS.3: also refer to xferinfofunction * CURLOPT_XFERINFODATA.3: fix duplicate see also * test298: verify --ftp-method nowcwd with URL encoded path * FTP: URL decode path for dir listing in nocwd mode * smtp_done: fix memory leak on send failure * ftpserver: support case insensitive commands * test950; verify SMTP with custom request * openssl: don't use old BORINGSSL_YYYYMM macros * setopt: update current connection SSL verify params * curl: reimplement stdin buffering in -F option * mime: keep "text/plain" content type if user-specified * mime: fix the content reader to handle >16K data properly * configure: remove the C++ compiler check * memdebug: trace send, recv and socket * runtests: use valgrind for torture as well * ldap: silence clang warning * makefile.m32: allow to override gcc, ar and ranlib * setopt: avoid integer overflows when setting millsecond values * setopt: range check most long options * ftp: reject illegal IP/port in PASV 227 response * mime: do not reuse previously computed multipart size * vtls: change struct Curl_ssl `close' field name to `close_one' * os400: add missing symbols in config file * mime: limit bas64-encoded lines length to 76 characters * mk-ca-bundle: Remove URL for aurora * mk-ca-bundle: Fix URL for NSS- Update to 7.56.0 [bsc#1061876, CVE-2017-1000254] Changes: * curl: enable compression for SCP/SFTP with --compressed-ssh * libcurl: enable compression for SCP/SFTP with CURLOPT_SSH_COMPRESSION * vtls: added dynamic changing SSL backend with curl_global_sslset() * new MIME API, curl_mime_init() and friends * openssl: initial SSLKEYLOGFILE implementation Security fixes: * CVE-2017-1000254 FTP PWD response parser out of bounds read Bugfixes: * FTP: zero terminate the entry path even on bad input * examples/ftpuploadresume.c: use portable code * runtests: match keywords case insensitively * strtoofft: reduce integer overflow risks globally * zsh.pl: produce a working completion script again * cmake: remove dead code for CURL_DISABLE_RTMP * progress: Track total times following redirects * configure: fix --disable-threaded-resolver * configure: fix clang version detection * darwinssi: fix error: variable length array used * configure: check for __builtin_available() availability * http_proxy: fix build error for CURL_DOES_CONVERSIONS * examples/ftpuploadresume: checksrc compliance * ftp: fix CWD when doing multicwd then nocwd on same connection * system.h: remove all CURL_SIZEOF_* defines * http: Don't wait on CONNECT when there is no proxy * system.h: check for __ppc__ as well * http2_recv: return error better on fatal h2 errors * tftp: fix memory leak on too long filename * system.h: fix build for hppa * cmake: enable picky compiler options with clang and gcc * makefile.m32: add support for libidn2 * curl: shorten and clean up CA cert verification error message * imap: support PREAUTH * CURLOPT_USERPWD.3: see also CURLOPT_PROXYUSERPWD * examples/threaded-ssl: mention that this is for openssl before 1.1 * tests: Make sure libtests & unittests call curl_global_cleanup() * system.h: include sys/poll.h for AIX * darwinssl: handle long strings in TLS certs * strtooff: fix build for systems with long long but no strtoll * asyn-thread: Improved cleanup after OOM situations * curl.h: CURLSSLBACKEND_WOLFSSL used wrong value * unit1301: fix error message on first test * ossfuzz: moving towards the ideal integration * http: fix a memory leakage in checkrtspprefix() * examples/post-callback: stop returning one byte at a time * schannel: return CURLE_SSL_CACERT on failed verification * http-proxy: treat all 2xx as CONNECT success * openssl: use OpenSSL's default ciphers by default * runtests.pl: support attribute "nonewline" in part verify/upload * configure: remove --enable-soname-bump and SONAME_BUMP * vtls: fix WolfSSL 3.12 build problems * http-proxy: when not doing CONNECT, that phase is done immediately * configure: fix curl_off_t check's include order * configure: use -Wno-varargs on clang 3.9[.X] debug builds * rtsp: do not call fwrite() with NULL pointer FILE * * mbedtls: enable CA path processing * checksrc: verify more code style rules * HTTP proxy: on connection re-use, still use the new remote port * tests: add initial gssapi test using stub implementation * rtsp: Segfault when using WRITEDATA * docs: clarify the CURLOPT_INTERLEAVE* options behavior * non-ascii: use iconv() with 'char **' argument * server/getpart: provide dummy function to build conversion enabled * conversions: fix several compiler warnings * openssl: add missing includes * schannel: Support partial send for when data is too large * socks: fix incorrect port number in SOCKS4 error message * curl: fix integer overflow in timeout options * cookies: reject oversized cookies instead of truncating * cookies: use lock when using CURLINFO_COOKIELIST * curl: check fseek() return code and bail on error * examples/post-callback: use long for CURLOPT_POSTFIELDSIZE * openssl: only verify RSA private key if supported * tests: make the imap server not verify user+password * imap: quote atoms properly when escaping characters * tests: fix a compiler warning in test 643 * file_range: avoid integer overflow when figuring out byte range * reuse_conn: don't copy flags that are known to be equal * http: fix adding custom empty headers to repeated requests * docs: link CURLOPT_CONNECTTIMEOUT and CURLOPT_CONNECTTIMEOUT_MS * connect: fix race condition with happy eyeballs timeout * cookie: fix memory leak if path was set twice in header * vtls: compare and clone ssl configs properly * proxy: read the "no_proxy" variable only if necessary - Refreshed patches: * libcurl-ocloexec.patch - Removed patches fixed upstream: * curl-man3.patch * ppc-build.patch * curl-http-Don-t-wait-on-CONNECT-when-there-is-no-proxy.patch * curl-disable-test1427-i586.patch- Add curl-http-Don-t-wait-on-CONNECT-when-there-is-no-proxy.patch: Fix NetworkManagers connectivity test.- ppc-build.patch: Fix build for powerpc- Upstream fix to build libcurl man3 pages * Added patch curl-man3.patch- Disabled test1425 that fails in i586 architecture * Added patch curl-disable-test1427-i586.patch- Update to 7.55.0 Changes: * curl: allow --header and --proxy-header read from file * getinfo: provide sizes as curl_off_t * curl: prevent binary output spewed to terminal * curl: added --request-target * curl: added --socks5-{basic,gssapi}: control socks5 auth * libcurl: added CURLOPT_REQUEST_TARGET * libcurl: added CURLOPT_SOCKS5_AUTH Bugfixes: * Security Fixes: - glob: do not parse after a strtoul() overflow range (CVE-2017-1000101, bsc#1051643) - tftp: reject file name lengths that don't fit (CVE-2017-1000100, bsc#1051644) - file: output the correct buffer to the user (CVE-2017-1000099, bsc#1051645) * includes: remove curl/curlbuild.h and curl/curlrules.h * dist: make the hugehelp.c not get regenerated unnecessarily * timers: store internal time stamps as time_t instead of doubles * progress: let "current speed" be UL + DL speeds combined * http-proxy: do the HTTP CONNECT process entirely non-blocking * lib/curl_setup.h: remove CURL_WANTS_CA_BUNDLE_ENV * fuzz: bring oss-fuzz initial code converted to C89 * configure: disable nghttp2 too if HTTP has been disabled * mk-ca-bundle.pl: Check curl's exit code after certdata download * test1148: verify the -# progressbar * tests: stabilize test 2032 and 2033 * HTTPS-Proxy: don't offer h2 for https proxy connections * http-proxy: only attempt FTP over HTTP proxy * curl-compilers.m4: enable vla warning for clang * curl-compilers.m4: enable double-promotion warning * curl-compilers.m4: enable missing-variable-declarations clang warning * curl-compilers.m4: enable comma clang warning * CURLOPT_PREQUOTE: not supported for SFTP * http2: fix OOM crash * PIPELINING_SERVER_BL: cleanup the internal list use * mkhelp.pl: fix script name in usage text * lib1521: add curl_easy_getinfo calls to the test set * travis: do the distcheck test build out-of-tree as well * if2ip: fix compiler warning in ISO C90 mode * lib: fix the djgpp build * typecheck-gcc: add support for CURLINFO_OFF_T * travis: enable typecheck-gcc warnings * maketgz: switch to xz instead of lzma * CURLINFO_REDIRECT_URL.3: mention the CURLOPT_MAXREDIRS case * curl/system.h: add check for XTENSA for 32bit gcc * test1537: fixed memory leak on OOM * test1521: fix compiler warnings * curl: fix memory leak on test 1147 OOM * libtest/make: generate lib1521.c dynamically at build-time * curl_strequal.3: fix typo in SYNOPSIS * progress: prevent resetting t_starttransfer * openssl: improve fallback seed of PRNG with a time based hash * http2: improved PING frame handling * test1450: add simple testing for DICT * make: build the docs subdir only from within src * gtls: fix build when sizeof(long) < sizeof(void *) * url: make the original string get used on subsequent transfers * timeval.c: Use long long constant type for timeval assignment * tool_sleep: typecast to avoid macos compiler warning * travis.yml: use --enable-werror on debug builds * test1451: add SMB support to the testbed * configure: remove checks for 5 functions never used * configure: try ldap/lber in reversed order first * smb: fix build for djgpp/MSDOS * travis: install nghttp2 on linux builds * smb: add support for CURLOPT_FILETIME * select.h: avoid macro redefinition harder * runtests: support "threaded-resolver" as a feature * test506: skip if threaded-resolver * cmake: remove spurious "-l" from linker flags * cmake: add CURL_WERROR for enabling "warning as errors" * memdebug: don't setbuf() if the file open failed * curl_easy_escape.3: mention the (lack of) encoding * test1452: add telnet negotiation * CURLOPT_POSTFIELDS.3: explain the 100-continue magic better * cmake: offer CMAKE_DEBUG_POSTFIX when building with MSVC * tests/valgrind.supp: supress OpenSSL false positive seen on travis * curl_setup_once: Remove ERRNO/SET_ERRNO macros * rtspd: fix MSVC level 4 warning * sockfilt: suppress conversion warning with explicit cast * libtest: fix MSVC warning C4706 * tests/server/resolve.c: fix deprecation warning * nss: fix a possible use-after-free in SelectClientCert() * checksrc: escape open brace in regex * multi: mention integer overflow risk if using > 500 million sockets * timeval: struct curltime is a struct timeval replacement * curl_rtmp: fix a compiler warning * include.d: clarify that it concerns the response headers * cmake: support make uninstall * include.d: clarify --include is only for response headers * libcurl: Stop using error codes defined under CURL_NO_OLDIES * http: fix response code parser to avoid integer overflow * configure: fix the check for IdnToUnicode * multi: fix request timer management * curl_threads: fix MSVC compiler warning * cmake: set MSVC warning level to 4 * netrc: skip lines starting with '#' * FTP: skip unnecessary CWD when in nocwd mode * gssapi: fix memory leak of output token in multi round context * getparameter: avoid returning uninitialized 'usedarg' * curl (debug build) easy_events: make event data static * curl: detect and bail out early on parameter integer overflows - Removed patch curl-invalid-free.patch- Update License to 'curl' as per review on OBS sr#505976.- Have the -mini packages conflict the real ones.- Add curl-invalid-free.patch to fix an invalid free in curl_multi_setopt function.- Update to 7.54.1 Changes: * curl now shows release date in --version output Bugfixes: * Fixes CVE-2017-9502: default protocol drive letter buffer overflow bsc#1044243 * openssl: fix memory leak in servercert * curl: set a 100K buffer size by default * nss: do not leak PKCS #11 slot while loading a key * nss: load libnssckbi.so if no other trust is specified * curl: use utimes instead of obsolescent utime when available * url: fixed a memory leak on OOM while setting CURLOPT_BUFFERSIZE * CURLOPT_BUFFERSIZE: 1024 bytes is now the minimum size * curl: non-boolean command line args reject --no- prefixes * telnet: Write full buffer instead of byte-by-byte * curl: remove --environment and tool_writeenv.c * curl: generate the --help output * curl.1: clarify --config * curl.1: mention --oauth2-bearer's argument * ssh: fix memory leak in disconnect due to timeout * redirect: store the "would redirect to" URL when max redirs is reached * file: make speedcheck use current time for checks * urlglob: fix division by zero- Create curl-mini for bootstrapping (boo#1042919)- Update to 7.54.0 Changes: * Add CURL_SSLVERSION_MAX_* constants to CURLOPT_SSLVERSION * Add --max-tls * Add CURLOPT_SUPPRESS_CONNECT_HEADERS * Add --suppress-connect-headers Bugfixes: * CVE-2017-7468: switch off SSL session id when client cert is used * bsc#1033413 * tests: use consistent environment variables for setting charset * proxy: fixed a memory leak on OOM * ftp: removed an erroneous free in an OOM path * ftp: fixed a NULL pointer dereference on OOM * gopher: fixed detection of an error condition from Curl_urldecode * url: fix unix-socket support for proxy-disabled builds * fix potential use of uninitialized variables * ares: return error at once if timed out before name resolve starts * URL: return error on malformed URLs with junk after port number * http2: Fix assertion error on redirect with CL=0 * --insecure: clarify that this option is for server connections * authneg: clear auth.multi flag at http_done * curl_easy_reset: Also reset the authentication state * proxy: skip SSL initialization for closed connections * http_proxy: ignore TE and CL in CONNECT 2xx responses * multi: fix streamclose() crash in debug mode * openssl: fall back on SSL_ERROR_* string when no error detail * asiohiper: make sure socket is open in event_cb * curl: check for end of input in writeout backslash handling * openssl: exclude DSA code when OPENSSL_NO_DSA is defined * http: Fix proxy connection reuse with basic-auth * pause: handle mixed types of data when paused * http: do not treat FTPS over CONNECT as HTTPS * conncache: make hashkey avoid malloc * multi: fix queueing of pending easy handles * low_speed_limit: improved function for longer time periods * nss: load CA certificates even with --insecure * Curl_expire_latest: ignore already expired timers * http2: fix handle leak in error path * openssl: make SSL_ERROR_to_str more future-proof * openssl: fix thread-safety bugs in error-handling * openssl: don't try to print nonexistant peer private keys- Update to 7.53.1 Bugfixes: * url: Improve CURLOPT_PROXY_CAPATH error handling * urldata: include curl_sspi.h when Windows SSPI is enabled * formdata: check for EOF when reading from stdin * tests: Set CHARSET & LANG to UTF-8 in 1035, 2046 and 2047 * url: Default the proxy CA bundle location to CURL_CA_BUNDLE * rand: added missing #ifdef HAVE_FCNTL_H around fcntl.h header- Update to 7.53.0 Changes: * unix_socket: added --abstract-unix-socket and CURLOPT_ABSTRACT_UNIX_SOCKET * CURLOPT_BUFFERSIZE: support enlarging receive buffer Bugfixes: * CVE-2017-2629: make SSL_VERIFYSTATUS work again * gnutls-random: check return code for failed random * openssl-random: check return code when asking for random * http: remove "Curl_http_done: called premature" message * cyassl: use time_t instead of long for timeout * build-wolfssl: Sync config with wolfSSL 3.10 * ftp-gss: check for init before use * configure: accept --with-libidn2 instead * ftp: failure to resolve proxy should return that error code * curl.1: add three more exit codes * docs/ciphers: link to our own new page about ciphers * vtls: s/SSLEAY/OPENSSL - fixes multi_socket timeouts with openssl * darwinssl: fix iOS build * darwinssl: fix CFArrayRef leak * cmake: use crypt32.lib when building with OpenSSL on windows * curl_formadd.3: CURLFORM_CONTENTSLENGTH not needed when chunked * digest_sspi: copy terminating NUL as well * curl: fix --remote-time incorrect times on Windows * curl.1: several updates and corrections * content_encoding: change return code on a failure * curl.h: CURLE_FUNCTION_NOT_FOUND is no longer in use * docs: TCP_KEEPALIVE start and interval default to 60 * darwinssl: --insecure overrides --cacert if both settings are in use * TheArtOfHttpScripting: grammar * CIPHERS.md: document GSKit ciphers * wolfssl: support setting cipher list * wolfssl: display negotiated SSL version and cipher * lib506: fix build for Open Watcom * asiohiper: improved socket handling * examples: make the C++ examples follow our code style too * tests/sws: retry send() on EWOULDBLOCK * cmake: Fix passing _WINSOCKAPI_ macro to compiler * smtp: Fix STARTTLS denied error message * imap/pop3: don't print response character in STARTTLS denied messages * rand: make it work without TLS backing * url: fix parsing for when 'file' is the default protocol * url: allow file://X:/path URLs on windows again * gnutls: check for alpn and ocsp in configure * IDN: Use TR46 'non-transitional' for toASCII translations * url: Fix NO_PROXY env var to work properly with --proxy option * CURLOPT_PREQUOTE.3: takes a struct curl_slist*, not a char* * docs: Add note about libcurl copying strings to CURLOPT_* manpages * curl: reset the easy handle at --next * --next docs: --trace and --trace-ascii are also global * --write-out docs: 'time_total' is not always shown with ms precision * http: print correct HTTP string in verbose output when using HTTP/2 * docs: improved language in README.md HISTORY.md CONTRIBUTE.md * http2: disable server push if not requested * nss: use the correct lock in nss_find_slot_by_name() * usercertinmem.c: improve the short description * CURLOPT_CONNECT_TO: Fix compile warnings * docs: non-blocking SSL handshake is now supported with NSS * *.rc: escape non-ASCII/non-UTF-8 character for clarity * mbedTLS: fix multi interface non-blocking handshake * PolarSSL: fix multi interface non-blocking handshake * VC: remove the makefile.vc6 build infra * telnet: fix windows compiler warnings * cookies: do not assume a valid domain has a dot * polarssl: fix hangs * gnutls: disable TLS session tickets * mbedtls: disable TLS session tickets * mbedtls: implement CTR-DRBG and HAVEGE random generators * openssl: Don't use certificate after transferring ownership * cmake: Support curl --xattr when built with cmake * OS400: Fix symbols * docs: Add more HTTPS proxy documentation * docs: use more HTTPS links * cmdline-opts: Fixed build and test in out of source tree builds * CHANGES.0: removed * schannel: Remove incorrect SNI disabled message * darwinssl: Avoid parsing certificates when not in verbose mode * test552: Fix typos * telnet: Fix typos * transfer: only retry nobody-requests for HTTP * http2: reset push header counter fixes crash * nss: make FTPS work with --proxytunnel * test1139: Added the --manual keyword since the manual is required * polarssl, mbedtls: Fix detection of pending data * http_proxy: Fix tiny memory leak upon edge case connecting to proxy * URL: only accept ";options" in SMTP/POP3/IMAP URL schemes * curl.1: ftp.sunet.se is no longer an FTP mirror * tool_operate: Show HTTPS-Proxy options on CURLE_SSL_CACERT * http2: fix memory-leak when denying push streams * configure: Allow disabling pthreads, fall back on Win32 threads * curl: fix typo in time condition warning message * axtls: adapt to API changes * tool_urlglob: Allow a glob range with the same start and stop * winbuild: add note on auto-detection of MACHINE in Makefile.vc * http: fix missing 'Content-Length: 0' while negotiating auth * proxy: fix hostname resolution and IDN conversion * docs: fix timeout handling in multi-uv example * digest_sspi: Fix nonce-count generation in HTTP digest * sftp: improved checks for create dir failures * smb: use getpid replacement for windows UWP builds * digest_sspi: Handle 'stale=TRUE' directive in HTTP digest - Remove curl-7.52.1-idn-fixes.patch, fixed upstream.- build with libidn2 for IDNA2008 support FATE#321897 CVE-2016-8625 bsc#1005649 add curl-7.52.1-idn-fixes.patch to fix test, among other things - re-enable tests that are no longer failing, remove curl-disable_failing_tests.patch- Update to 7.52.1 Bugfixes: * CVE-2016-9594: unititialized random bsc#1016738- Update to 7.52.0 Changes: * nss: map CURL_SSLVERSION_DEFAULT to NSS default * vtls: support TLS 1.3 via CURL_SSLVERSION_TLSv1_3 * curl: introduce the --tlsv1.3 option to force TLS 1.3 * curl: Add --retry-connrefused * proxy: Support HTTPS proxy and SOCKS+HTTP(s) * add CURLINFO_SCHEME, CURLINFO_PROTOCOL, and %{scheme} * curl: add --fail-early Bugfixes: * CVE-2016-9586: printf floating point buffer overflow * curl -w: added more decimal digits to timing counters * easy: Initialize info variables on easy init and duphandle * http2: Don't send header fields prohibited by HTTP/2 spec * ssh: check md5 fingerprints case insensitively (regression) * openssl: initial TLS 1.3 adaptions * SPNEGO: Fix memory leak when authentication fails * realloc: use Curl_saferealloc to avoid common mistakes * openssl: make sure to fail in the unlikely event that PRNG seeding fails * URL-parser: for file://[host]/ URLs, the [host] must be localhost * timeval: prefer time_t to hold seconds instead of long * glob: fix [a-c] globbing regression * curl.1: Clarify --dump-header only writes received headers * http2: Fix address sanitizer memcpy warning * http2: Use huge HTTP/2 windows * connects: Don't mix unix domain sockets with regular ones * url: Fix conn reuse for local ports and interfaces * x509: Limit ASN.1 structure sizes to 256K * http2: check nghttp2_session_set_local_window_size exists * http2: Fix crashes when parent stream gets aborted * CURLOPT_CONNECT_TO: Skip non-matching "connect-to" entries * URL parser: reject non-numerical port numbers * CONNECT: reject TE or CL in 2xx responses * CONNECT: read responses one byte at a time * curl: support zero-length argument strings in config files * openssl: don't use OpenSSL's ERR_PACK * curl.1: generated with the new man page system * curl_easy_recv: Improve documentation and example program * Curl_getconnectinfo: avoid checking if the connection is closed * CIPHERS.md: attempt to document TLS cipher names- Update to 7.51.0 Changes: * nss: additional cipher suites are now accepted by CURLOPT_SSL_CIPHER_LIST * New option: CURLOPT_KEEP_SENDING_ON_ERROR Bugfixes: * CVE-2016-8615: cookie injection for other servers * CVE-2016-8616: case insensitive password comparison * CVE-2016-8617: OOB write via unchecked multiplication * CVE-2016-8618: double-free in curl_maprintf * CVE-2016-8619: double-free in krb5 code * CVE-2016-8620: glob parser write/read out of bounds * CVE-2016-8621: curl_getdate read out of bounds * CVE-2016-8622: URL unescape heap overflow via integer truncation * CVE-2016-8623: Use-after-free via shared cookies * CVE-2016-8624: invalid URL parsing with '#' * CVE-2016-8625: IDNA 2003 makes curl use wrong host * openssl: fix per-thread memory leak using 1.0.1 or 1.0.2 * http: accept "Transfer-Encoding: chunked" for HTTP/2 as well * LICENSE-MIXING.md: update with mbedTLS dual licensing * examples/imap-append: Set size of data to be uploaded * test2048: fix url * darwinssl: disable RC4 cipher-suite support * CURLOPT_PINNEDPUBLICKEY.3: fix the AVAILABILITY formatting * openssl: don’t call CRYTPO_cleanup_all_ex_data * libressl: fix version output * easy: Reset all statistical session info in curl_easy_reset * curl_global_cleanup.3: don't unload the lib with sub threads running * dist: add CurlSymbolHiding.cmake to the tarball * docs: Remove that --proto is just used for initial retrieval * configure: Fixed builds with libssh2 in a custom location * curl.1: --trace supports % for sending to stderr! * cookies: same domain handling changed to match browser behavior * formpost: trying to attach a directory no longer crashes * CURLOPT_DEBUGFUNCTION.3: fixed unused argument warning * formpost: avoid silent snprintf() truncation * ftp: fix Curl_ftpsendf * mprintf: return error on too many arguments * smb: properly check incoming packet boundaries * GIT-INFO: remove the Mac 10.1-specific details * resolve: add error message when resolving using SIGALRM * cmake: add nghttp2 support * dist: remove PDF and HTML converted docs from the releases * configure: disable poll() in macOS builds * vtls: only re-use session-ids using the same scheme * pipelining: skip to-be-closed connections when pipelining * win: fix Universal Windows Platform build * curl: do not set CURLOPT_SSLENGINE to DEFAULT automatically * maketgz: make it support "only" generating version info * Curl_socket_check: add extra check to avoid integer overflow * gopher: properly return error for poll failures * curl: set INTERLEAVEDATA too * polarssl: clear thread array at init * polarssl: fix unaligned SSL session-id lock * polarssl: reduce #ifdef madness with a macro * curl_multi_add_handle: set timeouts in closure handles * configure: set min version flags for builds on mac * INSTALL: converted to markdown => INSTALL.md * curl_multi_remove_handle: fix a double-free * multi: fix inifinte loop in curl_multi_cleanup() * nss: fix tight loop in non-blocking TLS handhsake over proxy * mk-ca-bundle: Change URL retrieval to HTTPS-only by default * mbedtls: stop using deprecated include file * docs: fix req->data in multi-uv example * configure: Fix test syntax for monotonic clock_gettime * CURLMOPT_MAX_PIPELINE_LENGTH.3: Clarify it's not for HTTP/2 - Refresh libcurl-ocloexec.patch- update to 7.50.3 Bugfixes: * CVE-2016-7167: escape and unescape integer overflows * mk-ca-bundle.pl: use SHA256 instead of SHA1 * checksrc: detect strtok() use * errors: new alias CURLE_WEIRD_SERVER_REPLY * http2: support > 64bit sized uploads * openssl: fix bad memory free (regression) * CMake: hide private library symbols * http: refuse to pass on response body when NO_NODY is set * cmake: fix curl-config --static-libs * mbedtls: switch off NTLM in build if md4 isn't available * curl: --create-dirs on windows groks both forward and backward slashes- update to 7.50.2 Bugfixes: * mbedtls: Added support for NTLM * SSH: fixed SFTP/SCP transfer problems * multi: make Curl_expire() work with 0 ms timeouts * mk-ca-bundle.pl: -m keeps ca cert meta data in output * TFTP: Fix upload problem with piped input * CURLOPT_TCP_NODELAY: now enabled by default * mbedtls: set verbose TLS debug when MBEDTLS_DEBUG is defined * http2: always wait for readable socket * cmake: Enable win32 large file support by default * cmake: Enable win32 threaded resolver by default * winbuild: Avoid setting redundant CFLAGS to compile commands * curl.h: make CURL_NO_OLDIES define CURL_STRICTER * docs: make more markdown files use .md extension * docs: CONTRIBUTE and LICENSE-MIXING were converted to markdown * winbuild: Allow changing C compiler via environment variable CC * rtsp: accept any RTSP session id * HTTP: retry failed HEAD requests on reused connections too * configure: add zlib search with pkg-config * openssl: accept subjectAltName iPAddress if no dNSName match * MANUAL: Remove invalid link to LDAP documentation * socks: improved connection procedure * proxy: reject attempts to use unsupported proxy schemes * proxy: bring back use of "Proxy-Connection:" * curl: allow "pkcs11:" prefix for client certificates * spnego_sspi: fix memory leak in case *outlen is zero * SOCKS: improve verbose output of SOCKS5 connection sequence * SOCKS: display the hostname returned by the SOCKS5 proxy server * http/sasl: Query authentication mechanism supported by SSPI before using * sasl: Don't use GSSAPI authentication when domain name not specified * win: Basic support for Universal Windows Platform apps * nss: fix incorrect use of a previously loaded certificate from file, https://curl.haxx.se/docs/adv_20160907.html * nss: work around race condition in PK11_FindSlotByName() * ftp: fix wrong poll on the secondary socket * openssl: build warning-free with 1.1.0 (again) * HTTP: stop parsing headers when switching to unknown protocols * test219: Add http as a required feature * TLS: random file/egd doesn't have to match for conn reuse * schannel: Disable ALPN for Wine since it is causing problems * http2: make sure stream errors don't needlessly close the connection * http2: return CURLE_HTTP2_STREAM for unexpected stream close * darwinssl: --cainfo is intended for backward compatibility only * speed caps: not based on average speeds anymore * configure: make the cpp -P detection not clobber CPPFLAGS * http2: use named define instead of magic constant in read callback * http2: skip the content-length parsing, detect unknown size * http2: return EOF when done uploading without known size * darwinssl: test for errSecSuccess in PKCS12 import rather than noErr * openssl: fix CURLINFO_SSL_VERIFYRESULT- update to 7.50.1 Bugfixes: * TLS: switch off SSL session id when client cert is used * TLS: only reuse connections with the same client cert * curl_multi_cleanup: clear connection pointer for easy handles * include the CURLINFO_HTTP_VERSION man page into the release tarball * include the http2-server.pl script in the release tarball * test558: fix test by stripping file paths from FD lines * spnego: Corrected miss-placed * in Curl_auth_spnego_cleanup() declaration * tests: Fix for http/2 feature * cmake: Fix for schannel support * curl.h: make public types void * again * win32: fix a potential memory leak in Curl_load_library * travis: fix OSX build by re-installing libtool * mbedtls: Fix debug function name - removed 0001-tests-distribute-the-http2-server.pl-script-too.patch- update to 7.50.0 Changes: * http: add CURLINFO_HTTP_VERSION and %{http_version} Bugfixes: * openssl: fix build with OPENSSL_NO_COMP * cmake: Added missing mbedTLS support * URL parser: allow URLs to use one, two or three slashes * curl: fix -q [regression] * openssl: Use correct buffer sizes for error messages * curl: fix SIGSEGV while parsing URL with too many globs * vtls: fix ssl session cache race condition * http: Fix HTTP/2 connection reuse [regression] * checksrc: Add LoadLibrary to the banned functions list * configure: occasional ignorance of --enable-symbol-hiding with GCC * http2: test17xx are the first real HTTP/2 tests * resolve: add support for IPv6 DNS64/NAT64 Networks on OS X + iOS * curl_multi_socket_action.3: rewording * CURLOPT_POSTFIELDS.3: Clarify what happens when set empty * cmake: Fix build with winldap * openssl: fix cert check with non-DNS name fields present * curl.1: mention the units for the progress meter * openssl: use more 'const' to fix build warnings with 1.1.0 branch * cmake: now using BUILD_TESTING=ON/OFF * vtls: Only call add/getsession if session id is enabled * headers: forward declare CURL, CURLM and CURLSH as structs * configure: improve detection of CA bundle path on FreeBSD * SFTP: set a generic error when no SFTP one exists * curl_global_init.3: expand on the SSL and WIN32 bits purpose * conn: don't free easy handle data in handler->disconnect * cookie.c: Fix misleading indentation * library: Fix memory leaks found during static analysis * CURLMOPT_SOCKETFUNCTION.3: fix typo * curl_global_init: moved the "IPv6 works" check here * connect: disable TFO on Linux when using SSL * vauth: Fixed memory leak due to function returning without free - refresh libcurl-ocloexec.patch - disable tests 1139 and 1140 which fail due to missing manpage * add curl-disable_failing_tests.patch - ship http2_server.pl for testing * add 0001-tests-distribute-the-http2-server.pl-script-too.patch- curl 7.49.1: * http2: use HTTP/2 in the HTTP/1.1-alike response * ssh: fix build for libssh2 before 1.2.6 * a number of bug and build fixes - curl 7.49.0: * schannel: Add ALPN support * SSH: support CURLINFO_FILETIME * SSH: new CURLOPT_QUOTE command "statvfs" * wolfssl: Add ALPN support * http2: added --http2-prior-knowledge * http2: added CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE * libcurl: added CURLOPT_CONNECT_TO * curl: added --connect-to * libcurl: added CURLOPT_TCP_FASTOPEN * curl: added --tcp-fastopen * curl: remove support for --ftpport, -http-request and --socks * a number of bug and build fixes - update upstream signing key and download URLs - 0001-Fix-invalid-Network-is-unreachable-errors.patch is upstream- Depend on libssh2 >= 1.6.0 since curl depends on the libssh2_scp_recv2 symbol now. Fixes boo#983170- Add 0001-Fix-invalid-Network-is-unreachable-errors.patch. Fixes "Network is unreachable" errors in valid situations when ipv6 is not available but ipv4 is working fine. This also fixes the same error from happening in applications using libcurl4 (like zypper). (bsc#915846)- Update to 7.48.0 * configure: --with-ca-fallback: use built-in TLS CA fallback * TFTP: add --tftp-no-options to expose CURLOPT_TFTP_NO_OPTIONS * getinfo: CURLINFO_TLS_SSL_PTR supersedes CURLINFO_TLS_SESSION * Lots of bugfixes, see https://curl.haxx.se/changes.html#7_48_0 - Drop curl-7.41.0-use-openssl-s-built-in-verify-path-as-fallback.diff, superseded by --with-ca-fallback configure option.- curl 7.47.1: * getredirect.c: fix variable name * tool_doswin: silence unused function warning * curl.1: Explain remote-name behavior if file already exists * sasl_sspi: Fix memory leak in domain populate * openssl: Fix signed/unsigned mismatch warning in X509V3_ext- Enable PSL (Publix Suffix List) - Make building more verbose- update to 7.47.0 * fixes CVE-2016-0755 (bsc#962983) (NTLM credentials not-checked for proxy connection re-use) * drop curl-fix-zsh-completion.patch (upstream) Changes: * version: Add flag CURL_VERSION_PSL for libpsl * http: added CURL_HTTP_VERSION_2TLS to do HTTP/2 for HTTPS only * curl: use 2TLS by default * curl --expect100-timeout: added * Add .dir-locals and set c-basic-offset to 2 (for emacs)- Fix path to curl in zsh.pl to unbreak _curl completion * curl-fix-zsh-completion.patch- Update to 7.46.0 * Added CURLOPT_STREAM_DEPENDS * Added CURLOPT_STREAM_DEPENDS_E * Added CURLOPT_STREAM_WEIGHT * Added CURLFORM_CONTENTLEN * oauth2: Added support for OAUTHBEARER SASL mechanism to IMAP, POP3 and SNMP * Many bugfixes, see http://curl.haxx.se/changes.html#7_46_0 for the complete list.- revert the curl-config change for bsc#900419 until we have a better fix, because it was breaking builds of other packages- Enable HTTP/2 support, buildrequires pkgconfig(libnghttp2)- Update to 7.45.0 * added CURLOPT_DEFAULT_PROTOCOL * added new tool option --proto-default * getinfo: added CURLINFO_ACTIVESOCKET * turned CURLINFO_* option docs as stand-alone man pages * curl: point out unnecessary uses of -X in verbose mode - Drop curl-disable_failing_tests.patch as it is now part of upstream- drop a hack that made curl-config print only -lcurl (bsc#900419) * --as-needed is used by default now- update to 7.44.0 http2: added CURLMOPT_PUSHFUNCTION and CURLMOPT_PUSHDATA examples: added http2-serverpush.c http2: added curl_pushheader_byname() and curl_pushheader_bynum() docs: added CODE_OF_CONDUCT.md curl: Add --ssl-no-revoke to disable certificate revocation checks libcurl: New value CURLSSLOPT_NO_REVOKE for CURLOPT_SSL_OPTIONS makefile: Added support for VC14 - dropped unexpire-test46.patch (upstream)- unexpire-test46.patch: Unexpire test 46- do not run flaky tests for any architecture (bnc#940009) at least test 1510 do fail for i586 and ppc64le- fix a typo in curl-secure-getenv.patch (bsc#936676)- Update to 7.43.0 * Added CURLOPT_PROXY_SERVICE_NAME * Added CURLOPT_SERVICE_NAME * New curl option: --proxy-service-name * Mew curl option: --service-name * New curl option: --data-raw * Added CURLOPT_PIPEWAIT * Added support for multiplexing transfers using HTTP/2, enable this with the new CURLPIPE_MULTIPLEX bit for CURLMOPT_PIPELINING * HTTP/2: requires nghttp2 1.0.0 or later * scripts: add zsh.pl for generating zsh completion * curl.h: add CURL_HTTP_VERSION_2 * CVE-2015-3236: lingering HTTP credentials in connection re-use * CVE-2015-3237: SMB send off unrelated memory contents - Disable HTTP/2 as it would create build cycle- enable HTTP/2 support - make the testsuite failure fatal * added curl-disable_failing_tests.patch * added groff to BuildRequires to enable builtin manual (test 1026)- update to 7.42.1 * fixes CVE-2015-3153 (bnc#928533) - sensitive HTTP server headers also sent to proxies - rename curl-devel to libcurl-devel in baselibs.conf- update to 7.42.0 * refresh libcurl-ocloexec.patch - fixes security vulnerabilities: * CVE-2015-3143 (bnc#927556) - Re-using authenticated connection when unauthenticated * CVE-2015-3144 (bnc#927608) - host name out of boundary memory access * CVE-2015-3145 (bnc#927607) - cookie parser out of boundary memory access * CVE-2015-3148 (bnc#927746) - Negotiate not treated as connection-oriented- don't hardcode /etc/ssl/certs. Use openssl's default instead (curl-7.41.0-use-openssl-s-built-in-verify-path-as-fallback.diff)- update to 7.41.0: * Changes: NetWare build: added TLS-SRP enabled build winbuild: Added option to build with c-ares Added --cert-status Added CURLOPT_SSL_VERIFYSTATUS sasl: implement EXTERNAL authentication mechanism- Re-enable metalink supoort - Use pkgconfig() style dependencies- update to 7.40.0: * fixes CVE-2014-8150 (bnc#911363) * Changes: http_digest: Added support for Windows SSPI based authentication version info: Added Kerberos V5 to the supported features Makefile: Added VC targets for WinIDN config-win32: Introduce build targets for VS2012+ SSL: Add PEM format support for public key pinning smtp: Added support for the conversion of Unix newlines during mail send smb: Added initial support for the SMB/CIFS protocol Added support for HTTP over unix domain sockets, via CURLOPT_UNIX_SOCKET_PATH and --unix-socket sasl: Added support for GSS-API based Kerberos V5 authentication- build with PIE- update to 7.39.0: - changes: SSLv3 is disabled by default CURLOPT_COOKIELIST: Added "RELOAD" command build: Added WinIDN build configuration options to Visual Studio projects ssh: improve key file search SSL: public key pinning. Use CURLOPT_PINNEDPUBLICKEY and --pinnedpubkey vtls: remove QsoSSL support, use gskit! mk-ca-bundle: added SHA-384 signature algorithm docs: added many examples for libcurl opts and other doc improvements build: Added VC ssh2 target to main Makefile MinGW: Added support to build with nghttp2 NetWare: Added support to build with nghttp2 build: added Watcom support to build with WinSSL build: Added optional specific version generation of VC project files ... and a bunch of bugfixes - refreshed libcurl-ocloexec.patch - removed gpg-offline verification - spec-cleaned curl.spec- Ensure the curl command line tool always require the same libcurl it was used for build, even expert users got confused./bin/shcurl-32bit8.0.18.0.1-150400.5.41.18.0.1-150400.5.41.1 8.0.1libcurl.so.4libcurl.so.4.8.0/usr/lib/-fomit-frame-pointer -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:31880/SUSE_SLE-15-SP4_Update/022a8356574d48ccb219be5ab0465aec-curl.SUSE_SLE-15-SP4_Updatecpioxz5x86_64-suse-linuxELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=670cc0538aa402ffc2b0906b3736f08201ea9e54, stripped&PRRR RRRRRR R RRR RRR RRR RRR#R"RRRRR!RRRRR%RR$RRutf-8fd0a19370bd18fa0e988d0cc78a6700bd633df4b4b444fe821133be7c9da212f?7zXZ !t/E] cr$x#IU@]B1é;{уdZ0]X8.j]:g?iKNAA?Opp0q+_S5m-3'><6%)ˑBJTE]U=؄UW8Ag6fyDl>DXSp菃hr=6HTAQʬӞ1bCHưܪy'}W (˕c⌙(9kBUwbjQ6m@!HO[>zGBڞ%Wm`ҙk]I#mFp_6 |² L[N)k@s0;T[H(: XxKLŲ>E~Y-]oq]9O_ PMB;VldcA_4$Dxlz/l[W/8&#YE{L".M (ClʐPлE4ai8rHTl/*"m.cB gƔ4B5 #$Ы b P4yuxVSIDp2yBa*"^8v T"a 0h{Qeĺ]nԁwynr#_C6yw9Ğ.[AYVK/5-[ep_\fFݥLF۳B=nQ2Muc;#{xX˒ʹdJ$C(Rz}9\6"VZ?撈W9BǛ=,Mr>lZ]EsHK#$-h3qJS[Ll9XWI6|OV=#,.Fw[dDPfN$dѭ^(Ԭ>|I/g䅛 r"^#nmu( ^DZCX'8FMu{ εze ^yS绕 3 Vh Ux%)9'YEmsѠ8'kc4?#zחgЗ_|-NF[s'lm~we 8z[*IGsO!E7laeX17M$LWΧF8_ⷧq"iRtU'}'qm1@č 3xK5^zT >jN7Jp$A_A:Crpϐ8252{.@a 4^nbpϙQ ]D)nMi5h6BXg#֠#ΰȴu? o ; P|TixKLsüuL脗nMiͲ@hK3ZXc B p*;Bo[:Cl-sIHyFV'sn:IJ$!6o=?EU$],WL<C5?f֧%Oc7ԇN7kVP/QÖP c7믱ۿFV_bgBlE⫶2'tH g,Ni*`T\F(歨ް^Z<+=rma,Gnl lWsW}JjtCUyVR顃ߟS?}wgZMME2KB,Ys#YR>~, %5SZ{/K2X+X7;{bN .ҍ^3c۲׬8`6MFvP7{"JbzO[$tץtYqx~JF6N$'Y""Ӂϐr״&nt/Q()euu@!-% ?޿V8[G"|3Ɯߓ7Nq]N$L4lŠd1o 7{䢑 es}\̽>2ΓFE@7$Cg_I-q؜ ^1(تNμxT{a<]4X҅Ԣ%تL ypUUKVot [͙^]hwT/-svf1%W0m`窊&O:! گG׹muNlɡ3@?iحV_ORuJG9_ ޙCɛoo8/_ 3C -LGfyEJQDR ߅tER.l֐آ;SvdATQʾ]8q։MӉS黣<7B?Ƿ=BYLb«$dc tϻskI<z:sթ8Z/QCNxkĩ%iժjkquiGXk6F<8CVq)`CQ /uR,(&\݀RhWxAQu۪yui˴uoZ6 _N?sOiM]K`W˲9J܎ixg3tVY,&9Uӳ\cDሤخ ʉݷ >ؙC#nDXxQ%)VF/'7]ĀnMqHyu)}j%yJ6ϥ<:vinH 1F*;ˇ9=NU ncjœ _:NTbBYOaYVۢnBut\}|( 3ih'XWʮ'4\"iWߤe۝n2d4jgʙ>g`25!_SF7eQ`Pg6bC%  |B:_ B2gf7>^Ћ;iAC 6`1 gxRqnY{:au^>']>uF\-t:m)'nc,9W~lwKQC]3OkIH BD4N or6 #N3ǒ&RmX8}\Yt\o˗o{;f벢/Y~*ל<,Va)\1Q 40>!ln)@}OJȐ8Qڴ1 X7В[zF^Jy@rFOVJ2#&CyfZLtz?rpSHr p%o?~<CN*Q\AQ];$vm&N|w"7A^Ha5 ⶾI("RiOcA)uwFL9xHZI.; Y^:KzW̘W~ <7yOJCP u)%azub>ɇY{~Fܚ|pdzQS3=٢ʧ4Zr ϝt|1D)W6oۖmFyKO&@r.Tz,dRf_Fc)E0^ްǛG1#ߓrtu7yG;_y@3mI }{%/`<eOŁyj/sEK>9CmO%@͸±kO(9bEfaa/)q@v saopgfY_q[Q(%C SO>np">;Tѥw4\= Tl VIc[bAXZIu)7bFO$^7ȀfO*|^!LD1Y#UqiL VˁA?kv7TD,ЩPM( ,9ʗ' }onhm} _bOU=FEųAJup"p0  }+f([#B:hۄ Oi] u` 8 P4 rT&A~C!,W&SJlG;y>D,qWgWhٹ_fo؛tдi^aleDS*7v,T `ij:)u[O/t3)=JnŸЕ&H~k{/=٠%y _} 2{H"~aCVȆ1wl{K6%p>-H."L%$!?KUWjzc%Y(zےÞJ\&])fԇ+%c3h ތlD{DաECaU_7!6Suбoeaq"zӆ3 rГKa6w&<&ync  iI]yEcWJMڊC%ԭXp*X/U~Hۦ%nu>:RJ\vڪ/52ogRZ9?B_3m?]FVZV??n0 KQa"52}6 w;=,%1Hu #-+8P lP)GЙ\(}GƸ(,ksC r CCIԞqZ $A>CA91DvJ2[v@@xpDKO `GHbPwn.-VCTb ہw"aciA }dv/AU"dp)o |^d(Fu~1RG$,'Z$A 5?NqZOnZ5o03xbIx#sXI+h=cC_1F֪.bsբ557޲L3DtL^ˢ-XՀ4i'ڋsBg(Cڮg.ЃXНqgЀdRlR#{JYx^;6#i9 Fò22~#" c ꛄ>qJ;O︯hv(76vչ04>"upTeL"S變zVT0{Eo8qqbwcg$2HrJW#X*#y C ZN{cd|ӖϷb|5We^>f@ě>7J@)j-*#&k )l5OZ >_ Vfv6FD J] 5/ݱ>) G"n+蜾=i+K}ȍS'3Wt}Y]՘-q V̵]oHATEC_x)CiQHga76ä[CCmY"- MPK;Ln(Td֮zt4 :jPC*[c!_)- sFyJ,02:u[;āЗ⿠$t15kՁ9-a쀍2WON8Lܺ'O9 !Xo/.(5E*UrazHE<~[BS(ck* wvS: BUfr|w.UnvQ;zHSA@X}S $ @0=k U4z`Kt~Aj9:?/GZ㇕A7Fb)V9Uį?Yn&n$*I{,Ǡ_*w'X;<<Jsg9yђ∸g"#Ϩ&:[\* [ swtR?EŗRNT9i1\ƾ;7R:T6 ' (ݺ#*E`+qIܗNqpjQ^H"դm+!{-' xbQ?e^z3w8P3^|n<@( $Ɏ[WѴe^(QyWYtI!X;̥G eϮiy'Ql[u첕SKӍ+GU1&Tmz140@ 3N=OD͢ab\/$[<~fc -RrD.H;uʵU|N(-[{[ؤRKmЬ L}, YVkKgG2cz$9l¢f-{_iP4+Du!⮰&D>͗\;6{SUXdy*oȄed@|_B)wZ^9-~ IYA{y9ߟTA`BG_Y7CK i>i?xL9v| yUnXh1Ad;.6#Hӧ׋hq&vcJ29Cgr 1PCJBc%]8dFrY\Ҝ 9(vr}mʼ;Fb;+`pWS`0:,l{]׋re;S#ƅ(BP,cw(RN:ik*oh0p2sm9 *] ;!#,5^kf?q5~; xCFFlOn*Vʝ`nDXt Uft4a7Z0LP814>[+RAW+gZMh/5]֢J W)}lȿv Z{~x&"IA,x*{>[w~@Ak}mտy+WO@ߚv殮ͱj"jky'* 􎾐Ux"6ќ m6̂߅ `p*XK3:.=j`o x*=p2J'#/̬te=?2>'KYe!؛)9ޏ=eqR40j4whV/'崓8sSkPEhF ᧲†*"ߞ3znbU1BpUݣ.uLݳ{f07E)*zk2u&2ѿm2 L܄6X1VwPi2:VᓟHbb ;"# yLUrkUBp*G)ƾy*R+!?8`ߧ2 c91yGkcS.^_m)"ís392,A-RNWoCvI@rgR35ρ?ŵ=(.~ YqɮJqח#ȷ!VkDinT GԷ+еpܗUbCIͯi9hǁtns H"ڜd'TjSP@qK! S߮ԁl8vcۃŤm. _zc lttCoZ,x<Ž wqϴKm|6٥<ƌ,!c#0Z΀ըvi0Z` ލA2I E)]ja¢ey`~?tŸQg8Y1ޘH^v*ζe"[:)7YŰ =Z-5E=`O1c"I% ${G';æe14z3uCyϨb}kR'͗@Sc?%[9-;UbvoKh?bUL5?v(3>h7aChSvFAnGH@6a",k דha"-BQOyR50m!W-em~21Y'`H]<r*<7(!zg(Ɨ~%oGƀ#|Q/ۀn2o(B)f$ۛHhAPq{kU@&Y_ZWlD/nH ')6XYS 󤉅Vbyf+%' ҕW5KO0uf]yT UmN]˅.ax'ODo Tf[h bKո_t.CK NWCtiBܶ}aվz}בۏ횖\#zHw[VxF3>l^+ܭa@l:#S_+jgvZ0Z3Gf+f:tDo)e c@] {tr PISfr.zU׮zhyO3:ܚ>^FrJ }CqҳI ;$DSl5vn<5plh:#0r3FBG덋5H} zL>甲OnDF:´ۧ)FG]*j[6M0r\U 3L\xp5X)N٢T# )Έ6/AB?dݾ Q M'VRcI)d^:ҟ'Lu]hc&N`ַNJ.3'_ w -3ۅPHK } s^u\f B^o"?O~\Ubץ7鉪TTiJjih@w+Q0 ׁVQLFӮ<r,dfbPsJu\O T8WKT`S3k6[VWnXn|XYzA2]".I*;cZK68&@npc@J1#F/s)z~8VmŶvuJJ.Uf\\tSTk qzӶe/J綌-Q3JjDzvJ7譨x!ʵvg.% ޽^3xN Bh(&s\wT׃;`w^ƔVc[,4]\+2&}h@BRW'x+B*?~ש&w5dsFSD:og0[1bf' ]P;1x2}k*3`ݒc=8!e?GY>(C!B%Td!H}䭖#7l(e(oɝuOOOaQ;,$Rwd$9ё<8aͺ#wGŤ+;7 #߽`Yirzz};_x& p!˳Y"˴oӢhq~N[@4zŠԸ]bſ@gV`hܸ b}ՠfDn?u8tUB9@10؏bB稴.pAE JZ35jJsNϙ0rչ7dɶrn mP!wDq ok뒗ٖOkOt.A*>i;X1$K/kR3S-D*9@}^" s0O 7cv\*YfǐYh mGr[ZGk]]lykWQɓwMV>uFZ熛l)7oV:sgx *_G'P3uzlL6y@ōLeez?+YnZ^O2'D M^a%Nŵo݂ d:S#CPg gHDpx RdǗu1f  ƴn/[2""P#]Փ)B>@~LRZx5?Vjd#XDdlnex$ԡJ 9t V^[Ο5yO/BO"~T ]%PlOU4ѹ ן fl!' -dtя^l(4\y TY{]"1ּ^OYZӋrw~mdCy5YT0yFZ`Y9+sV;G)_kN3j#te] $TaLGi&\KBq➸>gРmWb } ~s4 TBֶ"t((?6C4|BlA+BPb:Od[Sψd,, Fx>֪GjvseDcǷzan_/rA@KB|Xu)qW:9om{Z£4U>[(<{2x-7rrfR-_G 0x332~NݵPE4]=1ɻMp/L[PX^[ < |[DVŠ(~=o=b"y,upד' 1 [1 @vu}fL ^3dimLа~FalMZ\9|ZŔ+wz|d e5^]eUC'gy;j88ޠԋ"`Dk0ߧ%Ɍ&y!4J?1s1xDZ8 ˗~Nѻg hbhX>=8+{7s&-6UPj@OӒa|0NaJ5'~PbaNm܎w3_ 7P)7 g"L"DiXF*|Ш UA 4hl[7C5۽sJi4$[ڮkSWy KR0eW5w#`"16#4:A!_#\WC{M.zRZdr>[NH~]+dK.ےٲ0/߈/X-3d6H$ , fM?4C',SGti !y"L,ӘEz4 0-|X=l;rj]QePK`0tO0Vp! r <i[=IC$'NxMmӴiQ hTNzP%rtqbbC{?EfR.iEKⲉ>IR$F[g64U*B49R(=;*PK$}Tpe ѣ)i$L%x3E8Yy핎&BW"fd\ 36'8-:jo Ve޼[VL5"nhb1q{H%68&AΌwE pO'%=ÒKrt =43^]E_C,5Fm&u~-®`{Q?";:Z~^p@x+tk?eķ0c"5A c.1,sUܯq#Q?BBA,*?A^T_caMV\撨V# Nb}~$%KyW-0 Aԋ|@rP&Np%~nl @_벊NOX:g6u|uR rٵ{-+[x6оA{{^wcB"W4՜BD){c*6% ѽ)$<)KH0SOusƲF-}wS݀LJvʓή>%VtAHFkA2RtYiXMP~lHTFm^[/U*Y̓V#>:mZ=jmݚ_QrŠ2tƇ-DQt33dGB5YEXlmo$W{=un>(v{71!0}aZ¦(BIX  oڋI8YM\ ׻L4)FhS][8#J1KcĀ5 ^ 4^@9aogOx!1NmpEf8G;*m1nG34s2כN"&H܇ꄽJ <5|WLMB˅ȧ o2 =Ղܚjz&.vC?9^5<ޮ o`J ~ ?9eu$0$j+*{.0ۼ#dAipc}#-f'3 eޖ=nƎAXO/42LyI@LRֵ8,oIO~OI^#pDPÌR9X%֎4cfx3mű&y>f{8+b~Sc~Dߔ~'| <|lzI2V3#=NvN)rǩب(t@ Am:2̛3Z).fWHy͖ʒi"/9א2hYdɃk! Rj qay@4'J}7I N^F{j S7/X5T;8bFeh \j@2k^iaN715lAHd^C׽\B!5Z,B:Hl~.1qxY`t!oϴ{S~0d,U&%)9`Kw"XaEF uw>iM f0u5=}Ɗ yV.U"me[-Wmͧ$ ~DiBݷo R8f5*@JKO=>p&rqsCTW]MxX..^cR۵Sڃ,{eA3"`ؚP#oP f=TtgEsk-b1&7%b kOF*Eg4:g f65å˷j1|]0␽LUY!Dټ(uo[✒|CR6U/t+%J[aLE֔rl?CzjR'< 5?uW:PZMf μ { Эeύ w;C8h;Ҽ+nS(A2`%>N )>Vs.)xG#qFs.u^K^q[P3ڵk PEXоmD~> 6k'mY /gU~-Be*=pѲԓ*Vc^}-]`$a0"}&%YdH.:YmG*'Z@_ŪubG z錽7%ty7 @rYsYbp31hB }ZtٺWnC1@OTej޷6 w\ɐuFX̤ރL[bH]0s[6=l:F/&6.seZoS"TDH]xCVT4!tP|ݖwYiL8Kcz$H4m~i1[M ee6 * KC=5\vߝy9-D[ʢXE:^1_՝;UEiUFә{r< 3=:%b޾4DL!4g20s?V 4^ $H2l){zy 8FMmӐKWa~XOk'e>_^!&nz55o%+Mr`BQI"ƕ66 ? 6W4RᾔxoiY Y(>S!(HB%gFwmm ^i8gu}b#tz"b)ㆲÕ|%u,a/Uݏg. @k䠪Hcv<] I\ qw]GZ鉉kWgqq%=⮄:P?ZJUpǩZWn~3Ul3{@rҙOB@*oeQ2b$I_&Q%h0xo@4n%F0*zZr'.ۅ;AË)X~lHS39ƿ.Y hi0>='lMxY79M}kAqJ]]ZW[҄r$eI/re̅ؒ)_.MEEoH|]XQ[jER;[!`=.sX1̍aB7V&BC =iܛRSژc챀q%ߑWNkr*&(apU©1KP 5}b@,h6E9Bʉ'F=U]DNd{|["پY.ƍE=-&]>3[Ш>u*m{I:}FF OBK*̴1?;k0m!;xSӸuf/̀宼.N h.f*M\K֘ALvO{)L˵ԠOW+_ ݧ"P+HtP3dRnW.Z,i$J4w0Ob5gݍD<6@0fTT+Xi z@}ym lx]Dw95 &|4QM0 k|*\,!과oJ1ԘfK ~HGrU0PጤvgPF'Äg<riDDn'_p'_=_}O1hBUYWq=1(T'sDl:78jZf$_FF>Gә<.*B*RȎ?30ɛ!ck!#0%An/j^5Sb)WkHr%0nS 2}(>65<{Db_7vZ]x`,>dRr9$ 7zҧ`upZFǰ*4< #Q>[fn8ׯ盡:QUCUXUo ʂj)٢s x5ŵ ;~}0tx7j3l]n?wA P':"(G'RPg-Xa~o[%ᖍ,bv!Yjk-׮$vyBbT^JҌr(AԎMw$>[Y7׺{+(SdVҿv{~5Jᔟ5s.@hid R`(ueN ^C #-AYq2I{8b<Ze  ލ=SvK!jܽ@CewfQp,>*'E>+b| &5`ǻXBCzﭣ}?q++ X͕7_E ڧ&5KDK yͩ5L.Jy}z\!_A4Kɉ)y3l _y:sC32q!D ~ >\~ծnIõ]JD{--hjM@DID.J₪_ s ِu7,&q=!UkH-ylErg)=R0-2ZJ e,)4MYja}Zov:IG:Sixu>tӱ_|fRu]u&D`m&{`Y|DQc{xX%pz$hKp4% BK0^Bݟ^ze}$F,@#H@`u($5<=byd'Y}`"$ Gm=_>m@\1JthDd>p.79ٌj#hgyTĖbJw4iƦ$Ldq4z/(>Z^JԈ*6 t)k1Zi`CJp"б"ՠ˻8aCDH>ͮ%`|0&cѦ}esRi9,CpQY,&&h=\6vUj>$z'Nk0n6b]|Q Ìt=D[<ӷ$[|V9$ /9`3_X&NX<M9wwfzMiGEZZ` [qWg@VS no6*TpL=$!5H*xڒٖpdiL\ϟjRR$(_b1OIgԄdEv-[5j6_J ?a_J5&{0n \6+9&ı`׿[ٗ#x4fsK ~^ΫoX:Z|L[sU.ysKԽqL11.N<p9+c_%bn*:@жWfzGN)B^^^H.ɸI~(@c~~/NϤIj^t8CA!r7$yƙh9?=a2\!_P 2LjR"DsOYɯZވnX8ݻS%kw?/?`LEvހ`Mymءe7N)M O4H5$ɐ򡹤)eedW0^2`L=8 uKkx 2؆lT)!'@?h+ FrhlITW@wwj0Or'wgi^VMc[2nD_{̟:Zۉ9Vr3#?Fu::aX7l&h!9GZ] ( _K} ԹZYl <%XP/ /h܀ϕ!_Nh YmO NGnjKh0THB*0nVMvyəp 1[COZЄ_!΀%l!8)AE87xh`tU6Ve〲atw-ibOZX UUSӭĆ 9R¶"K䆹o5ҋ.(W*u0ݢ ʜ8a Sӯ GI-]85u.NPAU39Cg )nr+ =|Yl-_Gʼnikou,1sA֑xBѨmgFfۜ¾֧W_|4GwA?QFj!9 /R+ҀT9ݚ(fHza((ލ+O܄9ci fp,(k(w^IV! gNzl@%Bzk']$'cZ>xg_:&ⲳqoVs:gGlNBbVӞ2:ʫ!Z)2<7튕-(CCBl @u/ 73z{h>7b5ǒn_{rm@%p1D6y~ߑUӭwA_zKʛ:nemFA( _إ!(eC8BX` Uڈ`AqNf.j]]'5PWsCNp%1F:UG*b Fx-$~p飃&. }|a/ 3Tp1Xd,8%~Rʩr#E }` bN=HcjIR6sl!>f1fQƔ97P6j p1ߧx>S^y5ûCC.!JU7Qً@}$8Y̛+'hI;Sp92:^}S1-0gU[ƸO'nGzOzģ{=,>0 T3W'jNy{A M1uw y)V?us7 7-1&u I0 ljN\SڕNC2ec)p3Jp/k0;t2㡽Op֗[!7K"S".: q;־Pj4aJ:3kPLtfdJLf"G<3BcCd̙s PoP&LmloW-2RXX];)$(mV{ `7Y}.cwlHW!?xgpp2N8|z:c\l}DՈz25:xg7a_twP*J49/aﶛ j~8 lm/ 14@<@C˿ 1*NEG3D18\ ~ݱĥ.NY)mA٩2Dߠoz6wEcxiU3\f<'wc}, Dz5k`9/׾xN_Q@a@TFZJzP@Q` wBӄ*)(pO!lq+2xb:joQH-Ǽ#.K6IQMG#XFF .ZVWT7K0ޏZ楪X( n=b_QWrY/l$:{b3wŠϏ,̾l}`DHC7 ]QKol?_)5 vyp܏KA̺f'1Pci's\H ħ#Lohe#{M|ORRTAyj<`K_m0_-Z\?*#F/HɧdPfY%3._s%Y"ZS'„' 2 ;h*pǕQk140&z?.Lȷ '_!i[~WI`>M}1͆|+?I8ŢMET f W ߍ\hzt)/{ ftHߒ މѻE\>pI|߽kg8l'ErZCr1t69w !s.+P%׎Ǎ$oFG` qdo" _#n.,`C5zKC4:[=%]nfڞáu{ӕ9Ml!$\\`AW2NE"&yMwk;qT6!E.0 S)z+I%4,r~aLGaV~#3!ɽwrILU{%6Hhi2z0tjF r6Zhш'hRӏo7d tӼr)r ۨ(wyݩME kW,"7HIHN]Ktٶ;a%RpHʗ'}8'6OW0DǴaif̱'Pq􀨲P( qTW­mc=ӘVUF^?bП-uT <y>NjH50w*yLC-uhXbq #sD%-y|C3 _ڡ/ҟ{ n }FLwG5ڼiq#I T' `n?Q"\KnjCXY DVmd-aWoGXw5 񿅹5=O9uasǣ%ۣ#;oN{4)|PդpG+> 3|V=z'o>=Qi;mm 4y|Y]ջ!E2 !7R 8¶7C\N!/thYH; b g݌Sm 7j=Ǽ/fd_e쟺CNKV ľNoOZc^[b\< `0d6-G6y!Zw!ĩO ]e@yncP%"uG?RJ\RN-WbgXFB:xZb!5J&s2*VΠ`3+kv;>`H"}BMD1wH2d*,[Iϙ!@ UkAt'Sv&jNA`{A5v% 1N%H|vy f|0v=jTb8gDH_mÔD ,`ŽH$;G6Jȥrzh_^Rp] œ&LDP>(ʹIP\Mj'Yhz' cN|Pv(Xi%NM|LJHoc3c4x[_UxT;ʓBlL`^/ |>'{5s&nviʕ>8M7vp/R:6|cT,!| /c"\5i@ltkȈ=2&; 4}&/{2!pc9TGGN"WB8HdIJ6j1eJîaGC͵:U+:S ZP0| BRd0 Խ(w$Cq]¢p_=!LO@ZOy# f#ȔI&@:sE,b5-lY9f(uDmjFGTt<,`vӟ }T15):"|deO#*BP3pTWQu;ӂ|I˲®}5p~#& -"EdsC)g + KԹrx8ݔU[2HOiwq4mvP!h$7T׬ή=crLJ}hJobLΉG*˸F{ȧ}t)={%&o j|BwFrbea;jw5Xг fe*{s,,Џ{Lܮ:g"5;+_}ArŢ|r`>]$[:'󪜇Q>U49F5޽j{*4jь=Nd\D' ^kg;L3Yy熟uEI> OB:hޱG@Zf3a$Y5-JEb0[7c]8 pM7J8lv=$ǽX~ fQvZ=ѨY_s8\ w]Ϯx"(;5:9ۇPڤc7VRXW}Ƒ>Fse;W!E8J{(mS=vi:)u: ݮ~Z =;Ʋa v 1>I;DyaX 8J3 ͔̕zs'AD" !F/t]4$0}-K5=@>x}:{)yrR-^WG03YP(bgBl~>ȺcLTvKKuȑH&hJR(-:g׏sggе f&.]b1P%v;\h[A>킅lzb1:hjbbZ' 6pwy4"mGX <\,%eCq5J4u4`s34jT3IIɋ67T481Ms/,) hu 3zcQيKf%6]Q.[c!Rζo<q+ hZ2σwL4=2qD+lc ܊7+D3+IzMI;c}Ś\Þ{XPI "tChTVU>EEght[1a2Δ95T7VgM)M P0S|m'v,,-WN$(C"%95ó\By7'#^,<N 6Ճo+tٳ~U<+)OkšNoWADRG/i-o#X b9F|=1d{Y{[5p ,.T$k|쯃g}7WQ6SegQ3|wZAn:iuE:䇛/7T#5%  NS(ۤ>rV>x}Ũ?/29slP ,NoBw)93Ց~N켫DUbnta UTɐW zYFr2v+FCۮ)2t퐼X^۳nCL7-=` |E~ݥWQvOʜGT`sqL8#ܗ4qFwN=FKI2:>H)΃˧-ŜRUpblU?0=) &TsÄF J^))+[ -VtguNM,/Y[ / Q!ׁmԾVlj|Z _:FP+O5?_*q)]!sdelsʊ"Y>1T;m޲j=>&dX S[P!7=>?CeՄ%(<~gQrX{Z>l.Ј8zO<~g=G.7›!GUSh &X]%bu.7m@HXjnuJoOG^qiML *UY&q"t43?lW*Z}HM*:.(+ uXB:Ўp!F!CD4՜:ruo)_.:"R+L~N4H`1T'l S;4OCTf_Eu#/i[bwbe-o Ac'D71Z6sZl.)bG3z|4?) QcȾh!_Dz\Sm+'T}I|WҾ@FbAR>}T[g׌fx?TfĐ>0 Us`exG-Fڅzo Qu.% Ǽ7 Hh`CX>xi T|JTQYEhnk܃8ow`*mG++ |R6lү8_yxHIKH] L!sN8Tڽfu"LQ6T0&1#l3 xT>Q-)Bh^ޫY"% 6j_70A=ƹWr>rPɂz MܦN ayCVNke/|WNP.O=3 1#tlÊʹ ˥L:OËf3BG\z 2 zt}¿x jPs=kۺlt8e'AiՌ1C}X.E %G\gG՟DKbQvW7\RC4^t~hHp $YM*6_ eͷLZ Gp:1aQ~ >g)jœה>F@]c\pN,Sz}xޠP2Ѹ,eSFBzrN0es$klV9ʳsg%H lX%TߪRN{Tz }OiMcHCN[o @/g-䶂y{#`WF?/Zd P%F969(cmmDz,^7,7:~HAZutc9-=T 3(Њcn}Xֲ:o-PfwLʪ!XqW{?-3秘Ee`7Z[,IH܌ZZ5a] ~2U_;ͼjVl,5<8G\$C2Gn\:wqn%F<ꩶCrl6>?Gmw@ Z1((P8kѪiGos(K-ֿx /EyE[c1ؐRG9A+>BC6ũ"bOQ e0FyMgD<`I|6AbOy:2p_s4} %8mVd|FnUzp_$C8Ёdl2@Km*,4H&@J,٦<ϟOaUߎ+pD5WZ$A8~4[eg`];Ē5P*~uݮwR-5 tY=  (Ͽd{]#"aS]adYv23tDF X?;M<fkh˽-•(z#ӀwHP"ZbklET~zGrb@R a xp>bݸ/`>*PfMgs[ݝn%QZThdJ)Ʒ HRri{Y1p=P0IOqeV 645JМp ` OK4 'Od'txϾYdaP!Zc}*\mQa;Tkb9̑V gs&*8}l>OXx]eĻ]>?_MzrIZ2!%lx^͆oy2z\܂.%i]+1Q.CojѢGX5ϗK" ."V^'0R>54=ѯذg4/C StgRd/YB#0 I^U:WK4H_nO8X&T2TE!aU4@7 _&2m2“0y&17)̮4zg'YC[d"f܏d? n'M,^iBG C""bP*U&{G-l}*Ya"El `)1aJ\5>d Y-aӛsCMYw92ԤL~}b'o6;@Q𨔷1<b$A+ {}#u`40haژ"cT[}X4s =+ l<^!"xY:QWpv}-S%@:+W0Q(¯0ᗵu?o SmʢUa< f [m|C1mߩ%LGG> n@{l (cqBJ7܉}](uʣHZfKې ۞r~X¶{OV?6ogƍ}{C(ԁb{X-})-תBȃ΁r(-qzTrjx.d`Z[7F| yE@dvUjƍOQ|`?pF\۟5q8pML3N̖aFd[:6>/JF@& `{m!X 3ȴK̘9;7EuZM4XY/i`o- |FFbk{I, 䓰&}!jaFP}:Xۋ#ma&{&'~u<5n~}C/ѼИ'djbWS?n'z.q8.Wq(z7tӴ߇'Y2tfe󊉼xtQAxc15뵱>2z=\0<-L=\!m1}>cvQBvmuc*GF 8(-inom7RƘi"UAǼQ9X"_]?,P="?  AE !W(+9u7ukpM6o&hj2՛r#=;~d;Q=ʹf h'N/FOvfrZ>gw1Ѻ)R-v|э`5Fk0?2g$\mpYMš{ u=P|.vu.cS n I?n·DaQj⡳ǩICH' ޫiH" 2$_&%BP{IGAtUaбzBӥ;ҍZ͎ X` =]u3I_"߄!'F]Ʊc |^Q;<\P.oJKLÇty WTlIԯ帮@oퟄgA,42 NR|ڌP|h2#3D0\ oxhB>i:5;;~Z"Ծ!->NX7l{B}H"3YRkul_EW j>@+qctxЅAw6K5'tfǕq_DY,UTԛ| 0 R+/1RWq {Kd3:C_`*~t)_IC.\I|\ 숿O$BZQe&!HB0O[lPtH ;o'0 i?վɖA |!"a8Gf&C'v. +➺Y=ʯYȂ>lw_*d2#*PmKΑ%#4ӧ'ͺ3wWa^ǏYք[،NKBJ=#O( 8;RD e!t7DﻒüwYzfz2vDPǰf%n|3h2xPN"%5 (ڬ[7:.O*b\K!ZIF"U$=rKkg5݅DC)Q~V2 : Lo5ۉגݲ#z'W0aK;+ >#~J\A*F:< jPy]/] \x uI.$w&+FFfg5 02ƵסaD!=VQL-6n-!?sT%@NѺąeG_iGK(ѡHn/Yd(JKԬ 'uȩ[ z+ ~p&Ƣdٻ24 *>qQ2iRՌ$z'Ԅ iYnjAc[\SdT@}}mWQ%;Pq K@? dv']pr(6f(΍rNUzB<րa]КoY+Y,קNb, 0I¨utа^b:-q&(9:{.i g8A^t$o#+.CQ5UoMڭGM\h&.xRWO ? H^6#c7R/=lP CON<($!# 'bq4vc^CG`$&[roS 7^7#N]%ߩd vҿ{ZOa$@LTʋ=qtQ?423Ւa7J }2J>LU՛3/t3!zDF'R*RK'Ù=uFD폩eQ_ 9xG- oG!,U? +{+p.{=Y{ܜ)3q;(g9`LZݷn@p_6~?)/VWڛy pBVNB)W>xa+YKR"8IYRnd[_ >!Md_0ҭ7_-QA rb\lbnaQC[+gyZ9 jq;If?v ŠZPrӔz ,|+v.0}*,f%R OäC2wL$^ ɏ?och2Fva{mHk"ӬtHG:73EX6QFO}mT`vp|%/^t[)$g-g1#$qhY̢/5P@TTu2"mS {CAL*UqHZqv"^"ɵ~iW،bL!3s/AE]=Gp ^}ϩ  bCb^cs-~-R٫DCo*}M6u_9Rqҁˆe#aA>I qGPԡS"]> =XŪŸ[ӽ[U-bS4hQ&XALQ+t[KoA_G3@ zkSk}~)AeƈφV1),a]Ƞ7&}z׽R4䛰e3Cpa|@+ .e~ʵ Y+ᨏO6N|ǐr<.9 EqtkOS\YyRRWCĵ6 z&L}5qgօGW%^.\a@aٱgnc=r5njnՁQ,b88& 2#/O+ݣ0!kiQp^ҭ +ʌmvb;ݡ?}+&BX Sw;+Xqexsw|y'Z4;ْPgVyw7_!ѿS'/UD?0KhV17Ʉ}=Zlc̑DmN]Һ3ʚ5Zԥ;c49R1 a~V׌WU})׫֏7A>6"AÄ;~АY jJE="YǟlЂ܇ jx P 2,joJMijS)wZ @0<5x[h_O$5AhњL¼/B-ɯ>0oԨ^w"6퇫$NbQB7ŇH:Vfu,vj=Kb?vЭkO.?a]Ȕlb`1!KXvSnml,'7.n?ƚǷc3,-[G,Aڌ"%_3-%@#1s7Ҕ&k5]. ]USxջ * WwT6iz @JĴk/>=U|W>?~p92nzlT A9?b" baNGȾcŎۤ=rN_.s ~puÏr{Lq4QQ>EjGWY 4O*MwJ}ƥoVp$4 bޥ6C _Rߩ2ĉYzV%2rkԘT7`}Ybׯgo?4/z+ ?NoVJ>VY.j0{oʦWnaatd xi=)m-5 /_1 ę3Kiw'<@?Xb7N]!D;oOGxRx6_v#," -2q6"}԰ M~ݧ_`g58'򦻷dD,e{l^1}FiPtSpʨ%3}ư32 Iӝ\Xw½9OҀ1Yj=%ي鎓h k4IO.ۭ "?e'6Mח̠bƞv]h%$0JU^6) 6e.c *M`|0s62)tOyQ .IJ~Pzu (ʩj3A&mƾ孴 O_.I7չ>DCZsjmc.mi?TK;}}`xȻ9e_Ӛz(?v;:`9}bhKԹۨ@+- }&jϲ߽[TE1bp1B%˘ B:>sZ-T;0i N5. |+8 qsPHT}6jv*.J]Ձ_r hT{p_dM'Tl@L8 [(1rS|:~&?Ѵ1#;9C4753*7 ^) %z牕dm4ʢw-/UsVP$Ī'ƻ0By: A4 =>յVJ#ܑPz`رc6_;ԕ)o:݂BOJxG^ vG^qć&pw>\H0ocꀈ{eCU$$CpL |{X Huotk&;V]S1cQ|+EN "'lrWg_ۀC)*E!mz ad-ѓ(,@0۷`=6|ɍ5N͆2ε+me2[?l *ZҏfHdFB&įvb|V+ Cyqj@n#/o !xYZ\䥒fc~b-; wȣ!*!ŞQ-D=D#Sgy]v޸ةPEC@] ` Kǜ1Ta\BZwm%|&Mkc3nO9JVMp1J8Qs`{-_ 2giJ0>+fI y:ю,n>w%59yMq^D`JO}0UlcpT"I7{$#1]ۏE#Nhk:ՂM|xz jNU\MQFvsFي={!PFݶӈ]ʏ] c\N a`|6O.f8Y{w ԲbIͻ!OrXdzŻ;w }rZ?׼ѿ)-%~m&r\BqIL>F{?^t6l|\sYо/ϻNww0}-#<͘I7.0`!\t=wknj$֯}ɕ!t}~zCLz;u9~'47dXY,XrR¯:hD{j~M~_ߐ^챼X= DϫVbQEEiůʠzc@˩!-)"5ˑfkI4do:J覧+KG럨$ۆ ^?-w{,ufldo[7*Py3CJc iB%%{!,==zBS kA.~؝N&*FA@ƈp+9d[OˑmdTI9?_F\DRK NV7WEeq14M[j&J7N>wțBrBmZρAiֺ&FJn%7˂lOP2LƑ|5a+ݱ xP}!)/# 5=re'W ɂ-<4=eAw<_a4+F:$m>ЦB;4c)em)U{Pw ֹI -(m DO`4ɗrחD**qӂT6 no該}+>XAnß ?5#] &cP@2QvQ' 2{ٺ/s۫F(e@t\;rd_W2[Zh6 &;#O<ꍖV #GEˋbI-ޝ @F٢J{6B9N mr]R9m@ nX5q_^P[kRQP\FmET= %rwMNZ@ۡ&"@loYPui[R-F|,$/_/I@S M$?t[E=uMI(EU.L|ceI62DZjXg8+zXUjz_faձ@6Kls[?v&@cR;D^0ơ8axEm{MAfӠ&lEJ)Lfo`w yе!R*K4w>!![A ^SXl *?u#eUAM L!:*M &>s~Y3)`<=,!*̀ ZRFeWb'<@$@ӽ~[Ekx?r"u;$Ʉh< 5Ǥ9udS>i2æeH8KI;F̳8Vztdwes%.c2VB)ź׼Yu 'Kz Ey@ȬxAӞ蓺gAakJ{{r"0Jʐc\& z5;vnluP>E2t e&i>a{JW& zr׌ p9$)Q?K1)尌bή;yKcgTP mQUO]c׹QцE41Dħvp\]_x 9q#,6o'>PrJ^H_\mw'8oQ /x3TDJk=(&DA}VڱS8 oI;BKn];[z&IX/ 9icMdzYk=tDW1D~+X*:Xn/Ywƈlvv6x!f4u7S gVo> {}i4< l M-a]{Sd> 5xLRox|pߪr-K/ g;iMsѽ-eѐcEGy`;$y.l``@̻ 5 " ,M,be|$]`tl$k^ym/6kYޭ.jɞ 7a_A*ʦLUt~6`5]zNEZC\tbΡMQĚ 6|۠L`J닐_꘽hԺ8:4@y#jGc{: &ZRUU yzL.9W}TXaۗt}$UYزW(}} Ꮈc[ړ+LK.*s[#k8u,/u`WEPO*uX<"b[˪rZ| >,HՏ,=aO{ROi^ƭԡ )_9#\w,pC|ȱdS=`?c굍gN!x r]enGꑹ*mm|ѽ^I뫚Hgq?C@UKlr_%:g' t^srZ?a\y)ٮQat"[x,8.~:i>FgZF5$@# ?P̏FUnjYݪB yz!'y`sLJ"dqZ$NrGf \g [!낫m]6j""]vYIՇ& Dr/Hx7bt qY]bbZ@rtfY^xN"8#q%+fpYGҠqtM}|:J/_WhR _Ֆ+*oìĽkSw?[tNP7 FF@vtہ)u)e>@sU_Yo9"QN_ rPã`$]\5%yhy)ZLиO)SЋ!#/)L:2-XP^`}kjdһ3p ;P@RJJXv"xXGe]IgVͻpr|W°TWp /& vCh ,׹$WUJy4Q" ˡ,'kR I\Y {hyR/c)S|sMimМxpy<ⷪv&n-MG4n;0B^~S>5ӅKV..u2xZKSBۮRS.m>| G#&ꐃPEԝ4Uþ`ʨD?{&1^|f2ܸiWSSDF*z w߸+4*Zz٠l:?l:u\POPImz5Qa͏^/৆F ˱CA_)?>4׆ClIe$Hqٟ[Lk]o*LZQWơ%N$瞝ޡxG,V,@9-fo4 h])eYjȶuAq#+??tnJC`b{ħu+ƁdSwO$2וCQ0R"3C7 [^cS$ɔDsܼ-2M&ؗ odױzRL$&qpJ{`Z,/?DC"ShiDʆUUii(^xݠM.8lweM6a[`jZIϢaq)q(IIUpiFKx ,M1'ļ̂l8δn 0E l,=b+!W_xJa)0yf#k>sSBͣ"GKD?姸iO)U|C[l?Y$ fxp/ا^oqWbh1(WDHX_-e*2 XXOSX<5k,YErƆ}ԥڄrg2=ٷ>Ft|ƳLnuyC-.O߇fKaA?_;' 7@q %˺E թB>3Kvi =Qk 1VA uا!F+(؍JX =O uktS%]+_LPʽ^42a0aE5n"-UBqX|^k-hs>I;LݼlF+pZaZj'w } %'rI.eS(V͗%N򫟽ڑ0dlw=*>z+d`tS&tW\7fPz[Xd_j}?bdl*cmW3ٕ^*d<=Qާ.ȼz}(`dQr<^k8)*ΐdߊ#IH5_JtOpACRK9E>1ww.p2to@- d]du(W; =5dcDoeyXC e^Vm՜N-udgW)amĦ<]ܣT !B{ZI upQ\}jI b*JRId00&Nmt oL[Ur" TRߑG٦Xtɜ2X&e x\ߖ;r7K':x!zX2>y|)vy1LOiBJIEvƝJmZIm߫MDSZQ@ÒbDKѮR}cjR;p&]ϋF&#<{Fq5P~lŽW (F:I X§^sk6[$ 3~f}(JKɳ.~Ÿ{yhqɚ'u U=H>{愠]#Z|ԈmUe N["z*;ȣ /h.SwnڵYQkQOÂ;,k"nɟ;LU%ht\ y!Y9jߓ4vصݩ A ʇ˵N^S)l1T_ki|y=. s &+ABZBՐ-!˙ Egfd9")mlqOU3M`oNXj\wl(QH+,j- UZu#}:\vx |C jkۂ 5J4sWq]ln*BD,0\RYC,"MH<*ǕѽhQKW:=J+"˷W"ι~qo6NXߪ<ta(D!qR샟a;=$&K6,BV1mOSU\3GCWa/"d :nHAHL 04kz-ȫm$7uJ$;؈PGYȵIMnC aI&jg-)(s %M@hc @4q(9uڦA)x25I%f@FNwLy-B6I8^2+ u AԜ@X];ں/r!j,:[@w镝W;Y]5fgp^]=c;<`^[|U6*Tx˅55WB?/RwTO\k@y[L#sv&>ZqOZ2}ڲeTQpzn %Iw`olS-u$JT=[E*#t }5:Iہ.Cˣ!$:WYO Eu9k&gك̑:9:xS}Ƅc #Lto9}U" ngJڎq  ~eiɠMz>Zkx\2u~)˯ҵb+0kGӟjjðD[@aXMxCl9@J/yٻ}gmgЬHH}eW=BuqvHb~I+r"^8(O97-FEWMV٥WdØ$0K0;/rDuKIuJ6*~TW=d`Ex M|=[6M w9/E}:S3fj͵@&o'cѣz7ngl̐&!N$=4[ehtѿ-6%M)VЅK"Chfe"- }ekJ$`Q P5"eHZ*092.!e MdLo⟛x'+%'k m{M<&r栩8摳Ԓ+8~0:ۘ/p jF#r[6kETB=3nn|/pQyyN|TՓa.󻈾UX!VoW ;oH L9 U2 4JWeQpnlfV)dt sj+؊)Ҽ0o$Le'g\7^y'e]ZeUQa*+_η+aFn9ʹe[q[„nrxC,cv[[q)UeuDVVk[^-&{Fڴ>87TgUw#1oUV6hy}| Qq?R ~p< CMn kw"*g9<$q#`A9rDQOG`Wܡ[:C~Nj)8hba.\_6o2W~I0Oj.@6Lf,rI#>Af72Nk5e!| ؉(!ţc{"y]mI[d *"0*j"֭ ā<ј>,#BǺo)Hk͑齮 3=ew̰ x߮Ӝ'ljSm{,٣-417UH@/~M>ЌeX*K۱a& Ms9\*k-U&?nm3kFQ`̹ŠP)o oL?]Eg2Չ1m#X h] 3iDFMX8@/|IPשj&]fA>cQsT2a޲L@~j!EQ03=o8**9NfoBpF&c@̌J8T4{B#K|͂䲏[J@Oc\B8c8PO8D4~{͹u>q5G\ m0t@oF>=~4V3iZְ&FaeJ_T]Bp<2(B5`nƺR )%+}FnnbPV_+B!U^[r,v\`oNKfw٫XT{Jn4QS h2+p OX'-jg^"2SsbVo6O`(xt?C*~=ty2g`@4J*C_ A=@'7+ba+/\*;Ko{=lt6U%Do+څSh /)guU5ŻA؇*c^rQ z2b^|mp &t&3XG8s E,nwlX|h[ *JW7έL@n' i3C>@/u70F ͆w7PKWV/@J7)*O^7=aDs& 6XF.,˔ے=r(ugr춌q)vب@4cm M Wn|N=3o4tfz&:K~WFiۃ"ߐ.="ıCbOp%-R>}z%qFjALtg`\HԖ;ꟓ=Xѡ¡xN8~H%[!+^f2ˀtyGMlj#OTy%rf`>Ñ{)~8/% pO<]~\Y֦/>p]|NŇT9(3 ޥE kS\{'uKT}EJ&|1Ln :;{ 0Q6x|7>!=#+:@&-`Um%O6:m!O֎< >7l+iܢWT]-XXx_g#N|,DX n,]7V*MY;~^zBN;U09 Whdk'"vJY^ޫjy[c?)zcxN1T[4_k_TP*9Fk`{{ n@:e2o8ͼ? ts?Li-I_r(˾Eo-C0a!|X=x\BAf 8O!=Ѩxo@4h .>&Φ9("b! NE`Θɰ,letR*`3m=@sL] XYB,;wa~9>n;m"D>V|Cvq~iD,2 &:8˞{* $Ȼ>G/|!lBc>7_.-?:`v4Ph/7w?`maRJ~* 63<_8bLs8bm,nx[,90#]9 ma$#8o0V3!%U>y2u4TuqBX1jiAKmd^ny`(ĶS5ͻhZŪ͛N8? n|2ӈP/w%JWgji3 .l ǐ3tF-T'imII$(y΍冤!2/Y:ס娺h٨8gKٙCΘ+CdO6b` \?r-GHG5F7} vǽ\ 칙֤fyAPxR~w(bcN Ig~ƅt~/B |gSȭs_U<#9αoy0eڙ]L<^a&\Q5Sp|LiHˋN|wٞw2"qFay?2Qyxj!=ҵ cg] y~Յy y! 3j=WiW>,I{VT3iJX 8&>U5|kH|[rˣbĬ#ZSef ^WX=MaO6ݚ7R)HGF!+xꓨfDVv}r@^ɣdEpuƍ1Ҁ<8p+Z|T!/:PR\5p|PB;VJ8T0yeH =@%Ѭ-31QffxdZt s9^fz{>&Bm4[Qkh0 ^wX{DM'؋!OPmвmF<9rǃRɕ(F\3|\:T$ݔlLHG}:%եA$dw8oI%[t2_ox;!W>nn#rcQx`0}:wC_U:'2Nr3Lbz)gt{4n<:e)F?$)T0WBߧ2ؠ5F/s&7!5Y>r?,UAs\y;̹tpc>J0{y^MA+m϶0Ti"HxUePevyнD9.tkbȍ&&ŀ:Tr>Z4OAC.Wtbŝֻt0* w;ϑ-C;O*hsށU$8?R*0Uڏ2$\+$ :t -ꈺWޣgYq-&O?2ׁݬw(nj1F]5V5ff<+̝&x?p1.%vZh"K7!!>H$agF$8E N3_4X1h $B`TR6!nU[uR`p9%)ӣ/%iـծ(qzkҴmEu 0%ø;_dI>=Ƭ&yR5!7fD2K)ΰc]X ,sě,o|`74NLMێ(./ߚDǬtٕ nw.Jfn)/DF/tPFv@ ~Ogه;Aj`S{0Cs-ưB3ۥo/:DCŊ{FCϺF,t2Mc}HB|fe}fhqp:YU(jP>Tֶb;t.|1DQ>f[ v؊bګB~jh8rxhS->3:zZcNd)9=x.3&gChi#.P߅TiGyT$u}w3qJx&%ڡh(kweq+m"ow98y f0nUx|sd<808q>e1j&Ԭnik>f"j8!c὿&ƒewNYU34`6u ,QA|(zfS6ͬ"cC81H^F\1HROۜmQx GgTbPJ:+Ֆ!@DG^$>u WƦ~aSA#^Q ~Wܒd@(,-nՆ!+G撝uL4}dR:ڂhjJzy)\ z6 -YAK 68@rPtw%:\ZH{ߢ$z%/lEo1r I\[lK`YpxeS&|vYpɺ0@̡ys?)Ml9Cq < ̂"؄צcÞ5{iW8S1ZED~ /^} _oV Mzk8+1:޻ drB|g4k- $$oJl x69> kh\eQL7femԙ1+ sDc[HDt.% Nݜ2`G⛸MIcXj;ە:iP+]%yz:â'Ľ@-)̂dwOq#%FCWӎ8#۶hߧȣ2s`V^~KIMV;M{.(i"JH+q1ΑOE\\RY+x@cv]Fo`  YsВ ()has$#({eXg TV>['5:cj!ft9 "'GxN.HpQZ֩q;ZanU<)ϗpSwΠǿU2&/3EڟUBEz1;12 mR nDd^j,] CYMm'UVzo!$Oj`r0u'%,>di|ifF\X!pe^|IوŰ&ٱ5&EUEφ>f7nR\V,=* ݥ@8ӂa;JIC׬6j&eltDJW+ϴ+Ё~FO *b4:Dw.T6Cr7ZIxoo+)X7MPWl/9xX:5vuYIeP͢D4R $x]Wd,@xOɢ$kb\^eYޭ0U.Jԭiq4 a`v.vO,z)e$ 6n!:{MB]U4@O 0pJqmlUp$P.DW 7i|R2bduߥ!s,&ئ V=0lٶnFE+Uadᒞ'S5b2~s }yFb )5(sJzM+v.1`&B $>Է_m|TP}*RPʱIv4?buO˦V8؟xډ}~e`ӉkjhuM < Oa֒L4g%0VЉc\"0/Q3p#q C@(%D-xU4(*՟Q'vN Owx'LvYsy;0.4gYd Z`L@,[0p8iXnӫ$0Tf'#rLU{DnLl1{ƀbɑcG g z?NC+:Zgw^zq1@D1 W@{şe3ȏth`ԩb6%cͼo뤥&a^j 9]yA9G{W*[ŝB),?OicXDE;Zt$X7LQ`(<41 p{q66=I9܀X'>EP\71C+k+.]n(!Ne/X`M<ǂ^.esMT9)L~4Qxp*v,t/YڨN!]ohەWywadG|V w4d tiFK.Ъ}?6N3'H\y+|hE~ޡ'1̏muQf![F'VsE>ȭ!s"d:Ɨצ\1Ro cB,&M U&x @8'}@CYv֚i'@LSۉ9|k?)NhVpR؁}g>w!e¡6\v'k e3S/nXf!/°۶XfS.[:, 9^<}m_HKMB\4Tf#uPGhCG-=B.=>d>G(ċt6J1$-DcvGU#vz+g ^TO5Л46˶0mh% Gc?\ JS!5Rb`э;k,4.]ɜ?b]t͍hlx>-$ʷ4);ˊuct_0Ӱj xPY$~9/~ofPv:U-OdrX>Q`g_q+ ;N~;P p2GV2F=lw⁝TTzݔb24KzN3OY#5圤8`Ǩ2Ds x1,+\̯_X@?C鯵6U>5=2cF>ا@.)bJ"! x!^8sɏl#{P5XxFiz$X3/?}1]6J I1Hn{g9=TZ#ʕΪw첩/tw`#TO,] ׽)v?F1"rެ-J%; ,o|]@TuB+[8ax1,BN> 6_ȤƖp$_mY$,hu\u}7_f\!o_]Q!Xqdjw^R3E}U1 ¯i A~ TbN~{np>Babqj!;VŁY՚50z{ an<\?‘.{>2̅-rDeO0jr}/T b@hG,.rYD]uc{]׀FJЫko$ JȦKUhg SqyYɎӜӌyCF=˓ct튌 ؁gc7v z{:qj!iX5 &{}H҆Os}J͓-ce!끉|(fRn92 C?4P /,gkgh]Ɨ%ra(Qp[tt) ͗2l1c4"fEZzp As"m| :`j<t /'ʰkIl:pU@-yЇu惸\E?BK=sM8{oZNُ9(?xL )B\L8 zpTtЧ@ tbY*t! .Su$ ¸d#K|0ʐ/[RZmiHn53ybo*[<Ѵ@Om듉MSk lyJ8 Х71}},@8Tj[ W9c"ntآJt}R "Mՠ, \֛33J>rC^4\/qNmUҗ6FtZx7iͮVH2 vY3`kFyZ^M"PYbRMatU`uB/|[ z݄3ȹn~OM0)$R:~dg$4"L EfĦW2!&+[^̐k`H`9x/oN>$l`[GyËg::Hg +1}_r:sE|Y _wUϊJ8L!y~waWM3տԸgb9y; Qc`!k\`W7l5ڰvǃ)x{ u@U_ 9\_h+K=ď񳓐,u3U-Hf+EܴYm}p4-?PT2J6'9?X V)>8qQbiY2JQx>nؠU2ɹ䨳 A˺P ^֧m$/=kGnjbYݜa1G_dyΎ6bU=vGzfz/X?Ȉ$jE$|z%6=soFȬj6;E h1"Z4IriK2Ӻd?_+ɐv t0sr4)K*mSoatwd.%v]8oq)1h(F%)jVDb">1@DžYfY#GD8S]q`pflzp.Čؐ]X%V-0o~@4+heDž F5+1l3r5%_ɢ~(׭D@32giJ8HCFW:O'*\"R2,I)LJsb+zS'{0`Ah[hb\2*^i;F5`v^vI^j BT̻zm}g?ވ2A ,ǎHVK?J {uxvpOu}6 gf^p3S~KM㢕(j&}V.*b@ONz%k^=t^ ;xLn4CTPw*/IQͣ1Ԩٸ"f• t}FmW1@%MtZVXU{ t^Nޱ(* X,s7p%Ȏ4>j ѯ73SMNLzu= /ZaNSQҍeiΰ'ЪO"2}ޛYQ=SF>K.W2psW>Bu[jiGL?$d"{_'l(\B;'K]H\~GF׽:G8+gmZHcI'FsiyTG2NBN:۵l!zO EJo)3 m*X1C"R+DN:k1L+Y>EgMDcyޯBU;F&J _ %A1Dn0j *xz-,M^#M/X}qM9 +p?N(%rtIlaɍmw[S;$"E /nH׫o8FAG9xP۰1Arë-{*!C(Y)_=7Yn6շWD]o +`o9֧Dةb氯;@@+:Ѯ"/hߵ*Ab`kL :hK~6u`(Tyk(WR87v]&<jofz ;e_Ј:J!U&/_}wfD,)q%ISOxoG tR>T*°>ϊ10\Q7HVq42O1nmfgp#b"4b"Om|-CU/i*wӠ .T bnucї8k8jQrɕ H߷IOxg@jh|8E-$-keyX<$Uxj,PggwZknhlϘ1$ͻ,XuэD]/-vHL1_beбݬşz`.'(+Oƛ[Sbl:-(3LTu^5Ym^@*kX*+*7-R'lݪhȚ4^@غhiL"/Kr Ҍ;}Zѽ3g5Jui#]}eyۉBf^ /MkkH(N#4?*m䢥^w\o+FG ވ#&f7 1Ѳ%]':.!,E^!>SCJy`&o+0)[o%_{uyY$ۺW]d,Է9ƻU'ػ/2vM 5W5].W:Ft"fܵ(wrQVH\jc*5-8R^qd׫6(CThq3?A۫! G9IN%r6z +U CƬړiQ,: A@6#ţ6% ܕ[Ylvx=a T{+Դk∆d*ȩÈ 2n}6v-Q:_rvfDH{!,m߶%HefjGig:Rd[ȡDAאF-Hf3'^Fv(0W%l/,Ԯg*TV6kŃ:1y=+:scO(uZ/A} gCkHE Y"JC ;z_3Xv@E`'GREIXl7`4)ǕPK%7:g^A #my@1X|n q! LziLE8"~֣)Fu&^)lDe֏1v["h*7篘ڰߝɜ.\hʟ!O 0 iW?WGLҭNBB27JjN164W@uT Mhg)$j@м7DSʷEyg4cےג._]D_6s[7)nFXHp#p3 ljn% $웮Y+^(L$bE^ _Dx(ͱOTZy3 hVo=߄_ݮAF63uϷȪ6 oP8`Ʈ첦.&CC-V"=I%-~.8P[N>UqsMoT.cۚ 1aiskAg׼b=(6ȉq]>zW0C<%aHOV0ţtrA{^LvWd]+rznچ|T)XRZ홓mb>'lg=*)2wfRZbD,ޛ:WP^KDѤ&(xSl%q cNkT0 e!KN2tK+~rY\~q.x7o+ o[\*cM{qp !9nrSU 0y- <}R&LRkӯ8Dl\7GB.0:iUD @hi 2ב1(m~N4vߢ2FIEgQڞYf7y̰Z~h 됶WoswXj;N* x\'AsR)l|c>ilJFKn v琁+-eMŇ̏N P*4 kY|p)W{9MS?;SYDNx\;|M: gaZ=ҵCVM#oq09!*MŒg;br6A`P;2X7{31=, EPq&+d댓A8ƽ~tLK˪`DYT:w=_X`݇, x~ ̛DකZMTe=5DQe޳->rcF,982]^\\}Mfp%/he ЩHOгưN hYy:'7j# -NHN1C 'A _R~Ei+^ N?aB^kc!\>T/]4EiQb,.L6xF J@2K?V-IYZ>c/燖ՋWfiP J{~?vġ~:Eϲ 7 G4/Q(ḬȗMWMpͻЁZKEaOzbh1xM♔zJfb6Hw>l6mC21#Nc@-"γZNHͼV{}+%sH\.C|>g~nzuQ l-,`mNHH'pɟc0lrpLQ2ń0E $) Wt^/[Y-7LC[:->N m4Ւ+d_Ae&L䌬tNn6BغUrqEWӃos 'zN:Bkai㈌ ,/'G`nz_CD^ݻhLwY.:<}_w ZՏ&4J'hW,O'`q/eM2{Z6ٛh >HH=J:E\UzTE!bgT&<}1K]_.gqZL@+RB! C5oy/m҂94ԟV s«\yTSrX8k "Ȩ+{ష/4##Q֟ۖ:ؿq=H}9ma0l!zt[+B%TEuz`7UgWt.xG+77 +a[1" ـ- *hC>IsXc6efv7*vdgwڣ"%)QƒYy\Dy2z:$Q({WfN&Ҧ:СL Q$C5ܮ ێh@)Y~WSyxXw"SeбWf\kpž&B'm:AWsJ]W1/f ]ؗD086 QWh $P:.RI:U<<'ɏ% XSJ~sV=9"_CKͤ`5dPYcTk`|gnc a_sPSHlkZ[`I8y3 Y!`X[5o9=У?CgB8=(#Nk#A֤]vx ]RmOI݊\s'V:d2~-gɇPdڕ_ K:la "dK2Q}~9?\]BcD+?kj-^^z./*ЁE2:SVʱ*٦nۤ{Rra8.{b]صlebqA\+0 TZ~)ڱ<~_F|Ey)OΊs;߃DA?$q1rP /_R9E>Q?KLtq[񎥓'o5(50*]H2]U7'v<ʗ Or#]fȐO~3%i`N{8k6^fk/WB&Kī|N{G88[K9bNoޥY߿bzͬ s 2sZ闱]@0tCGQ%0P?=#U(Ime;=:[HM:3/GC}u<D 1jKg;xK!>E%/ \̷?mTl9c5ǧ]&X]&rCd˕8T:Y5H hdtW4whXp1Vha#{B1D19 \B&dX贚q/02 3@@ P}}7$Vi1I Wb0^nɵbm@|Ws6:AO HƸ_VSb]|6j2 ganuM#T9E&vgeM"tD- b:dB ki.fx+V81\ҩ k7]IČh:["Z57ۉ)YAШB(~t .,SCͺBW'<]>#D\9 CÀ2]?*CW< mOґ {QV5-(oVg_x;݊!Vs,ʺsì1h7OhJAOq@>(rwW`ia#pv,B/`_Ч)٭rDEiQE?n3_xKUuLe[Mׂ<;.QtdTCs7XGtՎN:U’O:. c+lW;bѩ8,]eыwJ>;9($̮?>W5/jzYtΝ G @)\J6g[G*NߡuhRdγ9`O5 '$`}ݱ[ KRWρ-A@/7rRt{D4ӫ0@ PߣLdznqV:q!ai'\"f[ZZ TrY?܃yc; {FHYVty\CV V8b]1 u Ӕ'(0٠Or_@u1Sφya GaHT l&w|xFyw5B n2"B9bjAYHǐQUVyLk2ayތ46րs9_5|bql\ܢ 5CkK4~('sk&)E<(fOķe{>ΰh5"j:մ_It}5R53c ؑ]iZrAd!oQ%GBD&6GmQ;\:>E;([9yw:Ϗ%9͠KiȝR2n5ѭ Tprbܘ ch4[Wp*8YcaA7g `ϛ ?<&L >%DdkE0ٚ.9eZvW+dA b0 4~d/'%ڤ%;`T%8x_9H6zAw]hPgq)z-1 -{gR?PgcNS/)+MS{.,Vv?,)a4@"Mv-QR͸r0eXLq"+-iN-?ޜIQwoS"ȥ-3:(;4\>CKʎp_AY;Q@'CG7PpBk𨺛n]=o 3'f;nv#L@vɟUbst6|S?"JH6BA?2Bt#10urnk1By-k:7;KM }IP$3 _?g+`'fIS8>Xr;Ph?#NO Y=Ϡefq!0)Xؔ !Cj oFqS:Fe 4$DэG:*"4nK _2g8Mεנ)ja-Es RRɳtf֫@ ҆%1虚Lʄ$݁mtPz1\z ژc@G迸![}?#`W{K? djNrl@ iֻ+=㥧FZEeT6 zUXN{!kRUI.Br40<Hreh6p2y4jo:LkjNxHW ]b@mE@KI"}66+f$xP¤t|[s~-b-17oJ|#f/Pzq+3bwkW6xkDd%_8R.ĉBZ% (&Z+nދpV,NmZrɾb\2'eBm4~epe='ⳄUU Ȼ%!#O8Iֲ7ؗNf_5k Y,i@u6?$0@Aإ Rfi 65"4Ux^ ۚbܕE IBY:=|ro1: ׉@F6>l\'9aƴM+-@&yݫa zШY؇Oc ?$FR-4Y$ K҇ݰm ^P*MUVοHAÁ$zR@!v 5_oД`qK4( ](Ob;q|(jLϳb_d0Ù ҴSC: c4LWFPs}l:F f?AX)xlۨiP4LUjúYrC.%x`L_gMhh+,%+)CKc3h/u%|+^ rkQj0obN XNgi:+CgB'2e)GoBus =,+K')ǟIb¦R)m#`<␹ BCD7Z=3 ]Ɗ;y.<KO\*qfi=ޘp5T0a%hxZyq+4 Ep(хG9Fm Air4A"~=|q&'H V?b=FB`e&Ss@dT*? OK}fյZBWTeȢ`cln)$xSO2\_a|d@p@stJo|G;? erٶ[p Jо1ɑ+b>㞱W|pҙņe&KGVp \~Y@%Ҷ}ڹp+u tVM0-Y;V]'W*޷t#7V1HJF  k=J{שBׇx|qVs#.4#X ɢcDa{_`gk`ڪ]a'gsDߧ jp OW˾@`*^:\.-je8fF;zfLv)AuS)vSanׇ!4L$H .JT3xyR F홅WD<$69(7Ѧ\iXM\ω υ{J/}eDv\u|sStjЧح{Pfn^U m.:FҞU ( ؾ6RaPu5k^cA#q`^)}l-oP܀K]-Юy[nip*iS W&#ZD,+=XjT_2 r :7n@O:tz{g/ @7y^EGMO+kA"DU$Mi'&OfF vPUOQz#- P\sj;Sh/Mڱ;/Q@V9_~x3~ Y&{NPP[hMK k|~5 e '(oa@=f@R L1YIGriZ0lD[E=25Fқx[l}sZ/e}awN[cCK 7ؚYĂLč$7*o,K;AI'2M첈Mwst$^9AH8_ e>T&]t1F_ U͢/^f4HAIgETQ,Dʗ3,7! OYV3E xɫ9g>u㲎x#sV+`ym%:{:{엘GW+we3?)}peF{Aɯ}5>VxI~6+HX|ޖH7N> [@&ng %),L)z8jf w#yrfv)Zvb8(8L"}yM;{{/(s^f71Vf$aUDxJI  GEƧI|TS XONgjJz:fRe1\Hy1d#vrs_,#xDqOs&e+N\-¢$~>Hodnƨ@U.Q_b&BLNy7^snmKF( nSp"0"Jx3ϬY֞Y5aa|I L. mHĶGLJ1 ܣMX.٬렸Y]H (B8 փ^[jR:Jg٥aﯿ#;'8^cRcjN .@A{6(UNEvǙ'K@-{69] KljEۄ|i&{EJf|  ? #ab#~%D[Kk'Sn^PlX3,f Ck5u7ttr>0ܞs&ٞ!PnG,p~N1t ~J F"U߽=S4$J/aWOP(AR֪K|/ *ߓL_ŠkcB!xCwƏDz vFI@hIY $KBk) KC E5nSoO;b/XO/,쾲Dst=7Z\AaM_+fAa$.% C#;zc^ZRL@Zϴcz @,tٻڎd0n7|ğjX5(;{ ;zr_ n=_#O3[Fc=CV='EӚoI*K6iɂ(P38Dzh*$߆PE<$Li kۅw$艽V*#4^j~U7!7+.Ay`=;Y u}2]}J}X&д蘣"o4pIhN֟( 5bk}YTTY Pb. Dg? HƕP7Y5rӷI, >4  F/.86ΓCK7u'02qx5#2kؽ'CٓFmpG55VR4X'K7ȝIX=w524,/~N6IytAT;|# oƣT;v/[mf E)}oI\~Hʄ51 uU EY,M*l+ΜE|SޫsM3`jħj2Ş 7Y!UGOAm4ƴ#Qt᱾/5:0IJ¥$tcV4g T.~Ĩ=kS}zW;>cފwUOwCѴae-|E v 8&.+[k3G.GuxFUA4mrpXkV:ђjg߯2ԽAQ2@6">A;19: 5*UvQu߮)eu. ]d|6:0\IaR)%V1lH-f5/&*n"@!`ӵTdٰj7cY& BS)j-{ 4e@l pL݌*,|&U}`Zx' <ov6o%]NjwkO[)?Zm F!O OH]{1^R:{0 ґ<\r}Zi#8[:ޟZwŦwJ`#M[WVZ-(GTfbbsgho|^̫p;dyBov(T[! ! $K!=zZ1z'phARH$=~um׼Jlٴ>{XenY[Bخv,5 @ZƧc}|KZhqmdMGh\uA/"nJ+-$G|2+:@l EG2]h "@\t%v#sh6\r4)RY *M,Ar|S-EV 4^.RU [{PMVu8!4fJN.M],vA%qq3c!s(C+CJōjn&xe-[G8ς ,wտɺ {'BU+ ձ 3iTJ#m͈iOXI1'{ș'Ռ/yoؖ_t 3XMD4z<\Pr %tYM$18:.RB_6fc|^_uHG?-*:ZV=3ϻ q8oN pj`ߊ@o& D.r'/ o,}@|/ cy!9djGaOߋmQiEVut@I;$ 3b:x˵u~ SJm.{3OE NU= \wK-h[84 q>i|Q 2{T(|{mL5˦3Dm*MG3z;ۅ-a͐O!6+2Wl-C"0Ena"P2}`G6a;/g q rm-zh" v[\J1 ȤBf*wEwpt:MDjLedj2GOiK)+N_4ϨZ% X\0# `}1Y| ^B |05E:(eNkn޻:i1y0!{w'ӰbRdFOspU%}@3,7V]3*L$ ΊXSXO:j&VMpQf f,?PviBGRo;K QmOl<%'1G^?Q>;ј Э0|4c-2ئ8C ,Sb)nrNi<mWbn0r~ȂQQ*T o?&F.z 4KHwTgJؽ^W1;m7eTP BRVޘjEK92rl}zPMB@akWR_ ϠMj8t1԰[^A}-*8'K$̵P^s>b͋&~[x-As+Wa} >r9\|. j^J.{;.#~ʥOq&6''C Sr#Fg\4t|0oq5e=v,<"`nↃÚ͢w&}e뗖ͪCmFg~V P?! ]vrq7_ZIG@mmh`5|̈́Syvy$\1"'s/7`GʀnRyZ @;w6&fk;{wηx 8F{ nހ[OgP!T@rkШ\˥g"&/{(\II[N\u薳ZTQNX7(j (z~/DgpJJHmelȼ'_7u aUX?Cz!p")eh`l;Md ?88ں;NɫӀ* 8!@̜'^ 9}#05u t:KO|4-&b͍M^j##10 %yej6"GjRm/%,6(  C?@7ǀ?B Ŏ^JoA߫`FDw`s(Dtx2]|tp|*)1d"TEV2~>7Iu1ci:wɻKʩNM){miLvW陞+ (~]e^:q;7V5ҏ3B}]f i !mQPXZCk._#]X{ۄ,bct_{K/.Zz|VaeՃyX>1a#>!(FK4Dz}¼/pTJ=#`QPa1VUCc@_6hN:.O!Q ̛VHs^>u'N&PDr:3mUg:9Uבaj6 cM 0uq$%@O:M؋O\k?lF<,Lɰ7qnw1ͭico(yA{=C5%y' M9u *];H_Q"XOG3?zv^U Ԣһ4|Ok~(!lHyPXvۖ- ^xSISt/o-t7Ӌu`#Ly-8Ў.Fɲk:)Gz߸왱}<Pc+͏ 8Qɹ"ۯJ7cH?k#eP< ٴGCnLUmwJU2|\WxΩui 7a$^]/ 2ŢPu QJd|T_բ =^N:D>Fhۘqmuۋ+D ^\lޤxLyэN?[6"^mJL,Xt›NVVAjU5^圴kbYg\'ԽZ} AgQD AڲO}?&1M4EjqlWd{ˮ۽80StH QM "|kPϡ!2yxx./H[WM]VV/$&L&]1'Nv]aJk}Lk5?vvP^6+rҘ-k{Zi0YE&ԽMB)BJMA(gs}q_ 0)muhY_tz0+sOԜ@>&C)4+;Jw#±+zm"~ڣ]qMʰ!Cx ߬d&[ϜӥCްQX%]T;!D24 +HV܅L4!;^}]Qρg5jYPf,em o(m122ku˖ 6ƒMX4}2)Np"2ey _/ y^Ft.R5'WjLyI\σl/(pb,Oa9vTb͍ŭbBA=3נV|f-erR?&1=k {&)rbfqueXYў4%ռ)hs7{zwW"?}cɨwGos:VD!aˌirͲ(m\c'?ӌӵ6|h @C2:[2QV)zA>QV>$''u n>6>O l w(O+n1$-5Gsl]\T">[p&|h%5bWKUu5=O"B1{(eWuɈAbK]7Yho'(~u2֘p\wtM';e%̩c{dLbmqNACۈ qK{a [=gXe»NKRz@oE9$p6q 85g"&1jMVZV.NJ9np:N,@VOzI A"ЋOoRo W䆐rԬόQn<R_z̐Ť5*~M&\CVt]U$+g*Q[ axQ*h~[ șnkڌ2>Bs|*9#@;Y?oX** AyT0>j LvK>*+}6X@lL¼/\s>X7-C1I$zP>K)h3!$ cS ?A8'0~mN8)|^Ђr\DERMK ۦ!M:JlOȇN~榋k?xݔD'f\JW:RscR)mOXD_=gZ#9/KMJli7s7"ɜՠxY$e:$$z l!/c4Wwe*\tBkr!LZ^ybA i3hآad8 mTF@o-~1ZNH0xR&ˣ9 a w iu  Yyچ\|lz' ^@ܘ( Է^Z([cv:,Np!T?QX5KmyQ+B,V^Ǫ٘ٗG k zM0?8Pzx #iLm;۩O"ɭ0BˎdT]rhcsHoFD ׮&i@uS$V==ׅ}xTTi(mq]5sӕrTyk7яqWx^yaj6ѵV,w4(v6gabjk|xmT#u+ H*"z)QG}͕y+%\vgzYl⽅M.Wo ʺ 4gL~*9_ -ẼйOٸ%8֪;wvZ=.%ZTO1RElW6ޟ<ׄ;p0\#n6rK@8mo= .1(%ܖ7e[>CO81ckbUU0x-QV~@L0 l c5P!,~9*> +lXI|TX>uSbm[zC_ՁD9fm-_" J WGBb6#0896>_=ѧ"F gZY6I vK./k,% 2a~:"S AjR{]2MaZa];;DŽ2OF&q_׏RƸ f^B74Cj}{"iEbhIjR(`ar y/U@Q QpO=RZV~|a ӳ3 hS^O +[p9CYPGΓjEeg >#iPHhP+Bu{EB_I'g&07tA>(ۮBgLz_Ox7Yd[mx[ݝ:/΃إ>UvҕhRmGpg^)ryΓP 5|E9,1lĒ~(*R _Q6H w^sNjܬ$'f1c׷*IV!UfWiW@ݓ#-ix-[O9D^9zͳL>qK0:ܛfIΆ1iǧ}^N`hkr#XWGJm/X:'ױ^]i%,Dj$Jn }緲8iaID',GOh 4>43_ ** @_{׿[ȗR °")qCPS4}ʉsRH#O',vV㧉Ǔ0_AЀu3LHa ?gՂ%IXul\Nq)Ҵ AċD< p:%H9|lk6wQK2q[8_s@ʩSN?8kS lުsзCN:M9ܔsS3 = r†̿J5 ASzhk$Sܹ,ϥÜ_߿b(S SV-Ga_;bsJrNj5I2?Cdۀґ=G>8gQ+9=v+yET'$%vR69 mD%bVViD?d?{7T:J'>m mQ Gn: E˸zelWFzo?XTu5ԞǏ0@*]dm>`H,_{b3cArE1~7u栁N_?6p[Pk߰T/^dm7N,P]8LTϋOM ,:ItN,"o"`8+G1wqbhr)Q9HV eJR,@UK>e%$~V1U4GN5{'ZxxY$i +-<)fyA|w:0_ Ϙ|T9s;Cuy8'*(-)2pxY''+gAluken.y t?^'eqZd j2&Lrٟo]O2zJC.xe7a%MUؿ:#2Xp)bWFtG'#J.2k[x Ό-qpOÎ)ru\YOe%ZOp}ӎtb4>e;/`&|rQ>uJs plI]̤z?#ʃRIW| [ Dj}e7z7|YM0M2$b֓R]a|v dt=6 %K oSt/m3o۟R)o.yA_n8iaɺ%ȷTZQ{ qhGVCT#OeMt羜.w5:oxTЯ,FQb+6V[xC9 -.ym@ 21:GE8=_r.W$:] cn2lKG"a*sD4*oCQBnެ(]xJx[_#73nC%WU) %(jpt٧bAհRY| NJ=" KR=DozFWq=e*?%hEנ؃zgXY'cmC,;l>\@o'̓*gK2 @aw|Q# d}ϖŝ0YflpY>'k7C*Pv=i]",P/kJ~EQkxmLdʣ{f04:ؼ{tsuJ|q0f!26]IyĤmtUE|/0Iў^P- %tZdj9{dHa8^EPPk+ď3璸A8nbO2x)Ct^Jc~|GZMoi-0;;>B޿#+xxqv5uZTPa~kܓX='2p֪U>HK#"C4s&y8idsBE_kypi4iV>Uc TE!s?m7770dŪM=A;naZT HRU/p_1N6WZ5~l(5V@/:jyϟj9X=^rIEȗ^-<0jmoO//QX4s<wNX* /@R147\hzWAP]7Q1XF{gm&%W8gR\F$NJkgcW:O>7<01 e?Fqfl$\IɋX[ٟf`.MH9CjM{>!cMo '%I4q6m} cjx)H9(!iaD Z:D3eKm@ ݳ,kT1j~h32UE/C:~)(ƵikPdw&ɷXPdzXƗS+9ZuŔ%u]Y7`aϐp X%Wz%'&(^+۔rkT6.цR+lқ2$ %FXKĥ^ֳ 1[nvjU#ŻayZ=;.AcoT% 7(gpgARhmL|uB6QFf*_'~;|8A51^lEZP.m6 6 zf}O(7gK(zevrbLw(Y?+1y+IVMq 5um&qئʳwdts"#DN A_Q)>1Y$If}dz\hxrBjq993Fl]Bz'+*Zœ8kA-%jEc3EakK,P؄1ާ^OuޥW-68P\OrN0p guG¶dQÚJ.H³z': -)roG,5?I\w=mӤh-?ߗmЍh x1g52|`x} 㨧ɑL˻0$YM֐o#'7֐x0BLjjtv+*.}4QFRAgo۬c֖.9QmIۀBo(txyk`gnecW׍(0/+doT&ݺsU\5mHn?L*)&ieuSXpu";úYoq04T{+;k6 8q!ӵ:L5J<;,9:b6e4Kn6%0v,f 8*/Jǐ 'd1G4L8!^y92 5q]]Su1jDR=Fv+WT$LT7q`+*a.`yn?uU}ee Z0f?G&a6nTaKDAȁl5Dw_CW"c+KA-!P>PFmܶfق=\I|VE!nTVkqd_Hqx։M(,A:ufDWkkhxF3tssZ^J?.ֽ`ji>7) m|;?:>ф9 JO~%DJ"c;G&2^=W_O;ӜH-@7a١8Z gRk’0|B_YbtӘ e{U@W_95**!> u"KUNI|*6|Hsl0Y~#tuQK)3ƖDQ[8,7ĬOEuc|`敖Z# b&ԡ JwҦA5P@(K^/W-@0f u-Q(SK\=#7HUa]4*f`[Y AB7zMǏ~Jsã5u|H^Le 3A9ܗSHZ2 ЬMz;˂6>Y Ky9JwSVqt{!!ۢAQdٕ`F$RAF>R]$YS#SGq|us?%2 Kf\V^Q\0giJZ8r1^*2 ;di֩cDV *=0>RxjQE-gg5Y?v-[RnN(E`}9F8 EھbTgT#e.-YԱ}獢b:hvC9546km4R[f7Bҙ|GXVo<f"%ԙaW/K,ڳH"cn\}$J.ŠASm \u?S_~/P_I_%l*heC_"_W;Vxg =|ձzpvON+',$,&y}q".^v½(%:# IAPKI.ۣR4??@ ˡÈLqgwJ`0gKhi[n%sbVhcWN)+?QXL!<-7tq]E@v@jWNkfM"8/z ]3K ǚjN\N.%3*G,5I@6ew+xQpe@8BHr󡤴4X@l(Wgi-9a>*]f?c;{rC%5&#6aiZU3[{CSSFYZP)n  m-J{1?ԧh <w 7^hk00=%-ʉP)f+]8ۊk*sL2""EgHRʤgݖ,1N%֤*S2p'MCW- ;i]/u2!CaLtH +LBrϿ)vZhYdM AYxCj[q'zئ>8ȤyLX%zF"]k `\X#Ź+7Jd=D0.:Cm N/6cVaV-Ug¦&R?8L;JD6zT`?C%N*`x.1<@`qGfUXr- 5}9QmtkvCagW 8\9I[Jo@ y03%;zT؜T򴘋ckGwvieS~:Ri*gjY=5gqgnAΕr&^i;T>8Q8AEJM`۱cҺ (rP;9 a_Ef{qy_Z=L nd?O*xӉvm': x:a\Iz> +*d}bQr,ިcЏPQp cH?yש>T;r2OMS/!0,@!cc=T:L^NZezKPgt> K2 5;#Gv"!q;Ӛ s<T ,(ȅ_羢t!`{DBpe{C~ɐoVi ZV%c%Q)ߓ{RLXȞyL<̬~[WYs̔@%hn29 CKQhOJF.G{z! WME񏍇C 8ncLהxRzErk)^m c0X@~u)r@?#|Y.H/O% a\TU,g,`)͉5ncf?qVEQ-VOŬLh_13~9 W5,e,j9Sc->*vpeΘ[ 8\/ *,/ &A`-yt>t%PDŸovĘypk8T:/@푓J>vixNJ' @A Lnݖľ&Vr^r I]yIWZ.T=,P΀K$~d:(9Q6XtQ}v;>1Z;@)fa%r0.-Xc`aFDbB85?4 P^|Y~C;]gk=4$=4D-"ﶞcPDI?PA_}ڔT{N+FH^跿wa2|eUb_-x ~`t'WqQZ€@_IB&)ro$:gx O1tя~%z/AhΞMѸzdB`rR3Xn %V(aErM1I2iwO]p&(ƟnB4Rϯ<˿qa=Qn/ԁ|9 dXZZD)*nGRj#98IB0 }ZTa_trJΙ]ow؏?z`:=DH7XS)I;$&lx Am@EN͇t#3 a?@~6?WǓl`DD27sCE[EB ^bX͸0i=HXƔ :KCZhXTP_%s7T> Q-յǸу}6TeT g-@i< 䦛1:bp P|[e2;ߑYa[&F7́ƧJ];i,"a)d zjA?GI}=C9H8% &]SG3hẆdcΎDmC[8\4;ExaQ<ɿ^кI8Ci1BrCăG=xўAJ}Pt ڿ߄xd '^EX$jn|H끊]w}nId|url'Ȏ6^*RneGMZL]ڰ(\#Lxq3*Zn O p=l\lq!МuBgԘ$BQu8"Ju!ѭj䜑I#1T?Oiڞj<F@x_ 2|xL5\~;^)-@5[MCM*ڑ@SSnO|$~ e4T5&@k HFYwAnp|?YH[P)F[?zAT=IGUI颓QDտX~. c;!w7Wk5Oc^+U5Th ="wAKٶr|6zʹ DGXx|AanzWfSg̣&++ D2;7e4'K2Ƈhv9Ȼ}&-Z5)>PӟqѰظlkىA8xT8s*C4[j㽅QBݾ׿S/*Zvp?5pH 2{zsa0]fgՃA]S:Q,׌s߲v7`0hG)KyXhj.AX(H8NMC@*c!=w6r*9}hhn`)2\>c3(~hx|0FQUп_GJ 3E o2ƥ57P֌@d jP]fUB:0$ӗ=`d1d`=E`%WP#A?} y˒t*&{ŭ"<2O|f(AE(O2ө>$ߜ\&d/T<GN7WɺgVYO~[@i}Om:!eVqsQ<|cx3w/;@\1A&Wy 1>tg~t}=K%1 %^T2X"T%_N!?)K^Q={:N\'1 e[xztbi6p*#y^Kkqh^<վ4%.7HTūcv&wUM:QOrw˪=*7RUNT7zVݥY)a[r质'k.W?_/8GL5u5rEh6$ Y;wVq:+LLh+:$LݔaՁ`o1 'u~XҖtjA+@幾$>:zH/+PD(v I&62hfr"K2LkM9JxmAHjPa:@@,J"%0m\C Hڊ.qk&8vMqx\cA@Re'i+I_;R`KNPan0M3;?2AΎῸ/' $\.#lS$I显cbD4B[E !Bua{c_1hmضՙʽ|噢IEd(m*R$=P:D(&JHLy.!ҪE:W;``Իئq3?f">cr0p]e { ֩;sxh|9{>Q,;ΈTt݁<?YyFuQ?IMuBc/:`!l{t E`ye2cYG|lfҕ9χɾb -xЍhH >9v_KT4pǽ^Á"cI^Jb!N"N7QBx7JD*6^cט-=֕c|-×4YH˳P~(+>K|(Ôd0wyrKz@'V#U˲fE׎9S`:)˒,Tvnx<#͠9<\a,٩LFimZwe]O[}jy ѕo8͞5| :Qc; mܐ']6IVz ^R@zCYIx㰼8ْ%EBm[n&o{ 5Hah(;;/f-}J D!.A*<RJ]wOod$&{cDV=>]k$owGw\_/AK`q:ޱhe[%$҅o0wYb$>_LkLV(bd8JLE;.{G!ռޣS*p[2ےhA ӴAta> ;\ٶ )%eq(ثz喻pJ85 x jJ{;N[9 B<ޡ*/1ۋ/;ApgᐄdMnRJx$UNzz2i_bc0Jfc|אPK>sQ2` |=LɝqmЉlWDģƫC1o.ʼnhK0fc7i"뾇Pn9qp .X2tޘ:Vi3Nb lIy _G|Ah.R ۔_뛽 DtgP@ܾ.30wPFPRT RzȼO:qAr_)U$@iɑ7({t0G[C }Ewy iSW$!9EmWS:F$dT(!ri@*F`2;YjpaY|ϋ|F|"c&TVAXL訪DZj`WZٌ􈱯Bh%tolN8r`쏩YZDOl;f+nT -!; Ia'U$Qnlw M#Ur. q׫.  x5;p{, Qc8znEBO ̝+ߝ5p* {t;6v0uٽo,}Ex S@o_^L/WhRn"h-R@*_cC[J=r>QvP0iVFiB54$TI: Ϭf.w2^c(u]U yuhFyj\3~JYlYf[-ס¿l9#i&ylt9B+!Wqyi>(.oah^@,#հ]?5.) w-ꔱVPY}LB0 *:hLsHy3+P f)i8Y3RoDJ{Cr=9ʍw#JrR$5@\R^OƽJ>*܂w4uX1RC0ŮK7H4 XL^ےkO ڽ*dŢO('`wu.GEՖoPgԿ'&4|y,h=<"*-=gR,(c{<ЀVȒ]8?: nGa4()jHRl> ԣ&h9yAuMd#V //`+Uy2'-Ze@}  %Cƚ)(.Bz[_@ÍgkDzUZaT Q(*w^+RB7?F_EN4U-D{g8wjgH<zd45|t*ɥ.;i@wC#`7Eq5Yڤxe_l5- {Ak^6Ă\\KNOCjPɢpGbJw)XtN|oR#(ȾM~NsCyv I6#yG!$qZ0fxi yڻ#dK_qSU9^GXKzg]r)] vj>a)>j\F;lТ0gߵ]eZWĥл?UuBx]#J/s&s0 zTZ D0#E}(Sӛ=&l~IS]Ua-Q8I4_i \EUkcǰC#%٨qf`DL%p exTj4|ˊ=;tʾ<=zMZf i̤yrem]ΤTG k.t]##ٍ?T27 e/L1~,f1Qo$?8"xi+U*opk^ie2AZ^dfLS&*5=#n,tkT,ɀljV+2Iò2^òby@ɸ-3FyI` A&D V>ynOT5 tyC Sq\''LyU{? ?;x{45oNϟ! w\n}b;xd7!1}Upxۼp J_PJ4_ cL^d!2%k( EO䙩kސ9\ȫPX `ŠӯZR#Dn4?7C&|vuGt\%MPfQ೧)q*c?u":iudHX% ޜ>pގ]J?2`ڢ"_:բw| ƷC#:r{;)^h݈~rۃȕö'FhNMٌ9UXEi飅g퓋Q:_\0$^o75 ׫p^P(#=Io4+IȰ ɴ!xI7$$Jl.vz-;e2?@= 깧ʚp3wr a_m9{s ŏ2FM|MH۩?!+'!l fVz"jd/,r?Xd4_Y_d "p'HJ$ఋ+8X9M^( e9.2šVP(_Wʼn d1e+hN2j@-L^'J1Q&j \{m\&,v]H2:Xja8O;MiWB%`, TnfqSpg$P|[ƝԞT nCIpin8xٿ8\&VE8u$ lcMN0K;Fʺ7R!4wvBOa,]-qr8*"BꏹB13ٝ,C2Vax`WGJIԢ+J?Dևx; % Y9mTԀ Y]mE9,Hܛ(_9!,wIc4ܒɚFKs&H4+ f/i=LWps\kX3p3.R<:K:\1*||fE:# ЭP+C]/#ӭ}dэCbAJG X2bgoC\y%gn3r[K?NJbZxˁLī5:4I.L“#wK)9 y`-C8/t.΂JShґ(1y+;m4ʾ4'$큁s ޡԆ 7?9tVH+,+!s } Pvj΀ ` fw(,9GꜨ$8olDυ7?,,x{ @̖"SϺ!x * GmHԸefe:H)GtC-Tt[iπB:\L}edj$dέZ7ER|!c$ ZYTF-+JiC͇;ŲG MKUM=^d&cpks"sEyWB+ a)dv87: MU#U}e*=]CL `7荜L5njGq_,,+|4vEQ,?B r͔<2||h9)82 ۵<"ʰKz.y>¡Ou,$,?x;!ĄD(UA"Dnu~#*fDAQcf^ÒhY9LcȄ  aIhI$୳9X ^H")^Ō[{9Hfi&olV9ДwvcuW\: G+3u.0rdm_q~H+cw}kc_c0 ֠n TZЙ-Wf̓ {n`T s饙IX^@] Ch2 q%3b+=N˾2"rYN*U4':2!TV5z!+(q#ego\47]|pFy.Sfbv"T(fE:]HAe}o$>Wc^%7׏%&oRk B@|6 ọ}SS5n,,Jk%1)>3GFExHB*Bۄ_[r=[rϛr(@?em8U>'wZqP/y]b兟O8fI{#"" |$#cڃ=CB(_CN M߳Yֆ|x҂-A݅'ydc [a*{ #|^xhHRmoe4v? ֹ) ǘW A;+:ka4{pwXws~Y /dP;<7=HԠH6W!9 S!DF㴙:Hchkf33gztB:gJ8sA$gnţM9!RNg78=7>ҎtvؐEPJqG#4H4bz>5 5D1S2sh֍]FF b9$DOr(^ueϳ%_HV@ *s(8hz1>/AHvgEYA¤%fnE}&7 ;E;7 Hԧ!Y$*fT*t]$7v* gӐ_~ +: YHSB83@Ty8|@t%\n9Nx4o @4ëpԋW}"!YX,`NLݻ=3'd]0YFqIOyH"m_)hy8k? AXv`a[^dw&-võMخQZY[ ҭ/C.~Z{${|(v2;j2&.X-8 ٙ l}&8[341{qOS/?]74DMuba`'|B3&&Y0*X^lCuNoE* B/D;=?ȩyNG-#? ;A AG>֦ EP+MNvJڡ$N^Zr0ˇIz(]+^g>ߔ?3RpsL9#Ąla .4׆ci^20cfNh\{R;i;%s4qsx,EF^ \5^PkLf桔P=ZeuV V3m(NJk'ƧPhD(ى\E oSOP^ #cQG uX CP^^#*&?p)R4=3 r1iArtmE ө!i $cM3|g_Yp4.%r l~YcqvJ[(Lrxo Ǡ[Pe{.^G'O ]F?3^R#2Λ-8j ʈJ'/+ rYBje u1-V = 4O!L+.PIfkk4-=[ 7c6'ו9ašMrx;n+lUY %'!ӔIo8.ėɡ7"9Gj~df#9? <|Ai%7è2 O9j:bB, w^ UvO-wcbP%9yyp(i~nK!?BKE@ k:F%AkYF^< CKl`[2j3b?/N*@J#4P8pYxΡ 5Uߕ-Ӽ/ {6?:7JtZy&]?G;Vc-"|qxմ_37itRaHU!M^,`>,Ɖ<zEn|YY3z8] uoY=԰cʕ1z6+Qߓր_'⤦g78$L;~0 W)>%,=_SIP &-k. M&A ='xWgiTI7А \P5pvhrS}c~? u- sut>28(BU؈0P-VeӞC+jm5ngB! öUVc|wj:2RwDd(K@v%=|!6waŜ35p+v4y (26-ʭA^["PlQicSVlIa%etLCH_ga;:rtߐZx:Ά)7?o8D8?ÌF} :n$pw_xNk6dBYDhx %I|[ !ޘ4P _\2;;v%2(+) x޿'䟂ȇS G\%h;uw,LhvD8䖌0`-&FL[Ⱥܖd2$D9UZnRO15 btmXӈ1uci:ȼ %/X.%O-1v v(SkPEVKj]ػUsׄ91(#|:5A!N_WBzm٣b/-dg|;XHU˾&8Fh\7`@iUSxv/"yݠVעuvFƛ"ȣ:˥7rtoK#xy-a,:JG-(,hҀ̵ xW q /a`S,5ϊc@ Eq#u@U *WC0<нZvR$e&{'`Ή򭴿,,-ᲖUY\4*ɡHGl7mKexfYJa[&63D "Ip{Zܲ'6e[&b"[ &ob<\!;HWdߪ*-MqMUVhQ)Kf8M=f\P7f@@M%{AHg8 r#_l#?W}Ȧpr" Ml*zpc)x5y8sy,fB'GryYW_~6Y^fujfBb4sJ#!$}u_^C3LaLc/.Tq@",YS*DZ'||ļBԙߞl[wO:Fr(f=dhNSu+i4,+ ٤ 9'B8|(_A ?(-Ju |/}wbjPf }" IʥՎO ,2H [b) 6j;:C{y!bȦl]3.坥4Z@ I.i/k%2l1@"3{|FIKY@PǣWjAYZW]֓g*43:@AubE$̀=)2mK瓡;U+К߄9D{Nw:Hf%Z c|IX%5TkCɬ0N`J9M(c6lTы[.aq/2pr 9IF~2k;e^WhqYZ!V;9߶U qoRj~k(cخ~$ b:hE{+`DuSfaa t; ,*yiaJ0:Ơ.6K8Lvz|i*q!ЧLB ~td5j*v(# X-zRH@ie__A ~NhcKlGnp44vn+|S^~YEά1^3"Џs-ͭ$}?$, έJtC+ϐ!fkJp3(x`~kO {ο32Q&,K@>,<rgb6~T[Gx󤌄NT)Yv]V'gB+:[Iu4`\k-ǢY7\H /i`nbfkM>$|>zo!y/_*g;.H@\BQ"Cr[x)E}<1]ER#N&l  q%r'o0SSf{NcM&Z_V._vwMH=0vVGah{Wg[m sϱ?DaDoڒ`X(a -o{@z%cL(hApL};"?U8ҨJ*v\KTCX 6*sw`05CLuC?܅:I 3`B )Naƈ^:;|蓁 ^--p2OHlL ͱG!ƉF usFq$81\}n3#AbX|k/b,R܏HK|Svx:9ZdJɏÌH@Ĝ6|dzifD]0Yk+H䠎|&[DnGCbGI]ۨ3ː"ǷmUTqr7W s3/Iij,X 7^7]Nӷ;ˮT~moC"@;.9AUM=d&wQ+﷜Bڵxbc_l'U"r Ƽ/' %P - c ݥ 7)b@vLF" D|DzGNqLs2\6c]0]$_oa._69t\e40x6 gDKM4ZWR{0Igz=#Դ`dNм]]ڌ45ڱ[R2q{f.?ԉqz 2.":k:p.fG$}jQӗ (BQ0@,UqMuI Mv|ŊAdEF?!m+s't:>tx39)^:IhSۖckR1J_EX j@*~hQe?Q'\vfFM) +ӄn;|*~;N:Tb-gg`;y{͹0TBE=Anv ỹh# ѝB<I/zuۖlNN ܬOZ]ЊHrhfD"8DW:Hu5EA%Ρ=F%"X^s:qhɌR͊v#Nڝ)+:KtdlW,K^:qο5=3ڭDvي&A 7^8TڽR`4lW6<4yaw~pι=!ZJ8nGѩgҋD=_jo薛;VCb.Ɨ=7[BS1A}|A=Ɛ ~UÛֆIG^m"l6%57n1#gXqD9WFV ]Ўʘc3 1*Z,'dSBFqK+.^ kr͢dفXk QL'ߧE'!lJ]B1qiwoU|my,ky6N}˭?H+rVӥθh]~+r~"DD>3rxz 3#;F2b|,Ϲr4~q"yxL'm$M-Um]fXDq+-XȊ9ԌnF-r. \8'8rcBz1뵚 C4uق\ PP cOKw>SRזXU6ߗG<RU9q9364tpї{X+ۧ x.3(0p#.r˟p '!/- 'bvi ^Y ;)WWsǔ?A(Rjwyf4B0=ސthL\49V oIDSȢ[s07C̿W?l)ψ:|jE^E} q)-X‹Kr::Kj_@45|Hg/ =J:˱l7QY"6tkprzJ?ײ]ޯS;Q_oU9Dv' _rLE"ebdkM&DFz;wnc}u*h/᥍F ! {}>U.;ۿNn߅ ;6Q.ڹ MX[z]M%Ƹ7I4sxT(1vZ6'pAE6-T-Q}YִWQ3If|0n6q6HnEԂ~8 LGl$rv`;+%q~93v[9UU|5oTb:7 d4pL;,9F"鱺Ф.G HafX/u+Ti"h 4S{ă鎈 &q[20Ɏm=R*fC"< b~uTW!:Ւg!h.GXfO#B҇Zu;ӏ :xi?qaڗdxQصu 9ߨ N Tc  Vd*3! *PQ q"w HhOvAnkL:IjTK#v[!;qޙg@ \JO յݫ wE3uB4zsC}E^IYH^T'ju4AG!AQvuP\zd3^uK&Ζ铿tIj/΄C|0OoO\+mt/]__pp_LʕrwpE0}@rCJЇ<((ku2@ ~ں;߁?9 OQ2:3T;zzky8~TrG35:b=m" fE!*.ߦ-#K}Rv`LsH~)} Hx~t*)sc/3w䁋k)t"/z&~Hk}lg/`u `J0H1[zrn $Á<*ĺfdFZ>NqCGfdvr82 SQkT iQ0$D$Ŵ,8I=[F==DQ^ ^ />lgZ[{jV<}>;aqCx +ozœm_x|YҴ8aHܶ %>My1o5UvP.e S /ƀj 'O8)M :Wq[}T6UJn1i\\`4]>lRql(""ki:HcZٍQ~sL:5ϲ0p{H s\re*\`tAA)|3/+1̕t'@yJ< rv : Z\SB8786_~&œ\0hY4B+8[/ʘDØ%>&>9y0T@+irhmWǴm*@@M/F ZoU:a#egZ &!(G&U q -JzȜ?5F$k 4W"ޠ1(%rɼE/Ri'qwX1=`t v^OݖO'؝F8Ϣttَ:?vj\ߘer$.7 }Lg.u 7N};w\wq=P5W=&1֢xƪr8\FICp̈?J *vB0j_#$r\+zL.uMQLLGdV a#"n0խ.`M=⼠=MRFGqJVt Jc+og>ZeZ}`& !_pRFf@ozHtU6ю!v>$tuF0u5y5Z*9Ŭ2ݠꛭ BR(%ǭ8]ěGwmn{w\n3Pt4gYj zo m` $%8э0qR$%(leG._$(gRZ miʽ@ρ҈MSb(:w2[SCΰمyZ]$a\|V XZ 3aovL< "M1jלD0̼՜ 6W~jTZ .̩w~03[dn2_otb'Nv:OO:xx}*;kު;$Js`ihOk~GHGGW+e'|/-jV*~MDߦae-7Ӟ"',7A//^ե߅f#O_mM#hQ"VmRziT4HD[ZE9<3>nCIhGs.'#DT̓:B-JS#;2@R251Vה˼.FA$&#tբFU3('r2\@i_8DzQpfV]L+K s]aDG}Z߰2#Pb&8E ="`mݎPVHcEvG=?#1 a!|컛%sxJ wi8h+OȢA@zm KL%̭^Z(ڬ%%ߖց/ǗֲlK Aja. -D&ԜDJ'Tn,|>_xUd%A_]8FӮ0V$eW4hZ&Ԇ8{ɩh%d~ZqQjx r\sZx-د +~kl|Re`/xonp;/$dy+m Kk6#^N^;[Yja83d-`7 Wܱk  u#ghq{#]=MIRWq-O&n2VY e:'F^ȠcewAUoSWںxtu Awn]?;ow{ g"7#ޯǤEqcy(qUGɞ# c^TF/`->kfte#-LFZ3"4,X/> |S[#nd%( ){gJ<`S%C`ރ6̻S#-d&zxJ? Խ]rHP:hyLXMl3E9uxE.ܓhJtubif޻.W 4"$!P3>%yzTT3O%|czjdV &1w;O©6V̙/U@ UQWATI˽KٳAWB'EQ,14 ߵ/ QxnR[!h|S `.Xo)EZ\Wݔ8ϵKCK꒷4Qh}CAt6+!1O(YHb@Z+3ع.\TZ|e( dsJQ3dmUoms0p\'b8p;uc( ö8{sڹKLhb}iQgFMýɕۥu ޿B^+ljӫf4%л`"{#KpaA3tSϾ/{'[#;t_ߺ֌h@AHCgmQk2=8Ё v]Lv"i!Խ۶.Ƶl 8(,y艐<A3 {w(! YKsq*kc^gt.P ޜT)Qlir [\2bC/X"LGhJ<[F޾E逧  -ckG:uI&eoy k|0⥯xqtIvJMB 7ZpJuR-/V%lq|Ҧ TVT?Em:$h:٣N1?ԩ4wųZ N}U"}?[= \BqP[2F5N2&d#7,@'rns?JhQJCGMS-,k>&ߋvEFt{s1 N +ݾ2/IedgSZg+wp F*<+FE]y4N[ 5pإ2)Y+dY s""sty8ZFh l vnxP}u$LL@ Ө+]W` UEU}lHe3ZJnO`c;~Bp/)X hɸAǛ RYlNL"q$~4$BfL2jU7%k]6Ylo "PNK5sӨ-[*af@(ݬE#RJtbb |eY ,J3NvcH ™Bn;>A6"ҜO-ǝa"Dו/9()5}L &<;XNf0HX hI;og;# 3i4aPq't,4Lh!TuA!B)`7Ιlz*a[M%'UiɐJ4է+@.b71-? .2 ȇF 5_E0,Ii-5dSc{XI34}~Bc֥='I \׶Lf3JSVYNND7 OjoiYU1 y4>=B[r:5'Ɩ˴7 )!{lƢ"Y񚙑ڐKž+A并Cg޾9< X^n3cq $+Iv{F/%{m (; Ph2 3̭}9+%Z!Ь/ψW?l<4tak9![VPP Drp!_s K8nN9{jn[W$Δ3Αg=x[U޷NMUXL0Wĩ)-+(!8µw債϶9OǺl ,R$ֵ> uJ<-6ymDVsT4IΘڧCmYGLj5 EsQf H15zO/-?a1P5(dG" @8G4 4SS"q.>R:6ywC~y>*2T|o^ 80 1xt@6KA:@*U");mtf,a bVe ŏLZFRֱSanQkSm K{] \|{՚jDDi21MXE{KHd)uZJcgLk l|'SIŠͼ9JjNO?DyOt#-}fD]%|t5V>pZ^q[c)6U 6=1sp%p'͋q` DkSkf?RCcnxePgebibCDALcT&Y7z팁nNQ' 9KB"Ñ B5X 3kV-ۨ?`*u )oU-ft / p<ȷ_gy[N%>V`0hףdOeEimхRS=%t tLH i 7{7x~pRYHL8*ZT7-kxƯ9\l<M6;j0>4C7g@!-k_-N:n3V \(Vko'(eoγgφ LiUA?6< n)kks2QA!Ґ[~ڷPGe7$KPKDw)lju?C TS2VwӢq97S=ɗFm#bo:jl:bnW`ˈr|1(VD6[}Bm<|qLhb]wJu kwAB ~~H]ذeAGXA?ʸI2lBǵDJpNT—_'u +?Y+O)3UUEQ/.K%&,'"!O"UEuU\X~s|`pHՃ< (&WWڑ)1y47sGksR8 x_הDŨpMQ !CN#EL_Z=m9K 7#!"`lg&{cL^AVAqlDn:Y9PzED=}_'ԓEJz;\f֘t@?ZYYIgS`1aWN)np{wO+eviÌCu^?ޠ5AAcl kYC.sW( 6kElTQaja,_z1ǔ H* k+baxR[Sm]^Z܅]AR(m?`ŪQ+ij1u~4>t.^ %ʠ7~?Bɴe hnG!rΊh2VSl;\=b)9E$6}8鮹\5oVcqƇekش);kHu8ewp春df[oq=2¹w#lGY/xUM36&#c5!,xWsM9mEOУ [~ VFc@-wZe;2"S]TYE8C܇] ٳH: p:,:(9$^֋DUes7:_ igA|$3Rp1|<:-wCȫd1EQTAhmZJHhO)Jq\]=؁)L+ Ec?죡%7(J8?E͇)jh7[IH?t>3MHK"afH0&'%VIU%u^;6+ȁ#jذ~Q~y%K.ylgPXڏgh3(/Cm¾_61Ljk\TI% ?GH8R.|gŜ ȩ"lgORB>ާ(ʡV1%^m._ΣB^ՙrf(Uqe"`_te5vq%sh—P۲ˮij+LKBDK~F^tuƷ vYga=8mճEQ ڒ"}L!t܍X_E6-k5,}r`soP.؋s?3,ev5Hx+1\D͹:[ci`.Ȝ( ~T|E }5q.jXdW,xlY]R*;!e!'=ٯܣ\檮Qx E:/HPbwi/-+_Ok.VgϔdgAcΎڋo &b9Ou 4F>\o`@1ml-/aEDpD0'dΈ䴕*/0L[+6CK'kΈDU},gFfL}1 c/mlPNK(fEI@s += H'懅0.4"Wz _x+dcгmfYPAߩs }=c. oOͧ4+#ExuE3*7f=6쏹eܞ`QP_9Y޴Yz9i0SVF->KX$erVLB^XY߁CZfp֯m A~nii/n%nL'/ů -\ Ͱ5{6GF\76~~|.^;u aTQوoٍl  ؊Fi@%bq-HVb/*N1+?_-xgКTi\Zb={; Bm>9_2ƅ#Xd7UC卦,ygrŕ.86Ø fbWў:iD,%jnZOl>AgCurEW4DzXztsE͛^8u|bݏB <Y ey0rx+M K޾}TGN6~bLb%F7M5! <;GR 9R 7/!(}t#ѷU)#{&r\WfNg.:rv7 &ZohBțߛiZfdm  c??Op1b{Bp}h)D{d1[ o<>\%?6__ilV|ҝBg/F*KdOE1U}iPzBfݤc]GsG7'1-  { Ejsџ9*_X)򼻣 (vdkaIʌ| u'qz:JoEs+Ͳ9i`{f6+U?q#BL6lTPQ0^+#S}-)2Y8d/Ͼ}ctq:w4p!wּfgvwMo;=j82m(@l+f%DAv,dRջ\HwMˠxb'3ct1ASOMv#8Z:H j{ [*{޷B.(6Օ O`(JMw~:6?\RͳU'M" iLUxXcѫc{3<K n$]vY:np,s?M?\7,Wb3+w@9vS{@aOǏ<6͠.]/!n09,h(,[~v^k4蠷 -ssq;SvCՠ8K(+Ho+>ƶϫ2Rz7qM\ x=\./N'仧םH ;~M牌9(tdk?8&CV-wY6\_ B̌k =C^:σ" #s`vy/o)߯U %mbOl}Ͱ=dV(˻ ELfgI~L˕HFP<8)Je"3z|D`0Kt7>W^_ru #@!TS ATg/LƤƼl$=j?E6CkYvrup+M8ƆLN'8-G/_%NV9^#+r踿VԁQ15b$wHT55<1%* =)ylCAG!|)pP _oEJ!wn$nmeyqqu”oq8q(F+#sg;ܗA^|gOrT8¾%C$ZM%΅jc3N;eBi̛2k[; Ő4(ߞꧬkTܲWߏs0EYN({- tKF|d/\L7^u<<뮮 H9QEO )xPsX=*:Ppŏ,zɽ+(:s3Z;#9=1u|+F\F"!(sK!pm@/iXYYsB=B7; ˎ1QY;S*Λ7HPI dK_ƔaWLFu ExWyn8|֭kw:f4+sSet2|4J]始@ۇs\B bx9iTOot7$[graqfN*~@ H, %GF0]CK_[zcG?_T7-).sH͢Jv~kcg}Z}U};f 9_&n}-ݟv&bTĕf%2]*Bl MN<ݹ=TV*y9$[rNkg |j06ڸB <#C%އ`hmK[V6L; G+gU@.>*;+fI_`YΦ%2%XxO2ěS2`)<}vXj/Ӟu3e#TyU*ad;<] lAזڴ2>gMrU DGʎţwj}{WL$5β!81aXE4h敘r91DJv7d?^L-1|υB M_zw(7) ӘEF(6} D3 ,w>Em;n ! qDo]5Kwl~ܥSUa1s A&mXE7"bz&p=k '칦0hP.łِ*ryt%!K}5zfT9UA$%}!n{c e3ȱS.C/#:En=kD62NypƂ3[HZtߒL1ˠZ"ߣ^YQtj[+=0`}'d1&#=B@ǰ`:zUYO"r^P+#nLK)vucj^ҁg֜X4U9VP?ݹDxAl\~$Bav>l,lUkm̬pQv#%R+߫9d'j1ҾN(:]71_m]F֫~#(H1Sb Q?N=T麅~c) $^U)ԙ7zCoB}^9\['>I[wc(5rVA-Õ8OI!'j\>പ|j\"["R50B:PO[ؗGx!ɑ)F Bu!0yF7+Fk)4wp9;p2S6qjˆ i+"q\rwu9 =ԭm"LJ4%aWؔ|86ĖzH'Jve.TdO2$[@U^a_nY0Ǚ3((Mhu6l"[nH"4j\W^ϡӌ'u+5zb\c),>21.'"u+6đ{kH>eTg^g'#8j,{d ! nAKqGmR,И& 2z,PH6eD:#qQF8$9$pDc~~3rȥ;Gq]FvB?t_ X0ʩGΞ\n@dX';p$ "yuFe*&bs};'FRW3kуڅem,o,.Ut-:xj deӵ0]A PȚhJvz}p,>hN~]) ֵ|C/r#'Qj迌,Y2eCqWk63ܛcU+Hdk^'~O&Nl/5`C0ފ9lr /TǾWC0q}{,61Waωga~w>)+1Ȥ&(EaUCS ΈRbޥU 4U%=0԰7g/:>Zߡ]YU&Bb@l&~ӻQ G~2M1W@LIn"VyGK>;to߻!,+`8'K'MCȇ;׌;_h.YYmᆻW @:T/,͎E}ɘirGI\-kxeS0Ąjѽ=(HOS}p,E#p.2]#y)e;Sj]gN<) X&wn顲 ]Oz+*<Tdy[G09_smPuؽN4FÕ=P-"|:_f/ #:v]㩶dʮrȕSQM^炡Ay#^X/|(ƶ]lg =/߫ YLܫoB<=-%!Gd};¢\tP/oFE2M5HP@~KT4{Ũj:Я ǸEFU e-APŮ"Sn%ETK*D EQO>mV3* SbiV5lQl'`an̺%Tg: B9> dAIn C(D KB'D#cO0curCyIh=鸪D?_XnLR9mu0^ZSj7Ít3P't~яv4znyT61f@ H=9a*>b0S2 d,*>U2( :lOcHr%/J$Wlq^w 5o}z`S5?\h!ɥˢl q^M:9q(:)@OC:츳4gNbUovďMl/ yS^ p:R7yRX̜Ka6G%mXeS3 w8e RJ#ɖ[C̰5ʸ:^3n'S|i_ VW2DIDA/wc7C=v7#ȕS77E3_.< h 5@܎ծ\\e:M+2W\Ҡu.uzj5''Wz_{azzөY4OxJyVFQh3ߦ~Ë /}o"M>t<3ЁAcVJ"SQy#)2"&Ek(J4vL^3'B `u`mܪ.KޏUX%W2 ?n|ʹRv۷1_}0b '9BdLwqz%gp8 /T^!o]T)K8m\>|L}(eGZ +>I7򻁷e`*CEٛ, o&2 Yf $0 GVu&>::پc\&.VxCN?ѶgOҥ*BQOZdש=>rmlAT:fb?g Be?<+"+Tq. tS"]0G{&MOyJUǢz\nխHsUJvoCiAT1F6kWጹS4b 5ظuAE K}h䮚ϩna# j1X4;-[#"2y` +_@",[l6YJ9KGקnn&"J3X_&n lT17τVҲ^]C|3<svyy ,Cy|s?7C9OJB]AwvDZ=t(=aFu(I6 vGv#,t#P5H7ȵ=E-yՖf&#\vC˄oܿA.&ti@C9뿹ӑrebg?'*R $GİWM+W0@t>Aڎ3\x?\ߤ=\w'Ȫw.gig$ jX"7&;R":,T|!!B hQ&.w𝅂+<^~o?=L;UNyw}o<^:lMǑSd59sD'.Qx+n*8f/owb*Y;r큛*7ݪ#zP*k}:6W!X+ ⾩UM ] E p:9#'wJ#L6wc?4XNL?5 ۄ[*TCqL#c4Qh _}MSD6OU0cHn#_z:zFV! Gii`JXDvwRX@H3l8/`x&)ʂPN_:@~+ Ws;[6wJ[ٕ9Yp MpLs]4RlM)|o?iFټ'&jɥ E[9vt)p {c%8 m&'⩮!IY>YW4iY[b5z=#uD"v [Zh;v|idg7FӑN"):a QNXஆ2xu !5l2vύVLh>w@暯X jX`fE"C %fa|pbR>f01 F:^qw@# +L !'r3Zm (/}vvgB/ GۊMJXGs`녷~RR-CI:ZI.BJɅV'f^?z™N\dU=8lr޲&oOgwM0 ڷM}o B"nȱ~I$jPx[j҈5p,!x^fs-,;&O_)< kA?ڡ[鞉B_ڈ_W Ҁ10jPy.*e[Kä Briv84_XJk Gxs[_!58/<ΞAp/- \90Bޘ5ƿ?)i_ST4$rsL )[ĝIN$u/Ѹr\۰`+K ՗SLpԛVИ uzݾvh$JE#{#I})4>sZ9m"KjC*k,q-g {8 Z߃ۊ@ՊWtj nBFc\Gs!N"颺fX]C"^T`ټt^92W {IA^K^iC=Q-v{s K›=R$gϣ׬_PNJTc#IП^#&Fȕ ˺U>RRwUda!aEج}To%5\OAZ$*605؏t:7 f̳^|4|P b w{Z@)%,Urb,G45V܇zt]u_i761_ҭ;=Yj,𮁘b=]S߂h$3s"IŗbD} 89+Ăn9!~7jrLk6&Kx75 KdY;,I2D<ár3CZpd0nX} Ӯj]SШ4RL {?GB6 2ɢ4}9=}W=iv}T)o0_x|XV[YpMļFESii!ZbۤiG֍6U+9o;t^h冧q:d-3/4X ;,Wlɤ }PC?l1縭H2tuH\3%S %t//h Skpw<՚dU ~#+P`k3_qTFNz2E.4)CzgR&?#[\yav%_D|SwXfƧmU ğ֋b:2DD3"scĠI!iykYP9栗O=mY) Af'^"9Y#P L9c{m?o88و)b6L$GM'xG}Q7yk=OG<+L@cJ$?y^njP bo_Jw(veqKNQO5jv"3:6xɔ! VRs-+BΆA~ )[V[IީQ;j0+jbAF96mȠ4 敖kS}@✵^ 㝰7 ҳ7q+\8NQ h `)!|;T=x_90,ϿR_waO/7jmKY@2^ QG Hy 3 a#dԅ/Z5WmBVpNpKRː,$gB/ڽhLⴂKayf>38׌I{ Щp/L|8 ~0QaٖA%R&ஶJ<<`lDvxC>DeO$ZJw`503J;>dXXqWMN!όev38Oy_˷4@Wd7eU.Fѡ%?;'+0f-mw-7mgڣH&M39.cU Tux;|B ;dw*mDEE V'm9?le~UV+wƷe]-:aî@WF~/6gf]DIX4Wj6LL *S8 B>Ŵ?j88d,RœrLWlT3 VhҎwHDd(2,S)Z9Z\7l nX"QaX8{#=JU ݉^͠UhYzQ5 qapgyDYV ѨKv!Tn hB Iy[寂T|~g| /a[i m*o=Q7n +A^~ o?͜3^#~Q`B ǰ*ϯ2[jч9Y͢@ϖs_u NdK=2gIsrhQG="Ǎ=nQz3l %f|q&A\Z9jg۽\;Fh[ۯ.E JI:U7W%ǚ;X,E7`Htn\H dȖqa*-Or8"v)g;rbo ǐq)Zi6 GU:܅\'þW(yv[vo)Y>lG2j7Z5NktȫNJXuA vgkO6e컁=D;(?_Q͏rDMhM,Nfvo&;jj;Q:0O+n5NL8+?6\Ӗy7p=,i/5z<w[k$26Œ)>1s&c*G}/IN^ LT'>aN"F8#I<Б^Lw7/bC&3T{os1TQF8k1O[gQEpǕ{hb~=e}%)9}{N7 jKRӳx~9cqM!楴%Y\+&t (1ȩn䳶`3a~wt ?BZ' q,<[/is;$9g?0+Hz?6FUwܪ+P;g6DQ\6}3_no!̓|ePj &+KEeJސ?{ۖB|dN ?҄dg5^QDƟׅ|O˜3K|Sph/n\&eq+HjdCM_XL %yw QhǮLA!N`۬ۘe%svZVF7[g|,N4Yͅ_RTqq:dzI9dm˹/6nXQl&lXkc2BۧK8 4І@iŬh3=|Ę6A'u\S,앾JhwdN  He̠M I=pS6I>L;)[/b}* aja tf?7d KmE8ʗ{d!TmzaªZz'tB hmArV6FUci,TKёK:]y肩ʊi_gTm(7,"{Fh˶2E#/J ࿳[NSpYd#N1/ؐb(?gA#68m9i :ZWYSIn GW(ЮnD&LMU’+:WT, P喊0{x5g{ 'B;" tO@.[Hsio>KU'e=zrQsg0S@I'Cv_Jʓ|kpɥS?y^,ԐE/"ŽМ,B@P1xwl R1'8H闢b ky-S<+kͶ?~j̈́I YC$5'g<)R/;KS(u !Q"ewvp ;p1fUVH.uekËRi;; zdXitoFxZ4Lj1s'IUWe8ITz۶WS+mZyPl [8v qhSz9KGzIIԧՅgz7M,{ƺ&\@8 ~ؔ x׆YtOvJRM ;|ԙ:Y Xnۻ߃yԳ$1rK ڹQNJs-rMTrm+Z`UfOjq+U`ȒV(؜^6&L*фDV +fۤB[N_Tbq_{6|󵮔o zFd Yjr%Bln} `߄C9fc mTx!JYRΣ|'9c}>yV:خЉFl$>>N\xv_ Xcɰ&9"_'ƺLA+5YGt𪙆TP0 ݘ" ,\W_̕O<1-[Eof!=_&D5ya魖4A-h^GdYf\:^ ?XyA@Q*""L27LN<|1 TŠ]k~Z&%yTj3o,Il*dpR8va7!h}MDZ*O}`;>v^`l\` 52_+G-dECLhg]ͮN+Ywt\,\ *+K؅פ|#YhsQ!faKyH< %IN¼3 ._[.NBzAN[WT5H%58 \rA޵ם@Y'@V2!ڝpYf_L{ks<[| ]# g6+&K@AYa4\g4FpTRpA\wp(. i&pƑCvGea5nYc8˂pzFL)~WD 3, ޹"s|xH2ꆐ"tٳJ0OE>]["7z aq;ۋg',0s~:GrM 0HT%rܻD#:۠ Md2js7"8bk(ߙ dV*iFꈠIc{aмH_Xi>i|rls7mŭ)͖GOMhOɤ"}N;q5FZAF:/1KW"O\žO1lj\M@}:nkHih%ljEtD~CB׿J-#4 [N:8z ®}DTEvKߘ?0ӯ#{l\)ҶZ^PF[mk;#)n Q2Gbx%[TfX^ yGW@yz~ 2s_qܠ 1 Bj cBP_#w>wص+ݰ~Wm(IQnC(Wk=]'$Zy>pS"΀\끈7ϳÌ^Yd7e>Dܦ4:S>4J4t#F_R\`a`KI$RMc;C7 2MzPTi-zC<DUBjǒ+-EY7J#C`aE Ag| _:[ OIyf2,b_M;ח[#r6[wC!%$+V ]7-3Khd Va{ ُtk4TF~IE` Ot5(ߜ4bzK~.*>S#{;5k"*הrohlԂصATdXƁ È[st8F%IFL+zdG5Fn@%qu=X6wJb>UZ 9'7gSϵVpFP@=0qsZ#, G;G?t~1pj w¸!DQl@+%ym@0hn'%s ,C&ʉG/YD2K42&o׈(Qhʈ2ZQ[&iFIPhS`<ꇆ<^1Mʳ[s3f'em)`<#uCՀNo,o82d翯o(i)\`mn#vDv~ǷCW1ޠ>2T@9xy4?mVr4cO+[Eh9qsT-Ns#ǜM>tuJZi%134mسa#KsL9Y[ptpSiFzIBuP`8+ZBf<\1ثp>{0l@dr# Qa$i!{'T h(lҲ7ۃ>R#Sscԃ 9#W"[s φi{c~ ,6α0e bnR<_-"Mve:'#}/A$YL[;/F6WACHWg7,hDcEmQI?HT"VuBze|yWBQ&g^Jy=goA;84|It_&\Z}O$c+ՒHDh!y^fS sT ) K!؛hwpϴvHXlI ݱk+ƒףixn9y/3i\—":R+4!{ޙ^dB<f *FWU*h >?NʙeiXi^5mobɥ~Oj^nG7NM r" :m1&Y3԰P(H KWL}xɊBp3bL(5 ekK4a&9ȡᯁ۞Ldo3h^(:*~35#,=w-2GǢ.FUVj\.ۀUe$]ul'8+8(9G$-W| 7iM✥5(#|ɬG-_ cZAƐԵX`P`Z~S.@sJ/l+T/-x'ƫI[TJ*Bؿ,$?E O ~@{H^OAb^59i糁fX"YVEHdoӆD-GiTM4pso9.L@m@ / }ßvJ`@{}KYZ\Ǎ* j(+Yry̲$,s@9 +e5eaS3Od,g/3wp`#jZ~:`aS@ C8ÐǘNGDK'0E Z|%[+Bڣ4<UЂMhuDdsviQ҄]vi >H=cdS±s%H!4{j /oa.Ae9bd/ցd Ȁ$&{Jr)6QmTNT~_6VeҸ xR`iI4 Lٺ:7kzt! ănzheҸDց6k]N$'}ªlq҇^[6:q(mv;7!駐;3OttP#P.5oGO+&9d\A9B硅oO99{ jph Ns TTg'fQ7h %"ji)k^g^<^^) 隭'|%6g;f|e*.뤀1%}o,z_]J!< er+2049yj{J7sr>P3'MϿ m:ژ.v` ) K;q-1KDQ,8WAѯpy >pcU{yh=xS3w ˑH"z [L5gA䍱UT2%2r l-w0Z}@oHKtOa *G) @#"9R g/nDLp^|+E]T]2tJ桷\/SZ9owlD&aL)Hƨ!\R~pQPcUu  τHmvtCB%{vJ6# gX D_"5琤%j^_96QWtfps_鉨^Zۚ)#/4oJ E]'^S' /z f(]S8eJs&ʹg9?O]p@ۤQՔ,5qtc+uCΎ#X:}q%]QUWl҆6[nj9u,Tf\Ok9i=W9#m(1j[cx8"Tx}alBt>lo;'CG.D Nj_Lp~0| ){|F%>%0heu,Hi8۝+鞋 qY9ű8]0r/7ɀLȭ[ /p-@'}W0;Ptz0\{ ݢCcD0gGcBeS4:$ʴ#] *BOA)EF0࠯)s{9%߅4y}H46 ecW~:Z{Œl&XzzDB&Cn2LM<")^̋uaݖ*rR(npFq]ݥ>d{RbK#]3햓🯺;Wlf46-_W1@ )tiB8K)_~rp}h[(2y^W9/~4/z*;M% uyoEǏی~t'e]E*)W:qLO.boN 4Elyao$ !seN[+ϒVRPNDN|=J5N!f{(&\qq\rBwl!n)E| PR nlk9j2徍;`MA]ϰ/ ] Lpe U!Te,mӯ%V-TDvO[B֭Nn~>uՕ{9flum]W\ѧ1x*Ol\~uY?'2smŷFH2@"}r/փO۫aՃA7XXߎZ]d.p-!LHx+KJP/pPcQ1$RUZxpwM,T,) Xھv0/sJcfN~-L] ( ~3hgql|Pq#u-,ʅWUm~2 &lsF1:&Yi#H(/u(''Hmϭ=49lOĩRU>>5QJI0/ky_mo_tjiG:zc@D*0d9 L2nFU¶F3eC{P',UAvp!wSs8I߂l KuXD_}V鄵o9'@?Si' dŜ/_IP *j֑u׀Ƶ٧ȩպ'ZMʚPz7u J'YNz {0>K! Za9娤M= `@liDfZ`?U- 0#@choO77Z2QzcFnB`>r|xHCZL l!Ls|vѶ`#0-,[%5h92].|az-؁Ŵ!v7edl*hd;Nnj AIǮnQkb{A*ͷzLG(`3GPhssdN-Ս KŐJ0HUxf7{EplogBzW|'! 6#`䴗kƶޘ.1G&8X,@+:"E< { 5D!1%b⛰XvNe.$h9 h*%L_jȪck&fA{&Ÿ6-s: iyrr3&DMDGt]ko&HTN*.nІ C*0ZZQ.DYl쉟g<5 ux'%4`~69 4 A(7E'/*oaY4B+<@ DYH~3c8YI}ODWØ4yJ=8)%/d1x~_4( 3nL-uD\Eh807hЌPV8ks`0OJh濛dTQBzU!uE-uwe;IsPRLU2 KKy2ZJcYwMpA3c2p A힆Fqg1CZReIBnS6"/x.|g,Ifi;Zzs':^!j)Yٹ$\Ɩ!ܓ3Tm5|sQE>xUSAO6Q]A!L唇V)^V`2:vySA\S6!@\$g0sk&aDK)MZ{S Sխ x\u7A>X5ɺ.g-#O7Es6);YBvx3أqaǾPk#¢F_.!V. qG ǒƚFz) l1LyȒH{~z V톆?B wo\"i2$s'DozE*|Ôuno;ӟ̄D s ѦG=ƸZTߘQZ^ Ve_g0{փ`@NE9Nn`R`rIJs"&I5 tjs[T4prZKJ^ARGp2NtUn#ŝWV?R_FFOnswO\&._\W'DIs[y|7trq$ qe%X[oE ?ܨABP~#)wp5f˗4pNΤH>m3!\REg( DE(1?0g$>)&͹j n a.4ig Fe~pO˹z[g~ r#sᷲٺ]!N` l(jwT{N( 5H|! xo81|/#xќy!CP0amrh[tQ&_ݳ[Ԯȱ#И;O\rdP ;❀3wuHY01PH?!hrwJcKИ >6ٷ++5Sθ_%b1>NbC7.̎ A_ h;wCIy=bx&xO BXkSzE{ۓV>]YG y8}o7ԕ@xRa^-86FW`3PU[䬿Vx_ Y7!'Xhko}HmEr1m) J h=9RGkzС72I~ERK*[گt 7;[o5p[v}B}vaA/>xȿ>1rQ"h n&$͏WN/mrǟ។$X|B|~P~I%ߺ XƮrpibh5" r&TIFHˇY,ߧ9Ẕsk3r?b]'41dv31BWnI.ZcsևFH0 ?ҝ:SE ]!ڄ[n/9sngK]W( HM^W䨸4IWcm>$7U:8W5 W!#\h;JY#nwN(&N:z3nX(9$;"b$|GGfʌgYâueۯ0ekAȉZ? Bʖ35N c[NPULhEǝBD^M">Y4rF$ΘrXvȴI!jwQW@r}|/`'ZEfuߚl)[g<4w.kN}W*Tx%AΞϭ] K dő1ˡbPEמdmAO3=8 H"ey _NmU~9-pY OJ8b"jG'C  hF(7/pJYe 3<4 TR½Wd~gx.n)p,L#kJ (Y+''*q)ʠl^6_ٌALj@dm0Aoh`_*AOp>ղHv!|awf* lqv fXSRlRV/Я1uŧPNqZ|h[&?N#0̼"sG9(ή .0;vU!f/8RUM?%419]lu<چ)t#>A^mprIᕗt͊zW4Ӂ¸{uIB Nm4;&5P>`R(9Ռpe ŶΎ[_pv ƠqkEOEϙ#SVRXw#zn+7+J౭jA O̚fȖ L҅:"K爯: tn﫻D$3(^CW[ hܖT{dC!@Iܤ*ǿm?.ԓm4qM̚VCX oS>ᯋ|O_nZ*L۲r윅)'JT`3sp ;plfo?FLA'8NdI N;]kJCZE/exC%̉Za@c&%BG?D# bƆh@iUlܦA6'2՘SMɐm , 4mR>_@n@ d5pe&hz/?]ۇJ=Qm-#evH +"/"_r9OggJ’٨g}c1͈[m[B?7 )x"T, Ap0HD9-@(7/eQ꩷^ i(D|]^b2S#U‘8t$Ъ#ה[RDz.]r vSʺExⴴ>km*+hrv)6/1.2P<9z1NS+fVcd),Wy_#eh'YP+uF̦(t5rZX<9qgӔ)ITd~rI.Ku]>ܒ­cu1/~T( D|J5]#!q!!B0^ FL0KCo|p4=Z,B`[nպ^*!gqRf-22-kF/}:Zn9BE5B<ؐ|7D5gJ./2O&X~ NOپMb&}ز; }ӱOJj\8XUIyi,ZLn.%2%BH3~+7:൓a+i[9i1ڃZdU ~w@)ut{[fpwLZ6p[TL˺p~30!+).jQ'C%i>yxeq71R#mckqswJeȆZx}o-AI;[p.%lO3q|k|A絉^\t{qE|u+ KlQnmUC|&mo/ y!jS?Lž_^(oP0u?X -}zCrQkcDž]ʋ8nezaO[|JFqDFsi-%]zqG4*Ln?)_Rn xWKt=硲(=c КmzRsS^'y.9!Ypܛ1Fu0up0ͺsIע7*Pw #m'ӵ.T9NRW[HC! A\h;=fJe⟡ jP8cMI>7L=I#.l P0IRx I̍ ً1^V@@vIl Mjq5$ꄬ-ȱ93:Tbx-@3UҢbӥ#{ ?O%7yu'>{l$SWN >o_~UO1pN&즪$L%irpZm2P7]1HATp? 1thRe2]"5Yq_j(y#K4wThYO6=rU1c2D&~n?ssQOW&wz[\O?Ҵj~I-1z=֝`T5`%wpaȒPqEG"P%a JOM{>g,InL@YfO2`*kax'-UcHZR}N5`\ bÉC}<-.|#& {X s%q<3LL ӻ6I*պlo6k1-?S;k*+"FlݣQxnxU?s\@dlWmuu(\q7st/ ŮƆM &7>7ŽYWy H@[Duqso;ތ5wHu`*{ÆG6SȎ ObNV7xLYrUhֈZxՓF u+QYN޸H=w5̊ǜ+̽gx֯/&zܲK`~#%>T_$NMz YS*~_wý"_2WXQ#L6͞1x~y͌X~tmr{2$GӁ d _v X7㎖Moʯ~z~m:jiirNo#&)M\nlr?7؞,l৮ Oݏa/̩_.JF #EdkCj)FBCum62_s$Ӵow7_Zh}=)ʁTeE>k4ʱ]NV2WI) @USͿO>\逛\U_Вa1#OCŠ{8P<<^92;9hR lw5DD KrcbATyghpF)yw_I1B!ǚ,zK 5\ OMWfR;W ?)>KXFm}/s,s&hNyt]enQ["g\DTݧIUƝa_B5U_\ KXl(ļB)4@e6+iȮ` iX`d^ӟ9w1"&'9 ΓF}Nҁ)/@=[4.&Z" );U&M*@UɊWq1* 6<3GSɫ&(e'4b-Q7:sBYJϽdX__?/( j3[BB;ɟh߷`Dʐ-ExF !,&kߋ00f + &\" ab=յDw'@tk.M5HH=iADQp%3h+K޸u쯎=g~Xڮyz&LΦ7[ ֪ᅟvM]!ΰ-nEpFluk)S /9lP:!,Y8?XԯE]Z)5EONq+Ko<oڐLtjsR'sV!tfZs tR*˙VTΥ>s'FzP34nj|%C ykx~N3~dIPnm菩{UnS{ ' : =^^gb?/C,NPD2K~-t5uI:@b8k|=fOzx7:YoI\S*v"É_4:btTtfwu>( x9f9w-/"Ady&I(ׁCkH_s["hox Ɉ`_w9nQ1KZ/R (ژwz#Bb_fM bk`t3J#R=;C^ǜ/P/02l !|pb6-FkT^9Wz<8ӛd$x%K, ; |!cJS]=.FFqEB2'JU%wn7øu' }չ$ _WuU['ȜƘsYLBU_-+Yb juu6Z0Փ^Ćmء*x 2ųZ(xE1שwB;ubO)Ж Ce耗n^EL\D[Hh:Dn `~Dbr6LjoVif+_㑶>ё#AռYN'ȋӇ=~_^wqdH^prmxn.Rga+_ݺ񓍭=fe#x6}C)A7 AdyneC~Oӷ&OBwh<5p{c}>G룖RŒjI͜bT܇6z ).aN/q `X$IzkgiP hGLc~_*ho-䶕oOvF S6C,0~u >bPo A֘ \_w<4oNmTI`Sqs|}35"wTQ$jq( R.>Bk=q+5P̞\ K+J}LJTF" m6U)lR au ,c? X_"IX0_T]Q ,'@^K*̃Y#h6$ytDbBW ]A;W2[ 8ghx жa6_~l}SNG?B$ %wn[ F<Ɂ[ipXwdtq`{{ rHČU!B` m%92/^.Ѕs) {+>u>3`=wQ)O`ً'~?(iBk/ƈMc1=ZAu{򸛿";>e(c)e"I-9l=˹ <,m/$:lj)2ia޼.h膰ixVM-Wk/$`nDPAg9ݡ \𽣵k=JsH0'KL۾.&CPVTVU#Xc_ʘQ0rM[A6.jA\ XP[mЎ ʳDy`Qa" ~rEw6@q<۴9zf8_+= -19Xj:ս+6+^¿O`g+IMhatNhmѠF-mK\&A#^23\UpG-; ,E3!,d O+i%I.s2Wǜ b2di&?0=WDBIR`tMNHUF'aJYdk4nD5Xh@4 f~bzā6l~T I6q2%(cLu $q k0t9t*/aR+1UN; )f $IӜsBw/j9qk3?W~2Q‘"!JyRzVS]$u& +Szt@G+Uik.a9!6 KS1~0=mb;^kݛZf*&yD2.l.!TV{ +ЪF灘!)gh}0+onxFBl`&Ol0O(q])Ӌq([L tP,5wVêVPvP&b YKXaSu?^"K~ r݃j]F{t_fS? :MH7x:,/CL^cL $*:q|v* =#S'.c)qS~"fMVFefy.!g/B9}'S[r]?{%otIJ8W,f{n|8ఔ:V!fۡ:ƀ^׏dS/:P0DfWx3YnI?oٳQI4+m1 WI]JvѯęB]Ge(yRjxCHƐkdp()"֝md-@9AWT!jEQ}(t704,J%?S"7W"Q B½l}P đ7|`RweԈZ֝wЪrE:]V؜-eúS2 )T6|]-l/ S={ML572GtNywVmn5hfx$ U#4ͮ/(+{3dYYo৉ЙL3fal6Gn SNܱ&Fl9BK'n "t\bO6";?'4VyWa!]}&61)?0jw 3j7]9N A,PF6 hZbbW.]5 ƻ-a/fp@!Y2= "yf:L MG)Yf̷نIU úoKID7Bzޣ}_(__rrZylnȩx5όqf}`DŽ9uy}Jڣw>ӣr FrȧdUOG` M3Aώ}?B݁>8mU$s{1XĖ)sQ}Uk+KƘkz;}zw;cv?ߐ8R%|f)qꁋŸ1qeպٍK\{_ULA`imfԆWYI &q]Bؙ&63cO6[Dz^ *yr!*)>>_ .DgcmK4GqPߤnغ.|4$ݖ1cT׵ k/Sn{iN.z St8̠ n+PB2\!I4+bwu_mX  ! ڋ !e#g/V-歓vm;0G1a\ 9W> a?{zn{[keH qM N2k$`58x >⢸*.1T?gbTQ@b )nFIt%f)uXӤ΃pvÙ&{y[qK]N + ^_=m5>x!;(L5go"*½`3gq8˩!0Z:9*NAa =S~aYqJ ooHxI $ZnC?"_%TV ^n >,nYl7igptl/@xh&Lw3˛s+wrC,>`rCᖄ(wo&NGL'Ex8a`S )F8zE+Ԍg7b"1F,xzozi#aનyts2utIsPL2ۮQO*K:к։@H2"d!mqr}|( Oj-Ywhq̀[:B9MϐH K{LD |} T9(r/QqΜ30(;)Ft^՝{`hzk2-oE uabO^%jti[l[QwE)rvAamJX6lmrdHk'=Tϻtb@|IFN(x4+U?a7Œ'DfMzDo t0z: EԾM^,r半[$^`@b[Z̒Y-w=3ʟy)),TqNKvuH;Xi x ([/ U U-eUP cm gn)1.O2CGCQ6y^tЉ(5~L݉#YNQ1 *$)cslHWGxj!DSJkvKq:͙ '3߁GBr7psj}~y QE^)Sf D;8H< 6_N?{I˅oJ1G]Ͻ=^H0;K,alŁw({wԬ:w}'],MG{jELh^ϙ̾Ƣ B3t0e)ĆV1DŽ}qfzqde vAx[_zp pTPs_jk  M/;Et-qG7?yD.u1kA&fۉ.sC:&DY%ɉLnwKd_6jy p!cQ68C挂۷d=„g3֙vg3DwzSd{ [l bo3ǷEf(25<OT_+ rY>8=]N(2uxB q֒xуP4s!{ #TivG |9OINkDZ!9fJ%c;@.?'<'z {3&[fB$ Pi %KDH,ff{9/%uA&97R֕?uSvJ,|T1 Rdf}C .,q|+eG\Ci #m$I 10CXIӇ[xOԹʉtO>SVtF su4 ]Y;uQֈ-Jp-T׋F:݂ l?r0fۦ Q#BU|>??K$rX]CB5HP1iOM}<(q po w> Gl ߤgԏn!BYBVgMaQ$_0vZy4oC>y^2O=nCOQx6͟*UagrOCv=O s}yˇQ\nvF j/{[ A!Eud^`*fY7Pa.)(,%ͩ?8_G C tG;e##hP#Xy:r TW쓣}vrI}bb.MJf2OMn GuTО:F}*.dJ Żk]]A<+OKGQ!vmOxlDtbϋүGR 8ح> 8jtbiÎBhB- Ž?3l"w2Ed*?;a&_ܟ@8Pt#6-?4OW/Hb (̋wȱa^`JF$_C\ӻtڿَ3BڎopK`vZ6&q)p~hO9I;rXX ttė$#΍5>[36"CbȈ@tI~*l=D>L1#k}h8;¬Oz5@v7C:u~|-2n |Svaj|(lu(N_"2hѴT~ c5朦|Nj-vshj{GFHU#0[Z4rD[904ljs"9BL􏋳ÇKH}v/\u(欴Tʳ״m}bU/cr8 7U}z ҙbIQ~8g6 ^8` ~װfErDHY}s0򭑵+H]2O@8PFmuz7O 6'~AHkvdyKMh.B$e>E0"1]viP'$Y|Z;L*pL-osJgp+Fhl13a3OؒLT>F4$E~{@^9(ۺ. թXe8/gN[}?/n&$V ^d2qi1n_{]Y;?tY }z`=^73.81:k[ A'5îI 8_YV*g]N@L}NjE+i'[+3No(4YNVyFJӓ#'Uv@M2"1ɲO'+7BAQ9gǭ 3f"A8"n\<|ڧ1b(4ziF湧ŜP TG֏S ܏O& 3򬡠cwE36Pj $vL׎֜i&#EYl쳙bC>H&n7c\gk:~B? l2o -2𜵀cː4LN'#9@ƚ(*eqEl`Id1p~@&PX{%q !&#}i[Ki5( z!FUeK=h(^ 'pɳZ֠%IMպ3d!+ NRvNgnrY:˴ΠmlhP>Ǜhˢ_gO@v5dC&U~PJ>[.gj ^Ick-GRCȆ`,soj{ȃI.Bv$tz,x3#-rEsTP}|+Y z!i|^NeͫEIɼ$[axTep 0oBԇzhǷ"_Ï~EUa&lDK$Jq64ZBTvy)ZCF"F2Q;Xr?VeIHt dT3MH˭7P<){#<%mfq\.8׈%n?ײ~G:E聓}7Ql[ !2(M6cqCq롢$h{Çekw8\UQԉ [p6}-z$K,~?Yb2xg:N=N!LYY;ǀ&P4pև'Aݷ]M[p?f7pҹ7K!i^O}mb.nޒnF,^z'q5)*2WLH;bH>ȅu+=SF\" ш6q^ TyK7Qn^$='-9=cDc`+R@[o{,9˔]YA&D-$~>bC2ne$r-1O`fOseK#zJ0Ȃa^a< Lr>kORM= rۉ |J }_JԏX_fёL ,9.GYb/vS>Q@L_U'EpBt)rgcdO@Pu7WykC3$: kZQ>}MktVom~F@0i#i \h0D/~ ̢U;f[K\ޢTRU oB$iX8j [ۢ* z}1+Nn-: t1mZ?>'1eD^T 2ۦ}2aO'qv# a'w di Npu3a>JxS19o>7N z{AK3ɶv:՟B4pIHN|TGy7_Ӓؿ* C0|Z:qv˜zC NF+k/9ZQO&ןZEbf8Z7uqtm\ /U9^b J[G ŪއZϥc, A )*Q1g?os8~4 :,K&MET3񃢖pK;޳#O^4LI%Tcl]@%0S/WS4>m fkRG |x. UQuxzd }k750?MwƆ.A;h ZLml8}PaqOr7mv{^SvYCO{-z NS,# 7gh>[5}DϪ98Y t"?Ǵ{Ks|?_ &n[f3e>x)MΘ\9y`IiRߧ ytZeI#E]%]7Lդ5\Hem5:sž$&-7"ȃYZE@ZŠ38~-H;wA! RYV.zu`?65!,vWx\\x7A m?xg~j1`h28@#KЗ69P> 1߁w+;c[tf ` 9D# ({LаX=ǢT6 ~CDTiӐA>s'ezE爆%WaQp?F\鮥YJg_T%#Oݿ+ESu ߣ5W $̛Q~ I3CtqР p(?Žw$쉌^Şm'S<~@l7|BlbXMlnEzCdWXDC^*F3tD$^7 2)@51(m;SC^.O@aATk0X0Sm&ƈP} %sͦW҂@g0NnVDu^ជ.6%mIZ?ZhX2kdBKh.yA&8HXr>OڂtX:vGZ!b7^qsEs ¬]/}l6d蟶vK3@Jƍp8Gt@Ch yۙ p3!S7_o=A~ V@S9B'!w*ԶqQNC(sUcruc\%Tc\՜L% MF WBJY 䎥B(yIWM_=ĸ˵^oD~YtR9uRy7/s"CB*.[OQ$ \jY* 愘yr~N.ټT,OK4an.O{i\/v$U.4.|`8E yZOvVAmLرpo")C|lZ앢;Natqɍh>61޵"&ŴG%@(8 }mY&cy$R Cc@i&X@*\?5O%,cx&"NӡbU.$kFr:YqyqtA/+c =j. s]\98LF\*UL`]S ݺ@hQ~Qђ%em&q۟' Q%Zq`;OcȒ`^䜥` VT˛Uizzj)vꥄ2kYĈ!*jP;_G 4yNdCɜ1م8<\PJE TEBn`*>G5dHH7/qq,FDG.M$6cջopxGuODƥ͗oM? ]WϢ`$8L{!n޿FV`#[iZhP9t]2x"-TP! ,ԪǸ"򊛌NٺgFfڷQk4n ^O,2Dlw=r0jWy3Cf?Fӵé:HǞƏ7hl~{}=x-Љ񖋂IF =A#Yj:nbBtQ;s vQ 4\!/H~E1]4Z/\t!qA(18@.3Nr$Hp5s~꧟S݂ !7]c|*5;ƃ O[s%f:RMv5REJ$ͨCí@1 #)V 3UBs\tKɚ>1$g遧TĈ-ؒQt'aSRZ -Y媼6SUҴ$OC{ A8erM8 ͘^}5ӃT^-fBRۙ7Aq-7u4C!L%Ƣ-Эxxf{NaN7> dsTGNn& <9ǍE-J- (XU㾩zE}EH钡f-?__۫cla&}}jNۧBrco5c_2V \4$`qG@hQ8伴Am08z;)ujLp=~k=+t]}?UkQR]a tD 2̧@K ΄:Ŋ sm-TLþAbJ'6{HE ;#X@[._@(^]?I2ɹL.Q D`RU*y4'uXuTl2k<)rx*ʙ*^.tN@-LPBmq?Ψhj,52^\+GLSOWlzДP`]K-ۇ֫rE%M oXb2qD'KuNAFjpsDoAfbo5]Unc `{h tOly5c 2u%u:S |ُ _R'iXfo? O?u0 p9vp!&RH}"gꮌZNB2KuS# aku6M= |Mm1Kd(<]gh d8E҈r 1]IT*[ :>6֮M@>}>LolbCmUoaFr+8ixzۤAD]ɝ7\ I0H1i/ Ƙ:b[Q{GmbσGm@g, e/nV9NibFFO!/9oyԭ%Ej]ͭ^gsde\{ 7Apz/<q׋ ̫]J`/. 0I2L_Zј`,W.EΆ/Eߞhmmޣ0usÛlORN$ ө[<-u]_V+B|­OFQz`>bږp Gl'] +"";?lSMo} 9$4 9=QCC!q0w uSP~(">idigZ'K{ c%Y `Ǵ^~b}k0tpxQ7{*?$ "--gxs@ j Ɗ2t he zgK}@@ :N$fa}uu楺$<›S@Ŋ}޾hTZЧRЩ- &7r]ՌY~& dlWI#w m^)0 `vnW#*œHy1CآY &3k湗^Tfxn{%k9l\.-^Uc{5kw6|I"@)؛nJ&} -|=!PE m*bOV'Kʮs5tlll'KefR$u!ڲY=v^\ 7<^/7;Jwu:FF.J*>LELFYݕ| Wt-52<X˭@,ZPf]s2юC?R-)[ҝԛ":mbڑ8d+J%\Y=A n\ 䚀Qic1%}+ZmH3f歾`v"@8xmѪVķ MqV Jfg'f!Y00']Gl:xcJ<* υq6jz4Ÿ|-r^p]Kt>8{wTc e!)xyq(<i Faԓ+/K[ȴ҃gO]OGwl@vWX9Tv7;ӏ/+e*Ahj/HXQ_JL+~{kJLɷ)bqA ꉕY50xyV7 qЖ4Tan/ph =EiO%]\-)ȁVxAMf vw0ժ&_ 0D i<-ƂVәI{*k{ u.WHGF1 L{&ІQ:g7?+E)=b qeSt6ψ| @ڙN8t\@;D}D(;rH+,@ <,dK+q"zly5U@(x^ Z5f LkVƯ1ߨ n?,fɎZ5W2v8Tk J%kݰc tYE05慪pdxxg!)h(pF 19 $OWⰞo$'Kgmi'+Ndad= &07BIVm)v- [/-}Z#o"Oŷ <.k,A69mbAܕf9@齲Өs5 qqq'B⳨ØN[]y¼-v|SȒU*oNTZpwnu B:=c4KI @)ZZ@^Dq7%\F ;넭6Z$de 8"J)fxR_zG\D_Eᑀ  iI8Y:[?#=)>MX솸T\ë%bԦ+x%] #۴s:c/OlP!m٠e?7a@":4IDr(oxeZZVm!y{QaZ,ΌNdoD k!.busW% A7tRxn…ggVNGPBp@>s{,ҵOC i#[)D}BS(D-{HŧU8Ѵ7YpP㈛@7$6KT_v!>ݿa\TH h6-< V)/*FUO>~;"m/tWBՌ;TY(ArGws%n^=02~ .`sI4 ?Dⶖj(lY?2$?DC=s5^Lk :sؘAD%U'5B0W W !Ę*[xZ 8ZkݐbM8C@T|£>ǜ(AI{r 4GD|@j8puE@1}XvbM=5\ 8F Qw,5ͻnu}]˽U_&~緩(7LqȌrH@^:I\F[c+4Bg># ʳN韨2Qjaa \|/ k|'SPm'|; =e(ttEg`G:`A&E7w&ީ1QQcwXnM7Bbp_YŋvofV]]Y;KeɨQ \ P qUhIn h(:4"w(MNO~4Wc=*(~4KN f&=aV#k~dV5]a˩#MmV%JdI;X(K U2fSr<~lQE~=` }fBp.vBߺe+8Њs΃JCng~ZSHjG*ذy`')yA܉ʬ"nwXɹ&O|`3(Z|X Ius=3fHStf: W%Ax*k5!ds*R"+N&`Vbk6 J#О+:Ȼ,`U5/OHFA,_|]bSGޝt*{|o?;t (LRrL4PfF!1h_Dmbdex@]ԄA ]K`Ϧ-c7J>)%-7?B|O3%[!Ol =7ӱ$W?JOsV)cBX?#T3Yi^Z cHcob)LXXv. @ʜ|*Zq>YMⵎ̞2>Ehh'5j9 mDw og=y$>0/ykl< 3{fY$WUl:QB:| f||%ȕfl+r 0w&,v}E,del)¦m0Rr+F?Ox^s<Ķٶ!ySFF69ULMcΝ$ # `K5sH--X!3vc"C@0 [;}ԑpTI/OUkݍ_~7dkAy X),hQҎH*ą9㭃QDm$yfZqԁD0d9v8Y|ޒAjOTIG[;?lt`J ;qEkҫ5E@=^ yf/ ֍xdޟ-V=bj8r۰p1[-‡ j~ej!z{ bcu=W 4q9|lւby6>iT7o&Ѻid7\ż\޵@NaACĄP^lpP>ZEӃ*iˋ)~׭`9kCEfٟnG]||0x"׿ZK$$%J>Om|E1O2Fi1;*>wqA*6t PVty6lA.\O-NucBq 0&oq')'uM`ϝijvL6)Z)ƥ:Ǧ{ة  #<+Si˟죷]I#P=)r3ۜLq/O3s0ق95p)Ԇn  "nM:m ;wţ~UqPhu4h]K+g_+^A)c4흖]2}ܛ=z,ҩp"ܗֱAF4 -{j8ҧ`bʥwA]ק) :;o,0pu `cap"E)OMͰM Xوo05F1S :ai=juvv1q1^}Oze< 2-aObrW5h{sGt̉ߘL0/BYk g兜6;aT0-6#kT. ~Wv(ɚ-_h.;5ڰ;xE;M3 }" Ϩ,X]/{]aIqFdq= MTk|6wJvzӦlx _'BOU ϱxa } {_%ٙUmjpL#Og(g|u=ۇ {9^~j#DQjm|pO<6߻[ц=~ +:]LR7hǰe>/LL8{#ôM >yRe=KAaiu%΅lᦝk+<xd>iaʀ3P^]#oOB~__a6Ӕ5C/9d3ĮCѾǜ7aVjIJL|7ɿp⇴ۗBҞ^0%v#+77ZR'cW2ȇ>gThFX3\񮯿[-ujqc=pBL95#(:(J] uJ,;{ oYvt!hhٌAɊ;ա40^5zS ߜy4=ɀjWҩ`@+B@+VF45*~ >g'ۂ£ u9C3v;„u(E& -ڟQcDozTF:0P:m9Ao Fw ;` Eto ʬ"l3?!ܶ S\*$溢"H&tП:N GJȺC؝C*^(<9z>VO瀭?|S9zQ( A_ t[A9]fН1 `͆m%4 &lǷ(#ihk4t_Z Fb3xIcU|vDkޘ}mgoȫ'ԸwĬh,V7셼[5ëҨIA+KPy|sc&ӎYlK"*7 xO^ۡD6CLL89x[UX0nUv{zx>|K&T1A (qtU4Uyj5vc' ݡ<)33l3_] +&+Eu6;#3I]wy@.젧jdWl$&2QcyD"x+D۴ruH:!>x6cr\ޡ7dKl)q#Zd\7Cn5ld/ Hb}&^OITc (:9RDb1eҒy'r%Aqƒw@iay5addQb}N,NV8Qv/i?;s4)obvK#!W>wN#LuJTL=TǕ0#[RjhXq,g_dloDw/71aE)Y$+t/?p |Jg:/EZ7 v&I-n ܂k-oN/.; E lda&sY}5h)apa(|sa$:V}_i0lnAiԄ 7u2$ʤ6C] |lMĝ։ȯ~[zn|2W.?vH3"Ca4_6RzB&EW-S>g}xLmfpV!W%$ښ{5g$/gFfp 7c9Ξ{z d``2-R{ct8C\wnQA I]14;dF/C=tɤA Bf8x,_}3(4Ci^JV}ozwۊ;*0i2"["=4A 6]Ho`҂^\3SNL?f7{i'ic4p;Ee ʩ]n( ;JY=ۛQ;7Nڀu'`RFxwa¼_O^,|jh<z_rMLYԲՙ^lVgeT(y];Nsz2^-}?\XH"KtƫeH @mB uAj+iȉ8"uAsmpGCF1@]{7'g+ jr }9\_7r C!CՃWLTeM߂P?  oE!,k W o=E$V'p|e\~Xa;Nbhē~PP7 _miPStLO}J֣!}0)tDxR>i o&qxc Je") GB4 XF[>J^ v*,ov$,W{U`K #>;4#IO@ҍL%έtv6eb\q9-Sj-tne@,"FMaK:hO/RAՔQ߅?[tjf+2tzew0H\О,T@=v3͔["[U]X0W)^a |ѥ/,fLjK'y5ӣ1ͦTZ̋~2EM_`5Vh6g~g*#On):l}튡QfuX6{!5`>;d* idEӑ1zvMwL >@!0yVhP}hѕfEdvjŢ'2ļ6d3+;y ɏrR6 `}7^W4kL96P07Α.::&qx|*,1ٮ B gIЛ<]'똾,ҝe-|o)2)9jV?a>pUr<Ǹ7 z/B:Z'Ӱ2W=r`a ܆_L#3um6{$𳚃d?'*GF:10no` |MLW8%rn̓sV"Ej+Pr3Dr>|a71Xu1`nm:E)p f%~) jD2\C{v:2W?5m'Tih&?0tN[_ZL0cˆ揭u0hl-@5^ K#_fO%Ria#+>xl)g3ԓ,Kd xrY Vt;BWb`/pk[du;5{bϪ8?M”Uo|!;)EV⥵/ytZK"+\i )a\.:,=e~։ _N|oXʹuc_{} u<4 ˼FFF,L/.ީ{_mLP[0Ivz[Äf_zޣHdNe~9jJbѬ!k y'NL&JFby}/CiNܖ!¤xp 4%J(!.s~2t"f-npF+ćÚVj]iX~r.5/]t cs،Vҝ Jg.'ÉꯡawˣYܼv!e>T&[-pCf `: 0(3h`"GrnojmZ?3r~omĊސ-z@SZ8ӽ;' Jrp"ՍvaL:GaV7L\vK61q΁!-]R/s2|hE= : dbV<5#G 銢=4ibFX{|p˿AE FFZa"Ҡ&)ݼ3R#+Vn:8OZ_*C }!kq`26K`[;վ  8_'BG8{o]\NAtl墮 /2Y[ާoA~EhC˫GHߜ=q0bDz/BR-͙k9k zc /T8ˍ #4`m. C$ !#GXd͝"umw!>IrPqԞuP7榃 ,=_0(r3M}xGiƠ~oH6]znf8טKHx+W,wC'G Z%HbTLXouby)&qL%y9K 5.>gzVZKn8d#5bU)3Fl.oX|]SNW͢E$7Q8Ĝ3RiG6R4سaqR;SSFhF'2J R5a{y\5K򍏫*:DhaderEoiV: nݔ●IVVaxv0\g.<(jCMCAq"dg Mp[2k㨵;9s߂@[!x'3OP[9ҿ'MdZj +Bˋ~vL* ~G49tw,'@aJa0 24uQ6 ~*9ʳZ 'r. 5f]Nm΄ݑK/>19aFp^sJ=s3/05.YzNkvG;BDZp;KLn C")ʮtc9Oj BBظPMnk`Ga _f+.,—mzA?M`^J3L+FGHUKIalLQ`=be&MLD ܏i-kSFb_Z-&:KF2ۍo f051U{LaXMK@ED@.Ӑr¹/ #YnѺ7tñ"5:Ы('.@,;(?W%Q P(Ӧ 4H$0.\#30G ISb奢m4TDnifn||p U<7ρ0UEx ^K /N :qvij 8ć`,o6l [PukBH I* p~jڶGfcSTKxO)~>"zJś:QTN,&&k@&DK Ul0Q8n$$ iSH9QIn_&.@0)R=E9S8k?}p XeY_Б{rkgL]]Ԛ8~Mjj J;f77 +LkHݯAoǎ> M&jt :t,9SN,t͒X$*x*٬Vj9q*$Kb' ie3|_n<* 0Me&sʢP79#ѵ5sb-C$@En`,,u$;R`~C@ݞoϾǣ[֙:߰ziw(_$= ܏ htuAD]`]LU_= iܯ醭3n$#KXhm7c6v2 m>/.$3`HlAfj<teOxvM S)le9u]u*wP;2%H]QDKaVD]yJnJibs_ZTWxEXoKڟÿta_%oۃAS$ry9\Sx!u\;(Ȟ-XR ,|PFwkY% E[6K H6LQ[S)NJ RLJR3X z]M#72%?9h~/@ >+*_@Q~RXCNfR $S[\Z6o=.LY̌ԙ?K)Eahu0(3Vkx"=K`Kn"[׏@W >`e=oR[f:A!űJz+dDbW*oP#&!EIlOz- :Ý52XARȜB yE9Mf3nQ|IZl TXq9S|<(E+ )UGM2 TJ'P]Jkb8ƛ"HrAҺ|BmV+g79R 9 œN{kтR/9tUCY` p 2䂝d'k#֡uz@$78? VH8ǃ-zH/O)@s]ׅI?׆QKw14@|~SyZ ӦێiE񘃎{!\N=2OP"6Z22x2oj&N"^RXsԲ Lk9j4lܠItů<> y`5NA1o ^4~Q$$oFH (Mux\6qjtNoÂ|v u- (|E k]EʵN?v_Qt#$?3;y~?WÆ'ڶ}Q啀}&NhPS3S?=PH=Ҙt1'q 3w,1b>f~ҡ*!N_?oDoR Oaa K拟UXWF W}klsQQ' ڥuxJ<5[}OxXRGJIƄ >xs8^3sp wf~2*WT[;mc, n×ۅppu#;/@AA;ֱ\/C|+*Th-ޤ! ڵ  NVŅȦkۆa-;q{&.dVw. 5MCl\~ 00R0\*o3PᷫWtRh?j!n'kɶx ZC&׳SDGCĵI5QYچ"*e*ѵ߹#vv'ت\#EX bv3UI;aM5z;=/MC ؘwY2xWJB4ܠ0l(W*{OBC%r* ̢( Kv$7LZP1{W& }Qh/0E';4ptrGKS¤5? ea{9|o*PldHq"o}z˃?N0%𞪨{z=6];528=d`I> bkJ6F(6ͅD}|d ?ؚǠbH>ށlT [kc ]Yc  ʩT Mwly^.$Xgb?ͣg,Yɡ41:T!ӃEE"ٶfU(RCiq#1{Y-Ƈ"h*UO+DŦ_zwpR<叽Pmږ"0ʁ6Ρ\ e*b{H7$h Εc`d0eKAq|UeV{fM@q?Yѩ!*s8U]JXJB$gx6O~*x[Dp `Lsi_qcL`󉍮H!A.vJaOCpInO.SI_{C&ݣDcv9 tJctDH (. 9VS(ip]; HFٞCls·%1+tC9 s C4_2Ƨ*7|FwGzt_4IiwzH\:o(C߶Ԛgmf.%~ݐC 2~ ӇvkRf!K h~`\!o{㐩f\FfxLpj*2۞quj?)M|1, gW`Řb_J( " 9X'O5ۜccBhFe&ƈ(=|1sBlo uZ2PCn#䇏3%%;z<}zD#zt *::s$3ڸ_5K)=s,W[l(]pQl)(:5_Mg^/ufj _uȈ ,?ݨH2gjT41aȣĠ ĕagV)f byS/R.Fʭ)%dVfP>ml9mrKXGNq1Q5__cQH]ZR.bdM+ԡ\⊭+ m8DPc޵>IBwqaEJѱ#:0ZOַ s9D`rʖNo mW_Z5i6][k6?ѮеZ^6Ӄ3aeʱf`bEG[PMsc =*ht0V6uVI 0GUŵ PG1H6붹d<ÅKtJYV1Esj6Xk2B)5~pA#/էc6FIH ,Z <%/ T"6gfL) Oer"{DUQV>kQWt'ttts'F/hk>5Vݾ]'A=I48UmYZMC;ʁ.IK 0xGq}-ܒSIr%Tįd Y`lKk&>Rno7~>ݻrZHI@]J#P/t|ϧ*\œ> P4. <L.(2 peQoZՙOpƿ$r=i{Z\oh\ï|t'JxxH"lK~kbUZBKaq\ogZ,)cԠ#mƕ8y+nႍgȌp)Ī6P8bd aJ}tQp5ao_ 88kgˆMzhɜ"/E53wdR3S}Nw4 ŧ3dCVZdh^?9{,#Dy"$_}gA%7H~a-o3,`MM'ZqU62Ch6 ݐF7p7 O$&2'O깆WpU H5bvU4˶€ Zcb\=qG *^η(7IB, -Nc1B%4=%h ~DV;c&4zf01W3hf:vT!-eU^QFb̩Vu UscxzvMd%KkTVO5g68~ɝJK9 NguH!xc}*/ӁvvH2(=PI s! }սͭP4)ZZ')[muɋ(sU]˼4j 䶍m 9K5[RaԵ5ůYeKcQ u{kSRE ꅰyF7B)Mp4hdg:q+P) #|A L\`]dX@7-T*Z+()hrul"6fi' KّTa^*•3W6dSOpaȸ@qV0y5Np>f3q)]σtOQ[Zf{M@VYA]᠗6GF60oL.Q}0G;y4|4^@jw My)@[rG]?+*U GhyvvAD=C-mEj~`# z0 =OZ;}<+C G,!oH{0j~{Ԕ3A$Yy/Ú8FU[ٕ膯U1hF !̴}.#SG蛺\̮1D}Olo`}\ֳA8㉃;pݣ"ՂǚB fs%$ћͼњ* i=VCr$SQMśR`jBĴ#.B_IJoK|8+@ ϔ=ywK!x 2xɰ/ H:.=P/;⇺R7d@gہqc+dW;>!Q1fQ0tJHlwf8kylMwHy= XSb5@:[K<q \OmG6l[MMCe *; v򩇛hKe@+4U3x?;N)F`ֶ'E^2Ay{ P"0~ZҐ}  9d,%SrpknAg*Wxu.!Lltm9]Eʾ&p0xy1Π1\`F͒J읠yRE!\2Dnm  |+q.V݋(`,Sd<8,]유YcRUOHdGPtuSV!-4?g GLM㗊# iz=y$1`0dXC앒0W]>C cNgU$UN_:d0N{? 'CMͤ707[`R/ms|zm=[;XscH6z&\#O=OZZKˊ ^wL@xfL>LYQ_I-;2V>ZQ *';>|04kfU})N0 7췔W94 BVx,$pxB9Dpٌ&ݬ%JKm0V.a(!Fx[z:սB$C31b9s-l ,Dޛsl*%>6Mx!4|HN=/R׾qX'G풵pd>Cs%.2-s1) NNB'~ObllyulźQ]\ޕ?,6/ pLI_ރeal+q BJpk+FhhthjVq/ GE/ M8jn~ɮm ßt,ޜ3Z0ij:l̞GM-܉)/_hLX5`ƮM)QǣMAL豼a2^ > BnG>N7 U7tj ?D/'3%X=3䏿^9S=`sFgdjoCf $|Iber[8kدbO*Zm, o{͂ )xs?!!+Z`;9árlه4zՍ/ aq t}0{nɬqV?dg&䲯3_a=%ETc :&=+u|(4MCSquQplFo{'=in6Vf{\$QKf}뭳ޥL M)VZYFQFgn[& WX3yށF1"S4uOע}I#HҶ:ibrͬif ^]uҬ~Y#+_i5?J6}m@6 lR9 e` B399Anq`u d)1>  忸a a8/՞,koAh$uf=&K<b Q&+p´ ?J _B8"yEM,K>e9 ]P8~SHQ7w eG$ܵw+ZHST˞tQ~Qw`zy$z6)RwL Ӎ3ZbJPr~k>9ٲrA T"ʓ؉ EOe[M B,8&B:/K%B`f(d~' ,$bA"iP?(%v`v㞮hlcE}**9@aNʹ@_+-ԌI=Ou)3&!Ǜ++xcɇunF^%+muM3/༙ 9Fݪ4>O8#> e ^B8ʀM񨠚.BNhbY%׺E5n)v \Rt݃JpW~(~ԩ%/wS= |`FYVkz#=f[aYRFNz-vUW|9QM+M% ?.oY-{[%\ rQM^ 7C;:<{N7z1 `Qg![y=j5\7 mcaqnJFw푔qaxH[: aN= r[E3xL,k'K>G[ Lʍ`>k <(4<긙ӻ& h񾉶&{KI]c*,W!Bv=ZnulpBcz҅'5K*:ög ώ5#:]GkEhaLgy1?M6'RWٔ*UfDFE:É|~xIi =lFYxXZ%=+كߘ``8_5* +G#ܞϚ 42u[Y-HXP?t8% !BR:vL)lֱPU4YnI!v@=%q~iɋI*pLYZkOԥCʛd*B~Bi:ⱸyO/)ν8ۗb4hp ȞNv.vx{Q?WjD)?k*Dӡ//F;yi2:2h}fsXe]hLo~tP:+2y HeΙgT\sI)L\T5qܪIwt{ 1{-JڑǬspn]\P7oY$nSw#^ʘmN\Y 0G6]rHv?!8(Vc;=١D P ȸJNp!u s)zcaӱHe`ymtWW$ ND*;+NgqqH(`{-/ t1SgO4SiMYWZݵ}Ω5&ז}$.^貱{AڴsG1"7tG_?|n3I` /WXXn"C0QQ*}f>x8PY o;geaV]aKüe nI]5a!R05zztrL9#.[{YVUc\sSV23ԕ,;lp/O4XJڶ1$ַ ;gz\zv7 C̗9%ycQ_\f \;82.ocq[O6#A!(٠:̈'A=cKWb@R7E> ,ު&>V? ^p GF2(pr]/H)z*\1s ZnDՏ *?aG0?A+X:ŨǷG #h&vh)޿c(qb-3q9}Z;@'LғkaY׀,IԿ%?,{01u/Evj1Zh04i0 8wܘeTD,ײPa6haE}On:1]_V&!*3Ʀ˧C2LT9򏪃udUgmSArcLPCO!}Nxrx'ynn?lJѩ5Vݛ) C%- G4^18fWT=R ~xФXw7:OސN@Vh}? uD9ɌOd>"NHs&Ԥ3LgrU{}XajfYHV U!kn(_f?hޔd\,ĨN?H9sOsew ]m_5>B/I)(ަ% ;u;w9柗0#ذc948 ;Ût2gv ҧ̉܇) \-ʊ+_3+sȕ2h;e‚ UA@HGgV 6"'нMAA)$W,яaŤ djcR,$hUiKeco\~HŐm9RK3{\+bsH4mDX<"*1}歑ʣ]#v__9H-{Iv#hhI`Q?[Ȭjf5`D.pwP/O(gٴ2?Q9;υEŋ- P/Q wF2^Sj~\|$%}{Pw JD'ס=5;i.:";QkյNUz~;F=SP4 ^5t?Jz`zhH;"=M+]S%B&%M? c;D&Sf~dcnCm4muQ "mo 4&P5VT[(nI* {H͎NWF'= fֿ{R714BZ@(u')Mm}ڗKt0=t ]q6)}y,Iܜ̾+K,fdo\H6<[scRߝ۱\0Z$qo# hL2 $6c^HxTct'L:MDߴQ;Mӧz?'.\Oo:mXY:x;k`΃YjLZ0&at呢A+eD%0ʗD#^jeM8 ʨL D@k)ňX> |V O9-! .Cj>}>T g:2Nm`՜HiAybX Xg)f-r[OJF(ewI{HBė |@!f2p3xђzv Ј"l60L=i.W$*JݥdA-~SsfѸQ)by{;2M~T)15cdʀ\b緮il 2YnJ{> s%$ p8ԅF&(댄䨓$?lVyĐ;(,|ސгJTr&/˟ /oM%Cm(oD'_.dAδM@t򵯃{!uc;Bu{y^Zs>[ TՈn3W}AXĭA CL|?;a ttc@F3.\x;7t'5CgYCT4C|*2=܁ wƘD=wwJ؁vrQǼ X }wȫO޵L!O]KF[\.y־wv3WptW GwQ|Ê% x"w ,-QU-'Ǫ7ϋ1K( cf>. T[‹q6CU U: d/'C{o}2ʸ.bIeh?MqTD µ_b 'q7hbOtNb'-wX.&:Z60ً5LV,D 9\'ݎ"2k7M8Qi 5u&S,m3UӅ=:-<`NGMxL Оt2b sHb{P*6$CQU)1`\F}\iC,dQ BrE+TmѺp U soK2b)]>HԹ.|&|N@sDݔB;ƃFKآLU fh;>œ6nw)%E oдWzƼZ&+Ӕ֪-iiS.$'8-M'qb J}}Uz+۝a|XXBPd=63J+)"st M'͖E-?UZZV5} 鉍J1rNZ`mYDÚ3:X]r1_ kE` q V\klW jhi "~esũ!&"P@&$O l19 )XgSMݼ4P( ~I53$a"y:{FO9FgF\z*s>t}!.ȝ>eM !Y?e 0WV<AV( QNPNjvaƇѦ=NNoQ.4% TȰwzyׇ C)+Ci8OHy"G0d4K6Xc՚| I}-7Nrpyx3]uثFw1.ƁQgS?j(:Rdʰak;<&(SVD9nC*fUZ]⽫\4G.ٮDgw4g%hxB !kkPnۘUj{h Oijfi$v}Kl9q\ 3?+wi+eyGʚԅ]Oxj2+_Zq3%NMBu-Qo|9Wˢi)Mqm`[\^$74VhG^U";GT+4]1aM'L_*OhFVBT^ʗׅ'[D')]7vՈ}LOH2] ǨQe}LFnvXN6V!߭/wQ<{ |:BtG~j*LX>mDVH= XFIb 9Wqp+Y ~ȇ?Z:+q_KBzvyVm{t+r jjACzM"b^M o[h=  *G7 +鈖,ULQ>-Kaߨ S.!,"3 9GEe*9F#}:.#M_85ۉg)M7H'20 G(4<Ћ\74 MHY릅3w7MPV=6Vm7V u#B,znniLQOǵF> g/6B;<\Q;1]B%fg" { I\B%7=E#| 7zDlC{aDü4vs2#S4ۣH'MW->lپ96qUwY㱶n½l7xup5x /q1_8_גSwBhKd%ߕK[2AYBr9mScMV\7D rz[ ԄUVM=x@S挴`*]FT t|dIJD:%H^X^H7(υ/ VgTH D`?pxQqT~- 9)d7\mcYo?m=$_6楶ͥJ* 4s)5J6IBLRƈpG%af4ڴ|Y朇@18[ tzm^Xyl3]E. zu. Tu Nc]ۿԴkp\pVVaݔD8ʳ^RC! B#c%tnCxEfh͘eYD lI6X#X7C} 8o]0sEZ NF r|vi_'@)y+ӚQyJ ko.WtGe&GmO}6rNXzYj'8e.7M zz]=ݔ2Ztʠar!:N{u~:O;0$~2z OVTW֍KXuV3Q9`r`޷1wT`<>0"b)XQCl7hYBǽƗ3+`.yP|sأ :%H6 {m)@ߝ7qt?|͇.5H-1qa(9iL]-+&wDŽ1̠Q;^pU'pdMyب}W>)rS$>"j  @ثnpC#fIKsS8Ԡx[Kgg'bH(3olg)5sSBK[w% >AfHZCBS`=#;eyDXJ:D<_`~V6'ށ:CK3F^c6s$X`|pN9nĿlIj ^8 P-4;Hq8:.1(1I 1/b sZ3bK5Kb ԩ,K>g%.*9Ylyn8w*K t g;oy/UPFq >PE7pɨS n~bZK k.⏋`\kmo+O G$1Mߕ=&̅+0j'm‹];ϏQ:~Md7]%3PoUZ^]4^+s36v\Nsq*eW*P=9ÈC4-EvQvw mVy aQ ޖ( ӡ)魏? es_נ%Wm 7Td4GB 5vB;|%+@LaI<; )EC@Bh@d2h- 8ρ3MЃذ^VhMh?;{'`q]khq} k 4 5>F٧x?G,}+~>HJ vqؒӾr7$ Iiǿ Ŷ|!,H{wTUR "#1P}4VeM2Y)7$'p#\w"-n?v?KBBL@zҽЛfz%;`akؗέ# o,6T5 LymEnQ/8 eb#}IZ3q_k}T_v9Rsi +! 19`Υ@WgPZ軶wgU*= m~w܅@j̶ۦsyLi2èLX#$^z#;:U=C)fB9*VNbaY n?_F5o{F J±j-/_PW .YGujdg;i:aGUFӌ鞡3 QÛ!hl6KT J'H ӏ{؞yI CFB]6e6p%`4>,Aiz2$ K}TɿBHXmRy106 WنW vOEN{^fA)"ZG*x*Y&> XLCqWk'RۨF/ZEvq"n:9B )Z, 2&X`H*CTn҉U1f̸SڵQ @zF3 ļC>p3(Z= 4J#_PoEW R~s5Dƌ(B؅$"e؇me7ոV{zZ7j6fU tU8FHE̗?_Adc-Ik=*eWS%KTffKe kk.>"A0;P-*6IO0j{i¦%"u֒Jc44R⃰iXvs#qӃWGЪFt#5 ż7%+G?g$|fp~6mHáѧ%4~ae(֕'T[u0pc r(:uߟ[gVYtm>6K8ީ0l]6 13|mF7/ZiV}[:o SA4§5PE?q`!ގR%:kuo&YnT ŪG_;-ʋ4ݳ_DLM_R5E źPÑ}񰅶m0XIR^K51cA*t][O >>y9y0x gqc^K.CwswXN!J *Kq챲z溽>ulI`x%j(yzY 䱖fr)p^UgO3 86PXăd:d T,|(WOT٣7\{[h!6O + o+ef>dSI20$b3=+/ʁ;] Z$Ɂ7 o'UB_Jm6OhpGeҫ|2׶.=cs3qog3(2c{y@Жhx֋1_@/Q||Z!BgܾKf޺ig)"Fu(Ü21nΤ:ٚ`8HuDqKp֗9&B^||gM#u`iөc.L0@Jft9AC꟡am`ҳLFdRn6R/$ @ӛFI})<3y9M:'fGa!$MlGxz+_ZD!G#k[YIcz 'Vy&0a* ==~$Β]bË*dbb)IUwM߁`s/$Jp0_R N%j;1+6I @'O8"Bx G>-Nmq!HQ\۟-\u41G✖.A! ed#~t4+J~LCC.U @*.LSJFp9 7uZcO *D:3=U Eձ'@o{-;ޡ/'icu⒥ȧ ڲ{˜쇘`gtB?9-=pC+YGcs Wľ1F+L Δ(n|7ސ ݛ>+|5,2BjQٍ 4]Wg BE̵pFԈA WgɤF7R3n$yPeO6&=3#ܧF 5dUXQpkSMƦ&D#d0ÄOTUogl:!*6O,3ݖϦ68UhKV@Ib jtÜ"xfy$|SXeΫMX6\B_stB5lء`LMs[ ڌ5Uj:qyn竘!Nл.209q`kU L K~ԯnI+(ǩ¿;9}WcĤ3a3zjlS@Gf:@_~ 9 BTO8S1d=|fz 0'xwܨ*JkGE Iï_S]ν>bhf厛 ۧbu{⨊ț g[o8t|lK%k mxIK@a&="$[* L X7 H]<Q_ 74.c:W<әyӷ}DY>|`9 vUryCuvkF q d &Ŏ!-y#=2&A1E>NSKEpscR2+s~NRߥH{/45j2H̅eZ3xٷT=֭d"h>k1m֐\6 Q'[RE< aU)T|ϥ,Vyl3X)g*E<KȔEO]+vx-\S*o:{zbqĝڌa1D2R 3h8Y{OǹX\|AsT,m-D5e>4}7TպL/fAZ9ߙZ(X&byÜ[ޯhhTD/-U/80E.-?}$IǢS"OrvB4ix) /MxRLT O 3uc )*1,#֧{wPa_uC} ^U8oBsu64Rd3ͳK_tIu@=Q;Xlz^EQ]ay]1@g\4MG#UX}]X\J=r\jd] GÎlO8ŒK:U <fXx_j86.I=GE[yˤL_YDFt|3W%3dn}jֈVOֆR IrTZ_vQ15b@0~gjA|O -kȶ1ȧ no@m>jPoxBQaZÓ-d4 P\g{,lR8(_\jBdBBW" ̙:e;߹* +i-jp>~X\8q3U7@%RJJ@dXHL/RD%7MtGLm~xu'eN"GA,]FVڰ9.tp}vc !A1C|hGRrmXxAuVYot NEl7'J= gd"4;o];O*2\z^ ,y0 &dU%9%APYQKkXPx޲!vD[9I_A:)7' d+{dq{l<ϭM Vʖ@aD=X 7Ck{()opˢWg=!{Yb"EѣUTT%eD?g$@o`1BZd @Ռkj~b;x9RQJ;a|g-+q;L6ף`.@LDa_GWp9pRf]җ #d `GyYMzpF}qP ?luѿe?w>M^h uaEF< E("I7܉ Ol~{NzC=^N):TTrHp9I]D]"98׶OBsN9߇1$2h0 |dK_(*~hЀ24QTEᢻ^eϗB߰{o bf5CC@m#(+^Gc"|K8ԏeӰNMr1+I<*hMsN`~,mV!A{o~1W˳̨cfoFKҎn9=6F5œi +ąN ~܉S4EFPF- M 'r$L-ѾQ!^}2#9T~SeA%M pƷ?g/c ω/vi w&m~S ^MlzvHcdYI(dմQ=K8@;')e\,[.*stG,ӥlC\ݸۜS'fdd^ ͲϘ7|==$?+Ă(HY$-](\R5Ud˂#2q6 ͜&eޗÍ[K듧<y%7* [}TŅ?xISM+ĵbi`cɁ擹N> {ѳ1Y OռU5^%kaUw RsSIos-+`ɀSHo7M/R {-BEgZyE]FMӌ8'd DM6I &UzJj_:Ms1Qpx7@\ %=yor[ou~Cn0<ťHI(L1<^ʁt*,Cdn]*QV_tO4šIWЃ\If︩u!>^<@'Z`::_.1K iz5Q?wEʈkj *_&*|k3rgn9u) GiG;9\"Sc5YnOmlJCao{IO?M+vY)W;v*I(}6` 崙aI^ HDI>.ep7* b,h?%"4WYPIUHnܞ1Y]<0KTc?JS"o!h+]F7O3DY<7{;z$mdplSg3.2{݄ h$^"[Qgm^OzzBY:&YqMkqA j-!rx`h_\ QAf!T_5IY=̑0|}O a^B$g3Tr/pz,ڔ.9*8R^meyj\._7=n(e4uv͵m2fT|B[+ rӳ8-gEyxQX {2awkLl+ Nuy8w~0wFuy_m5ڊF*_ĸ'`5z*O3ݔ堂Fnȟ#NMs qxP7W_V3a  yEU޶v"k%sBizsv4*%ga-M ^%~ xs$:^z58| rw;4#0`BBDѽ-.t ? F#F5-%{7a㆔=仟KY -Y'+j1u㰕| `]ؙ`8AǏPXΠ&Y?)/[[`90#yo{fOxiǷdg.>qSCo9tJ]ζǞ+:dɈ+qN{L˓4 ,=^+Sյ1=RxU٧IDBk6^*֦P;MTHL!@1ZpdR\D¶"T4_<k뉧t" bUw$t|0:r V~N@ faéjݫW RRPRD6# H\ fWIo=l#?uMs]Oi''jѨ:'0âpmdm/@I#5$GL|VNL0X]KDi /+H`8YkkԧppV yxiB8 htgI'ЭrÅZE/Mݿkd,xzlpHE)";]k$"7-Ǘd/UGkE)f 7r5ivT",q`-ŻmNo)~u >g&m# "Ꝋ-ݷS!O"+>LmFLަhaw <"Urv#(4f F%[DY*v2)mwD}MhmPz%^(z> g {^)[3AJ z5˪ʧQ'wsV؋Qz\ zE$*˨y<#Adfv^'{(_ 8n44  Mfc6~["^?_[ dy`o~ 3BA1cU=9d>]rD偒r.D|9j=Kۆ3oA`"tK:UV_NTL͂/a} q9O K]0'ULjzFfݶ6[-3mL>L }1I}$5:̰bz{țKk) .M&LӅ] v%pXv,dsޝ\^TMDmfJNǚu,=0,CEaMYP#C$9*݋`!\~=_jO+1r.&{2r3*{MKau׃Àɮ>{HZXt8ah-(ol~lCvfC!vv+;Ip{ 5m&f}pGo'"w>DEC*Y$zOI} G7-3}kFGjVjہ ag# fm]{݀7\sMWNU[8Oy3jPeLZnaY$mMU JMëmEZ_A/yR3 ̻Gǟ7%pAVɰ?fY Ur~DF蚭zQz׬avaRZ8'ᱢD/ų6Ԃɸ39ՖŋJkȾOؔ~]ըpU3 GzI2:%MUR?_ЀԮNjU_= tʱ=5e Q|gݬѐ.a2W!>YɊ!'tf p`'}VWyS, ެl<*Q/=Mh(opdxD_+ԵTuVkKs3Mr_ /Sy]3E.GPVjžŊU|a=mܻ?ňT~'E ,rga4kI+~ΊdXq6^mݙ)Ӯʢ%툁xlb%smӤ~Cj량J yXʝMN|dWn,:z(._"[{O+=k.HMؔqxФ'WfW!tT5i'2.TKj=BdJ\;LiZK]5Gjh\ܸw.ar ,ϋ bz9Is$فJOXfWB~Qf[LGA[qSeAR-}kx#Y/!1_PXi6 #G -m{ɌKrOqU'kCsgɺYsNS٘cVV$(v 5Gf ϒ) Znۓw @x;d$~ւ/xs#k v^m"^y'U^OjK5%4o>jISȿyVx1 .$eP {igGz- N냖{^ԹLUTហ0RG'j~Z ZD?jN8ORhP;i /'_Ņ)i)y}@9_Lj2;ỲɜK]P)'loH|*0(08oJt;9E2'8Cy]{mBR>ܐ`_-RG CꆪW#{uCȭʽYc:m:'" u` E6jJF?bJ]v787-9jys$[Ӻk(Iҩ?#+hFH{8Xqc<2ZPBcG5|g_q{KDVl5(Q4$RcR(~AmDDݧ3ǐXㅓfݦq,_uN/xP3YD2occ/D"1Or^LW݂H̼hcd+SچY C!o9xkBwwS1Ab~J+.-*'?kH3af)y@n2S$0|#f@nL #>Dub&OK/[$N =2+nɐGȠtiɗSwט|ۚDؾGQf6e9p< 2qlW#8ђ&ZP)"pѥo\7mo#1+"&/n:w@Vn P=*4 ~rG6ɗ%lckww̚a{YSˢǓio hzϋxop ZrEyp\j_lX@mκ1RߵtU\f pCLo9yʢ 1m|Zcd4eO-0Jz˥\;4sOxQ9'G$S~u|ov?Ԧn64}pCa.A}УֵAQH@Bjuu0fR}LjޏM2}.YfH52щ¹SiSl-@\:>il'7|('Q Esgm-_=a= iQ":D.|;uR߇оr*`D @L;23'*>5ˌ \IH~SBV.uuTaW a얈0Zxu@D!XҌX!hʞSXEM!EKh iuV/ t2_~ 4UbXRBOES :DT EkݚJJs8NɤCQ K$=X s;B:y\ q4ƬGSfKuMw7=Y@>c.x)E[93'k8hƺ?a7r]Max /jnQuu+uI RI#;E]bZYj6n:ÄB:(~X !?&b8¡k>g탴[psw+'7zckw3mE /5JrGn0=V #F'8+^3'LڄL:|gj `0Xz M'' g/m(/W2fnB>2հݪ^j P9Zxߏzg͞6i p_z0X[UQ\0F> LBu _l쫾Bҝ 8TE)23xM}GJ#ĦD+S)ϑE3Y!} + <. ੝J2S Œ @.{5UӦ.`G*Lu5em]݀3!R`Z˸5=Wq5IU4ł)#$QR,xA_ӻf]m~&T3V[::W>f_U.jL{|@0 rv_j^"PɎ}Smg_p}5NBp ^ HEǟ.꼻Z{lOe;McWYؐ‚yBNXLk6Xlưl#d"fN5>,\Dq`aGw:,. T*'Hi,:7z~s QKǴO{Z-/>*)XO_ՈwS4NqZnj=/_n] f?A0KxqʘI [/% X|F8F li__Iԧ t$X[#I$;7 9Gt~ 䖒N9Myj*r>K#٪RNOWg8Wd1ъ-C̛ЩTjt:H"Uƒ+pF)oe.]' wGee})2̏yVb^*=$l$dE 8#o_zB0.0UXY:j#ҕ0vUh{-sD,(tKPƤ>כWe7GbGX8l pJ߅K3etA} n7V*wTǵSClpE]ЪB܏g(koCb)&pAv0tRgQRy/FkOF m/jSK!"rs#X{߭ .EVTvU>x see`(9V`~:ٱq`@xdNi-D he}uDQ:oP<@V XlMҏ׀0Xƅ@I[=74 RX@`}-ԡᑰhL:8TڒMZ"C,w}w-<JzU-}{׈+I#&]aAɾT@$ x\ھO3V~L";kܢ* #>t֭*L䆢AR%c=EgX)]|]sOzS"3 4R/Q\FL|#ڜ0mMGJ)2 8GhfXn:ǦQ>䗭q&Ѳ8w'*ƠDhhJfX?(JoB͝g=w5iO=Xjdj@BA mm~J|lY/Yum3=( a٪t3Æ _5p7J9f/g} SHfĴoQ 3n`f'H&&Ӟ9 m;`zК+;ܖA_t_Y<:j /)lrݯȬ*^*Rc*eZZxJ\[Ælu锎Q۩izMBzC٠:B`&~䟡=%ќYWrs%YE8୽ Ecjr|ӞLo]AStBՔNiD0[>;C]@v_O>d 1Ϝq>,&x4AKXG*8@gw ^/${lX@r1Z$:dfT0}%Ż̏Dݼ2#\H'^*jƊޗd ,Co)(tCI4:'Gލy@!Yxl{R2H4@4:N} F}2X" i^>ٶR>fU@`pcA`ߜ؎%#InEĈ픪& ҭʳL'oop`W+) 0RLh7[m燻Tl =߶! 0b&W =WRĵ*Y% %Fz758fEzyIMsZB?||$ss2|v~|aŔWtSu揢%ee;#'# 2)kӛz8-`(͟k_p2J;ثVBR f2(i!$9 (>+kI 9tl-9JjsgX7~"$%n͵[1V[bd QEWKFtdQgQKwV 蕗g&U ).ep/P`kt||ߐ'# :+jdE(Xaq_3Aը~P? VTf#p,~yO =[y ɳ,|hF4(3|n='0V+&G"9uF9WOD "rY:0s#{N:)/K!ٗO0?ޯ2-Ln_U"to(9bVLÎ&OB}(^}u'`g (Dը)ſ]CP 96ͭS}_k1b %rQR\Cߥ["u\{@ h0.V#UEP(\=?nT2Ԃ/0k]ޅ^=})D(m) to,q#!'h) I6y7MTϧ1 `J T쇱Z3v$ߓ >Rq'h*/ԱpS9&0t Yq=۝{U}fRC w Kpo@m$En6ҍB/'f$Ar`+cqwpY@).R&wȔ|C?d̉ m5Fb}4:XV~vMaW U]Y_b+OՍdzax+ q>Pqѣ`xQ`ƠCFL:vU{ naK1`b (O1CNIsv#,\`3 *2PK 5 $RjC  4}#o&P\2RX@*\tB9~Bc"*>*Z&~?`v 6`(gE#@ݪ ?YTZUPY[Zf06U~'-0L溗"xZ'*OWIx$675t@M+B6N=q}i< KTf:Ϡ2rx|-6aOYV( ʣ]L\m\7[]-tc:& ~YO2캨¢PrÏ7. }槆䏺rR>EEf2zD( r˭ZYjsO&hjvQUar2I ޘ3',^h W?L%Jt[y^*ip*ՍVScĤuzK_kFn? FwLmwU_gAY8ů*>z5W$ug6_ܓk8;+{u+Zi9<_|eB=M>Hy ۱؉6+Ǝmcpγ}zKo3 â$/ aOO:_VL@0Kf;0\a۩K:@b)Ά7[F$NmwQwEFfu AJ-RGO{Vk65W>E`m[Ik:?W;yB x ZL3\<~XIʁJBaj)&[~9"[!X(2TJRp+ D<>۝ASrN6 tfXiV$3]3B!y,zq5KM.1]oٯO`d]" fR'(vs3iYq?Ҝ3nC:02@0|pZZυbQgԖ+!A9nv%;MeIka "8yÕ̍'>W~ۘEMYʴ,cU> $0$ՎiJ`bsVvCLK0kIOD[lx .c mR?N3cpTۃ[Zz!q3ק[=R;.fg^7oy] .ԊЪ#xAmP0i], #r_ڳ4G#FsCPRhVY(3M4M?rSѐ7YMU@t#s`ޞ޸ &䪠=l%e. '~'\yp: \ffˠa'uSq!ی,nCt( = 2%!%.k!6ܹj.zͻmd5ETkh$kpdKJ;R@,2ĒBK(#qh`-9P% ͪ^4pku)~Iؤ7&y]K^/swoo\DgTRΛ{ǝabM+=ȉ)hO,&bMʰ7oJx`Ξ?]t'|_ G֯^9NA^fo7la; 7{%:3Ѷ1$ W|z,euUxWg6ccMNhb~*v|"15i]O#vh/W)m>O 0uKE&2d;2G<0{"g׵ݮWIGyd j?:{NyDk\U٠i7BzY&ܭW"a p9,oϻiZ g;х1poIJFӋ~R lN@in%4PN\ jEBE\r <<"^K>xFɸ͍[EѴ`A= r--4,cRy8wU蓨Tշ{hc?.ic8`>0q-q]s8zsk\Ĕ qEAlh 8a X7M}79լ5V} '/aF"<-c˽rJwPX.Vy"7\12.g^0M&FG$N}b>q0c ’{:4McM n%-Dϡd.=,-zY/0qN yp 8;H:flh>h8;f3若Z\ ,7; As4 ŻDDp$!%-Aaݐ捑f*!v.#wOA‹g*]vM3YL*dEMQȀ~3[j7󪜷g |eq΄"ٽH22WښY% s ??`Dk3LF՚Egm=2ϟ23rъ ᷑;dpɻS|t= j{ܮ{®KuCsn=+j:geGiƹD@@|(Бyz\v7 ;{7~ 6R{B[ԸIAsb]‡  W74}DOY8e =CbrqN:y9 dE.9g'.GҸYa^l|p&njH6]kZny;뮮1CoF?$t85| e5@9 ܀Msh ;6c*%'mtp#TBZ퉜^! t:Òa9#WW__c{)O cqP,([6XkAꡯ\lͯG4B[xorTuPC}5pbpw 7ysDӫvlg3Ep5x@\\&( =ttht[v')H?V/=l=͡V,=[WzԴ2疇3q,7b;39|| 0dUq7ߔbx1%%2%Yz\UCbxDy"4E<8Ug4ooe3 E5!tP q܇N^ _]T\,ImK:Ų_ ӜR@ċwMp6MhTݎr9]ש^!q/fxZ-R ukGkꎝ+VӣT}ƿ[Щ3`~l)ޅo&rWBL6w 5^Uhъ'l{pƙT0} X^,i  S>;BH$9C8RǒxNs`M&|g0ݔE#=rKE( SlQ;Wx{Hp=zЧjFnFh|Km`E̵ 6Eܽ˟ |w8s%ٓd9g"9hMȹ{4߀Qq..|W$"0XT *iz'.Ld[6ROIYti0U10M;9ƒ|>d Mwz}r3$mcG `mvR]QDk g -n;Lr#1is 㠎:%]o08Q[WϞU2ګAQ#>bO8凬1! ("| l,;Z鳢Cp2 2]2 (MT](# i%BEᑮq9cΤ-(Ϋuwx|\ަ7*e=<<,N"'/T4`t6 1hSXm)aҾR(2T>Al5fپ4B|^^e';,FB!' TS}9V𣄦<\j$Zel1,7yVԁ^v9dD"tՍͬH͘Vc$t]EH+.-Hw`!!7-,z֒ԠKdhmV8vN* g5/]֟_czKOq+MN Um18EzL-^= !== $. i,ϰ{ǟGKgv(/H#0Y9=6(N_E|e`Va'SۑRwd_.vOMV%V9/;fv~ 渪o\*n9#*_nکIaGh;*]%:% MuܰYD/BH)/]ʍ彀ҋP1^魫J4cER?l4ܭAeEw9Z<]Pek,"TҸԓg X4 X؅K۶Y1@;Ft, $G6oq%l5#ngShEO@e[? l pYim,FybYݱ=艊D"Uy=T;aMf/O ;T?Yߕm.uGpA1}+V8 Li8 &kFa P Მy>Tl%H8BضؗE'T4hn(/ȷ?i/Fk .=b+<~wRNF%۠E85K_܉}D4ssR{PϒT+$'z+}ސ":gMY ~ARB#ټ6.O,łPDe $Wx Zyᨛ>|yD.{W*!7.J(f7DЇ0`*ق J 6H9. cU%*y@y'y*qLx|#ʋEc-f(]-rE o**(VU#P=k%ڗ{skdآo|Ilp2 !%=?2jpъ68yUX Y>)d0:#aP^7A,!uAC_T 'b6kw^>Oajs"\ &؊IӢgu#\=)x3Td氰xI`e4F?mUNo{iE M t ]@1}9!/ Ʋb ez YkA.j bٓ6Sc.˾jza*jSp"^*%*LF3*K>V>ז7~=rӑ~=xDaAUy{=y\ d G,"S Ah0ٝ?.ϐ z|kDe@vElΨoԴ.:yi'al/tRHJ`41&ZTc5ř¹[u(Ha 8 h Sm}acAY}m7J4-C^½AFa 󂓐aT.᱌" kbb璾ͨbg '`ILCSjV[˭;D*{D>d_o|;a(6Ap;; 0l9'V%G;LbysVwoWH e8Иƞl-0g<5? Y pKwZ8ؼ:S8k*xB=Yv!8ԚkNSXMR\%bE>| mhKLeB[T!8A. )3Ad E{ %uG.>`9qT#g#fZ V)<5k%XBe<_,0=EIs[jp4Q.|`F D E+7POU.cJ Wx,-%AYZghuaR04L& fQj-W Mc* 0'{TTંbD[g4~v/|t2N4Ma7d׫ǟ_ ۢv1kh5' -V|bjO+x//cL"xw*:̪_RјYM~j (C'r#] !,61as]Oukp+ve \;-f>2feTH#ֻY5J(U$pI\ gyϽ 53xX@DN % xLTtEʔw'gÄw l&+oεQ9eCXcxZR5ug&P;ФBX3޹1J5l_ۭ^_I0ED ˒g SƖ,hտZMjUs6Naemw KQ $f#t`)mu^Py_zk2ZJ6fs=|LWsQ*u-k9E6vM8aV +jڻxcs7u %hTNhz Zh, ]+H5X =)ayyȀf]&]P}nj2_&!Z GR$7 !,'ً'玔 ynwEUs- 'UZ;!Lڇyz@(R"F{ʃҗ:XҲxd, #wJ?)sTEU'%uygA sȁ>%ek&|\#CqUʥ" _ "e^G7Q"_^k_h`^|`` ͎77}0jTX0lRe4rR0l&(;yu:S5 $]<4:8wn1b!2:'* J!shX1kD\ttM{Mu5AuJ?ƨY/v|,mgplXO!b#⧏K]ԙ@;&=j0xيCQSqh e:J:`+ΪeW{Au\5}\Ckl# |\T)<ȔǭR)e>+l~ǡ >!.ժ*Fr8Rw   g2L;cO/LcwJgXckuvK\OLjEYmV%PSS]w!Mx)&&3X ȆTP/V_:TnPt lj;1E}]i#0j 5oǥŢz,.@_!ВB_A;X7fL5+RC0L^9+Gm6i$B<'3/Qm9cKA+t;.],MM5z0Bm\2a:ˀc>P~nsV Y2nqJ>/&Taq{̅:Upg;\a))A.!rS:KAXl/>3:v!|I:FDV }UM?e> @z>QCI P%\,/VV|JHթ6 Ju׸Pktde݁=գ.M:: ,CUAUk)" $FE3Gk5.*U5Mcͱd'+c c@#_VXEQ(s^Gv! ͝49}^ e ͖kzbQż5/=D5 Fiê [PI*V6;\٫ ,n7Aҧ$)a;iZ f ð&55לyorXZ@9]妹[1sZ^yH!l %(>81= 3ZOc9'UE$*_܌j;8/)/mpP3i2|пqe2]P `'bWRJeL~* ONQ z]As,FNfAbF24˺qXP { ;*Nw{-0oke`#ko۽.JxnfV;״(:47dGp8&$IbiEm|],\| ~2 B,Cީ鏖0khxCfHbDLXK'rW<t474,-W$bD c;3\̄ ed,n;_ho ֨Sb$`}i׺f= mSww~@+]EwWh\]<K !/q:tNj>տƉXnp"tL6xm ?xt>pb\ԁI9rυC֩ZF63 j__n$w"=8p7cϥ+`axGr{;^gШ vg$<:k9:Y mjVW {lqZgY3MVxYU!I =Zd-L?leLYx%KιasxAhi/*,lH*7"M[7WlhAx& ͓ &V(Rimd"diy}#]wހ+dU_ /$WmnHA-Sp}j|Bռ5Ζ0nHr@ @qM $ڜ@DBPakMعGV _/~>$ #Q_mhSEd#xpT7x:%2}` *#R{&ٙ(l*ʅ_儨Y>tŃ궎f7j݊X Ԋgqqq4CaC,t! ~21g ?Ǿdvg$/YRnp$ &e)2[xFE y=/j!c ?o}2K-2f@'“d$t9KqK^CE2pxdu0O|1I56'eD 2 [a8ԧ`W hkgxBdF2J;yf$oRV3ς Gm!I inA.2t.[Gm%"/iq$gUb\~2† ֺs{&gKxLI',1Xm>*g{}e$lfU#\5tkJgxfá=uZj_><}~*}~T 7̀yuy^0%E*o;4] ~sa!ʈf޼zxK:)*Q;@;3Qօk)󎗬i LC#rv +ۏL(X["Q\ %S',pQaƂqm1nƁZZOGxY:2(km3$@6y NR2s  p*/я _A6J9⽓^Y609bD}ҵ W\}3IS_i~/2pZpWǕXq}v܄mQ7 &- X N@?mOvzjV HS:GpY~D@7J8kwb|< FN>AuQ?UAIRe"x‹`ɦ:=ƛL2R$4Nb e3 gC+^%ᩊg,(yAX/`ȩ^ҺpY弱P,HsY]CGu6qdvi[biohNqt?QC'/吥8Cy0A7|IsW&NC.'[ 0:'5{#yiX74 xtK? OaR}A)4Pչ<ui.c/Jhʪe#`QD-!wÑU1FrrA @ QٴsgΏѪ{麲\}B{)ge?>:$tڊ] 1/@w P&֥\'H[3Y[[A{:ntWbjЖc yEK)Bvss ]wVb=N(9PƛvsM1k<4JE\"[Jݺ>Ttq“LJϾWl{(ЍK_OEg{h*#8o ,h%fOq~ 3#PMO))9J8^?b1:|@  G҈3OT{p Etk#"z?yEXr8! HaÝj;6ޠfp )V3o9sDOOBH&?`71ۦ=h҇rc p>>o p .}錘. 7jz6w]`D"&\ӏ3~ P?&X}ڍ4pjfDVBrwK !xWQGs|+>Z XW\<L۹D' /K!KO= /ZL:7W2֧Y-<ݣls{ Ty ;nh< S Yq LB)ٱخNt7?Um+aЌw4֓!;VdI~DRR*ۖՑ >4nڝpa嵤 BBe"W0<j`2]OS}x|S*Հ=oN1)73:@0 ofN{xb ʨ_4B}^G0TUVcCC6Q5 YJ&ܣKNGZU~i2u8^_Mm F X64}Fď)*vy(Vѕ)* nn6s>zZHd.;eS9O: TŹ(c%-#Aed %y66H:i˞vsƪH۲ yaiF1WBKϟZtך{nٽ2-kgQ#fI:;SO*ʇmsZ?I;hd Aȇ 3"+pGQopdxwm$_0tNch ̔i:XCl"PjH@<3=Jt"k)4!$n Gɣ0q΅#x}cFҾN-pQS;ƿVwqܽs1;Nvv~ #v93đ?w>J8HSć@/W0oj)NZ v\5{ڎ~UfiԼdUhTPGGVpˏiR{^pv4?o(cm+»m. _*|A0c>u]F^Bβ/*)L3M6U6TN2O SAA6⪂%MNId<D 4b2!U z,GP$BIRQ"/ k5]=`bm܂s˹<~:8{GD ~sq2Q[l~v{IOV~游aCNyv)f|Kǘ';SKJQwveI̵oճ j8Ì8f^Q06od ЖuuEojMOFdxl\:2_.ahq "tnķ{LavO]tj_H0Ќ#u)P+&te@@ue^,B_J;pV3\ iK鬆c o,Q&f^ k42= bjdzo:/:Tb<ȁ C(sK+@̸?KS|TV[ rnr3.mEɏݞL7 afwlUd-|{!m"1s]N43r^'HB7{) R]!V"tHIQ `14 Fc<ЊdT,P$؍>%aqjȞcV+fʋb<V{GmD}٩)9쵣0|C4J!ܑ;Y,/C8gnEX̰e7vbkJ۱ZJ\tSsElY&h+"A6{߷|N+e,zyiLO0bTn4|]% AxVn;^SZڪy MWGc\ۏ aR)B/3mIl_Psĉ=ar˰$#ПO=nc ]թkSZm-Yڻ#J͠/}H`R;K{0bh 65 )u_n ݚct=P2#,uw4F5}GҀzVuU"tUY`wqظM-ɓa6R'o΁A̯Σdc Z`#:A u$e:Q3!sǗg0v0< Q:N;;u+ 7i2ɨur.Wm`Itq9X5-~Aqc21P!ړ{]oIt4 kKMD.QO[Syqo>$ }${ .?̈́p3h 9ET;{q=:nv< t2ц!೰7q+2 P @Q.sY=sJRp1GS2ݯ, ȭPVVSN fxAO?;Cńއ&%vbNJ XT!Sks}q;ԋS+8a$ewUWg4.@YE .KNFɫ_U4t}JMi:טDMdI񕅼t}~SCuJ<ح8=D QԪV27X M hXA{ơV`ش׾XFdnb4>`RCKf6ψofD%ldCGm5A&Ԁi$f48L翭eV -S]ͫyP1[,Ffjg,Pmp؏.x,8E3 rIɟǂtl3u(1mMu7ПMͻߕD0\;+)53X"Q2Yn N!":bVjGIhlQl-أ&M(&5Zԇ.ؙԡD ڛtYQR@sR_aVwݨ'i^J7"#2R8of|f'ʂwWi=@/hyR#T:@B⡝kdko@}tCpٷ Lpa;ߊL*a Y㊎.xM2 @MTR%vfnq$|1kx]i2 z7zNǴ}v*ˎaZ?\oRV?QR!*BgLf3A\Tx3XAtnSV-(O^S:gXHm_ax @+08yAdܶDt,60"UKI7_Ofxo p"'[W=`? Q-0ׯ@bB+-5 I= 6BCRB^;TW[@ّT.zRAFh8ʈAC\-PGMQ*z`$ؿhYc79qHQ6< _.Ɗ֨ nw]gF@rʙ}{ {G3{'9Å2]yXyTCsDndWE2㧱 b!oxW޸)߰aQVqpɴ5rnN*yVHr" Mnp{'Qg 1,K#![O' +Lmiuk7]L7BIj^'AV9l[/?+8SCk ͸+Er#OJz! 9x#nNefCUdyRm5#əYV0Fjez~$昂C.'#660Ɲ}OP%r0|(OfQ`Had M:u ihȥq8c;SLXUT/_iX˱ʧXھ%Ưtdgj"B r/s`+{掦78D;YMړ ӂNj](ykL:= 45=p;z!ज़<#%0m29@PD8P%RIEDT]l!-;r@k.9TMO8fM-,k^{:1k }8.v/t_g UT (z I=2- kd5M[4PlP5Ain8bB_&#غB{ P ̬Ler-:<|*+YW6ax揺kCbDcJA)\Y@<0wE蹑upږ&G45:M:n+gYnmpiRBiBa[l6Y-.>RKܤڢ$xx||EZ{݄;UN鬻z((RV S"jQC%Rgw)+PaɵʴqRd|sKW.lL@WjH)bwg6ɝ iQlQJI;iA<%Ef+] aKo ӗY2b?^۴YQX#РҌBؗΗĺ}Adg;CnҼBE-E'rG^N:A<%k&@H6viǓO-cO2w9 /uoc˂@]Bc9SLw㼢]^QĠbPiqhTHeXϜmk} Um]JvmA\ ! ~UĴ,m;PVx$ d^VŃ^,D4Չ\;kl^^Y]SdLoS-}4dX9%v.:e^QkmR{Ɗ޶zl}|{enCHs`12P T-*{. sU1h9y1i3xE3ZafV{&B^/a* %WBÌϿ/[=>T#7QTP>փcMk#J)èɀmgSo.p[w``u> `qNaČrg]6_:.~x@%MS6L2#bS^,bELD3W=@8]h KI>u IY&z\ GƏ5p@#bbB;:M0>nAئ$%3>+岥s4ݩr1saE*w" gݘ+TﱓWVZ)~yp<}~>xNg(E$,vC<꘽J/8R rfPt,M;'Z]d=b8vx?K[G՝<,TxlF-@ o' HysA Rpi`VYeC~Su6 (S/Ƭ_18=4/ g]_f5ciP|]%GLfwx(c魜:`a.ijH !4"0Ag SAԤX.]DP~C]5T7JV͇xQCKBrAhhDp :hSX;w% CJM׺U' RG+,ӑ7V?ZᚁL0FЩӻIb|Uj;d .oClˏ21QZݡC !߯T ί4h$V~ݧDFƒ8]z2T4R9h_6X^\ Jdv;դ?ܑ3%lK nU1rTo8`fl#.;E-IP_X^%]}"X@ gU"\W_Hʥ)Io6dڟ>_1R)38#_?#gsn̯ cT(4,ߪwB+u龜NH7l6ss#nBU7qwY,5тէعL5j"%̊G 7]u!zM]3:7X |' f墨XDo]Ň34Z $L +dJç!.Eoib0bG#~bjO-G$@ orlߏtmN\NpݗtG<¡&mXΩ)8G0S(h[X ɧ9u~l-"0/(poOmE]+2Œ;1M} ty#Q>V((1E9$ګΠe +nlW*F)E2[6O +d hTENI533 niyv)uק~cM=bJJ_:r:_/'чVZkPylʧ#C*Qɮ1$( 9#gy"bR9Ng#Z"%>Jk~0._AGh|{n'p@:ŎrGO]>RY1x-sI-"v`;L5 d+JSIWif+B Y80|?O&l\{N  .STVhIK[p2jG|Ą5ƌx|uDoQd89:_V-jKUz  U9>G*^V̭}irv%MZ`-y]=:XS%$ eZN{Unx1 9z f_h'a6kYSR~Tͮf(,)>JoN H2nOA TD/\K.4Mii! JLuGngf"U*O:"#KHgafv ;͊qW)gp`Ծ{FSSz\LfXf$lu)6hP>#5 k`֙fp0lF}羝UT)ԝ=GeW4 0$ ؠ SU_Tz3->8 נ"!"P]O@3#Fxo&4&\:&WU90K5N?r|*T:R_,Ki]E{=_jq?_1Yʀx.̘Xx/B}lRSk1UGx]˝ _=Gxz3 _Rͱ~ 98Gr֊x[[Z^=  h$s"ҽӧ36h(x@v:yI`>}.oB(:n 0HyP` K!_{oi&MCA='rgOY#p_n)P:E|w\̵+b Hr~+Xrw d oB RG !֝F^VO"Qjwm=|MwK|Jү,ߙJZ:,'pg0kmb̵cp(>M<^ T1+:se=sA1.*@̈5* Ae{W?g`d 2SA*K?͢ 0Ž @+V丛o)Ph`z#s`yD:U %|T̛%wBu hVxv6BFG~"#Ua萲 2&/`Ota>oqL.JEI+ 犄khM Z?D_Oz7!hڤPaW~ ǭDs5̱dU.8/_ )T+>` + y!l;֒KS5X:*7ѬZlWιCInTN~iGr;C\5r~1Sn}ÆWYZvK*>o?v ~K|NI-o-o[0i!3FN(+wNBºa_LIcޞ&X*M;Su?,P'^IG6tzPwy>]F]ehWmOXVL د>rTz8yO2ٯTX_nwсU  |Ն,Q|%fyOinlO,PL0! 7.`2q e/WXōQVd(M0ht&xϖaWu+d:%}ӐѺӆEnh+7Wwh"08*SX޻˺\4'Z{’UR~uWyթ|2pu80o&S ,"06x4-suiqJP/5i)%XizzhvW;t "w湐,iR; ΅8H!Dџz!ѤZgfO( abh2<n!x+u9D|+x9E+% "|vC^*=BЋb:ԭ'}aZH`JTшDG!řbm꣇i7@k;vG0ߗ\bsDDr o{> WBAu^0u 95%cKp gթR.dCEU7Bb~t~_0o) ǧe7VW)=LӁJ%,XpHBE(1fc֝v)M3?ב,.DuW#:4@J0}{Q[670zbs(4L%؋hv/KpzsZж!~#`ȑ I|86-u#\?{EhݾӒvu DULNi!7(Nm]Mtۀq(kwt8%䗑.ޛ)| iUۀI*|,݊P4r\Ӿ />xټVh m?|c'27 :GM&r*׭YJK\'Ov:K΄+GYϤ4(#`YzD& c Jc8%%Y'hI͚ Ci#{02X):cM A/_:gZJ؍$xH@5m%of/ q@i[/(+/NL0͓h!l1WG<;?i%E;/TtHz㪧v D3- A^PV',ПD$oΞܙn&Vu rV;:S}m|_F*j_^>;'iwͭ* _2E:bwa@5e@5e bL$`׊T':Ύ% &c5O;e ~g V`ҍÐD3~h_lWMNԌUUlXf&:zr&k^@bZy5ON覨w ]7EFtwD!#@^A._7/A 3 4ϵoɂ]WE±PY|HbRɵz2]z3#T?b& x2t8@ʟ̭mp$?Gx8$<kV.̺\ MH ՓOξ Kf%ߕOdhM4aA~e/s LG_oz1$ M}2' ϺwZD'2u/G]=>Z Ǎ$p#z+6)olni ~&4vsr9tlÈ2xBtU0_{\>h:|Aw. >܋f>͊=!2u\aK |Z\fTbdÂI_ N}Lp6L(QYeE BVus@BH ó<|Ǯ[/h -V$Ekʷ̵ؐcX^w;Ъ>l=VHt@<%c:!zvj,nU 'm"|kRپAH8~A5 IYye2&{E AlLH fHx|>Oyhy!/(9=aq߿JW gNӕr"|V=y|GS[ ["B%p2uoq/HHhiIQKk2kmEd!{u^״(FWM[W=4dUAS&oIXy헔2 0~>oefj[&Iw9~v푖d?c%R_g>EH[×lXБAwdqr Xށ_,9N *UTZ_|b Sף5/]fy=Rxu~;$' %7$0!\{d`$ 2p44 l G&Y$> e0V7 #mA@UP% 3#Ȑm`+/*vw%G˻jdcɏb!VP-€Z+y &R چ^H}Xu3#3Q/\=S U7pej#Svzyt]`mam [⡦=_{.1O~i8M+6S" AاV2%1, ^j0[U直IPڙ83dXH_}\gMT#'Г$OjDx A/&h*s88G5n!i&mr~ޛn?ٶnPDyY禅ϲyerωS} AIm^%yF8TYKISPdgKc#B%`j0X1X0Dc}g:~uP~0RfT_F!C]#s=0UXlLS`vqh=h 2Q5%*yޙ%PYdx rӥaYMlԵmLu("C!'3E'%no،] NzX=Ey2YﰅoY,"yV;S~^&TtA^ϳڭO|F5Bݣ`&a4F`97!{NIe3eMVWI`X"?Y1Ԋ282,$[(4=4EMҰ!УVf~V۴_S}|?B-/Oy$6Cd P-.ÏV_vnKXNlbW'\QB(Z^'0[M7E$nJCc}k ꅛ|"hW. >zPa ! fIX~k(( "@n*>0* 6u=<՗|vN5{/dxf;:c*7浧Rr|`Ege'їC >3 !>?<씽W jYaVHk{OⲮ:']vL<{eeP(~J`\@ k"B0&?qo~X#1YϽL}O322_WN 1䊞'ɶ]/'/B0.owISa7>dY| '1U0 '5Q}I¬Z@;" dAwo})lSs- !z-E郴INՋ х!i~rGkt3*69l`ǵm/YGTkXF2ď9$E8P:"+y-xgI~ۍz&OiKG`q9^nX1-]6 =لw$~[tB tul]wivȝ1/Jșd;1g^u]c<썅ݏj%5d 8rea,F *:>¸^")IP -lfP++Ȑ,CwtsFzEש~F\j:yH\(NF!O+?bM⻰!;y׷FVPY~36W<p])}f;՟|ed Dŗd\2U7~XWj Q6]{FQ?(gH@lKP 0 #, ڜQH#70}ϘprKFn`oY5+%sl_osL,}̓al{,h_3ww':*oc }-[ݐĈu}W`C؟6oO,'OF*+`PiDٝ(% :^0׼RY3]P/j< QF]0܃rhrSq)|Y@kIHÔ`-[zD~Hj '?۝kk"/*"}dYφ{”RNBY3[OnZP<B8;pH^/"wf'Ejl$VvdYphOs+z#1M.Wwig<fsSotxS@  ?MW؅N|r2*wӧOF}{ҸhhM7I Gm6P̆S͢zT톹 h>,l 0Rf8EXZ]^h iA^`D2|2#B}Ry#=)8b۪#l7D1-/@ Iyi |LJxg?@p߆Z$] =0ިiE%kYeAP5mG~3ͳuZOh/A|ۿhj 6s[ܙϯ vG@JDC/2v L ׃>JZ(_5f^Ί?&8v, ZP׋53J*|sw!b'߭#Kͥo˾O7Ƒ(077f'Y!MY*ib+4!Su/ubnyd3W`@,ӡ僨a¸]9azTaZ?wS3p\@ Z_Lvo"`Ons#/?:XTWar&% ߴQPn RhśjvS< K!MB&*dt+l*HE 79~ ; %t%, дT}Pޯ,nNzQyt{4mDoȵ0[f 屇nkP*p|f3k:S-rwᩧy>(w[lehEMڀoCFsh,ћ; `"=Sbx?lFqѓ٦Sox[zNn+۶{;ZBW.5o7)L .:Bwl 84#0 ڗ/Ǻo.6S}L=Dyu}SX U4ٵ0|[+g(%%v*1^8&)ИXWRG"e!`UxI?z 3V)$@ G(s@ h+$+dRh{^7ց` rc|=[B$r]ڳc!nXg:, M*>L :9{ut;MؘL)zAT  v'K ·Q$)Y׈m(+##zMn/ީ]s?R4Dra)dosK%(+4ߎ?Qr-]wr$b,fCCsʜB@ߚȇ%9%ۥH/NW(?Fr%f=! "dwL#5'u] a~ (lHݤs>`.md7I?0֖P1V~ [fC^ΐ&5Ϳߩ */S >sW9v1v/ |x/ۖt]*ς>+௬p~o"%#C[K+Kʗɽتv:]MIocLik0/œU%SG k~GjLlz(BѸCry!D6q+'rjpSI,mCޓtQDFxYߩ\_uÎBv]I5A1?ݚe']x?45w|,gPI 9y'Յ .l2]ޥ1`/$wjYY wGF(LU%lC2(l1&RԹTtx;7$^l}p2QޕWEQZ^7'rX]lI_(h `-`(5 F.$0K˜ڌ1^e_ﴹ[ӥ-c,l2]N6lcy2hmA#7Ϲ+%{AB SoȦeceG6mS"!^TFuĻX+Qx-]$L1:@^ TiZ/?Tk50hvLe*VZ" ģGUW9GL2V.7 pz}evͯ8IB`oG'ȅ׈?|Q1 ~:cd\壿SHܺN&(®Pk oq4FNM oT D;˼mO b$ ke 3G-LO>ZycY"~G(Ǐz |;fhYSd&= )Z$>Y'^;Jq[1*Xg_G_a p% HˏΛ /Ph\gSЉ|9ӔW9XPV ŰO_v-\Wѳ "B풮66Ėq'_vѿbPRҧ EC=qg. cS73 P;>_ޭ=7,4N<ۄ"Zw_ VWljvJMUa|LƠl-1b؍y _#D(e Lܐ6f0)}NV,>Aƺ>luwa\K:99ɩqҸES`aT-WѬp!jt8I@-)GdRfq.aRUME{&Z3ߑUhz.U-ŵ Etv=ٻ}4okԣ8ѷqF*~"a.|h&R=U=+6w/ \NS=(_0˸Hݩ9#}́Q3f .0xGޅh:nEUMF_@rߐB=_+D$6G 񐌍)B0P :Ԍ(YV6T-ZnSnVgXZiy6NG%.^VD 9m[ը@s~kH=ֽE?D,` xh?m&q|CmyT$ Rf<41tN{F_Ixvq&ԐIZPj4vG(r'8[Hh1JW^eI8\?Ҷ^9)}:|-@E,j#d~ᰊtigl1X!MCSO4@NExWpbs۪ P^˸7GKz?cG~eXS>q,zsIXI`bQ'KծɌ+0 sCf=QS`MwZrGev`+W&1 9>4Ph_~tЎ%kgc4IvԀ.|$h?0٭`h;ld9/g?˞'5T4k6%bykQ&C0Ԁ)ZdSr 57 .Tr 6.jC{ /MAޮY5-x;ײdG脃B@װsm⍖iD e! x}ټs#0oo]NU.mfev%; &NJx&,ZE=cY >̪xzB =2@ʊ4~UOOLm{2 H5x+BVDCPOi,B\-B\Ixs BUe3,N Cgi2ۆXf#,4"̸5`Df/HaďibftqBztP]㘙URQ7A(>iGFz2f\RT'H߇9WU4Y˷;7 h C{>:|d%@dLj:o咆p*?C}Hi*wSYבSih=^1ZpY2cCZ7xjLP跷K#q:W+h~w dԱmj2Q,bFPO\|UIf0 4k°3o!sѱZ&D;oy`\M|P!ض6T VY4OP`]/vb\K,OTǂZ+KHbvBbL>Y ȘAfa槍gEfMTd5bF*7nX]'|%1X* /ez]4ֈ~LE-NXx<@ /(Ary%:Yb ׆ÈjhJ81h?^1^$ zUrB*%Iz{e2svn|DJȪwxV*08燡epLjRTԘbG dT)㘣YFÖr)0T9n<“,5)BDz蔡 gIz8Cd3Nyrc:rV]5G~ 9‹+[:]"O(͖a=Al)W? "ePe|ji޴  c J-sTw rUϯ3ַI,m{E*ר/ǶTody=] -.~nrЉ u!New;z9|+*IϑcIIm ]??XiXA> +om0@l2:Maсx#ϥi j$ [s,!&bP\v-\t7JOZ8戀AcƆI=O.+*  h3<Šzο>%nPO Q:]K'ԳY^ifہ/JP^Pk 'B\t&t%'owv֞<k[$(%&&jZib;~>ʝm ]Jjh1a5",xI_ \ EO![ӈSކ^bUpoPb&xحx'mL#\5:PP1Egj,܋7EEWZ4.gn,iu*#tm7TR?\}R=gC7+̚9 #HAZ>5)N?$> у f~d>$t@h97C'pڽGPqPߠP8=@t l7r'tQ\׶42*GYƳZ*eH?6as|:A-HD-Ѳf`3(AF %b]+$ej(6mǸZSU f|!fGBpvs+3 Fa9qƒX;v:˘"w "hEXRY" @&lP-tenk5 7@Fbaܝcp>EW/):`;Fϐ^|w~)s@&oW0L*5r=`(847gds20e^[ LM&zl? 1eiu斅Ǜx,F&)>g\Q1PL.~SERs8'\$Lnp5H7ogOo`x CoTVAlN 'Vs?RД1=Hc QN&_W5s1`X潑Nr4g.BOv\trq71d}e0D&ą9E$2Jtח-ʳ K Uj)r55@D+1IZp U)`KY{e꨸|'pSw)XKfRe*&uLH:ͺuTݻTK=#CiH,! DQfB"佪caifאZtC Y2{t9.'"z5M)I4=-NGxR= .ޡ+r |]ix[-je9=wvMIuci#zDDmQ([IO1 `y)8Ig۴L "?-(MjN]Ä U*!C]k [znEn݈XұQIVqһ.Nz2)B~u1ǶxKlW0F`U.1 GkN\; *P&ɭ6'bwlNZD#rP@OƗ7:w9b[UE7=&u].H<>=xj˪-c z;z줚qdPO|mk .ev{5f&5q&p~`NXu{rZvp#s26 zX;V3x~n'cLhǑrN*!}}FR}!]d80S%83@ QRnwOe 7pA:}C˨x'393p,69Qe?}N;wJOlt)[EL}0*A/Cr%]AeJHpDJLeQ@,ssҥ[30 SMHSO]bơ~-hw ;Ni\*߮#,8'm0Pu 767萋4Yٛ x{yT笑S q >suܥ=ުUL0zݯBa>Ӱ,=LjJp%/᳗~nN0p\!N"]D 3(?5CѓÈU' 5ddxqXD3#ƜGVW'RC0if o3q2kPyɚ{Γw"JU?*,c\dR[!>JC?`W e'`ݫy޶l90>as=JsP# -w ؘe]& K4D5{*k@*vՓ;!!Zj mq&/(;Vv90-Sd7 8CtN!}g`8+4z.Ot2 GuS1&+y7eO,%\ 8=M/fE|Bц)?crGm V}|꘦_^]V3kUd4?\4`crl*Q#79^l̰U"$^RKoCCUeg7=uH{QkMMkpVԾ~y ,ak lUS ZT|?j꺣ai7-x9Pf@Gyr1Dc3:-(RzJ\^5a2J6WP%+-(_Տ[4x{1/o%d6e}M0/Pt ?$JH5-}<{c }++}dSugm2 b4>]Hæ3"fYLf6bLS5Ly##:3D,5,|zr.KH2 {L1$80ײ6r,c+@hܞBv&A"e<8):IJuxG)cGA bn7D4 qaڋ#,fF "$>7:Lft@Aέ]W)ֱ200>Ii0Cl/yΟ'~Itȼl>qOMe~M9]xeqkP~Φ!Bÿ `qmgFi:9( }ڼ$]N&#v4(ѣV߉~ k ?^THWĀy5ĄLDW{ב1Fle7QKHn",mFJrƱ#EzSORCm[.S#͟EgKA~c`K6)!e|SZ*K`ZC/I[;bC9x~\P޿6[O>e/_7df!4{ 8FEɖni-A:Qbȟbp'c,*7#j"+RBq3;[탉1ef7o|#8psF7 _d[M=cu=Z2LUAxXO@FYy;5+\GgQ)f>ZKA?%N@* ?Qed+c/7g9 U?n1VWSKFZ*^L zNO1%hg j̦*\J+T8ۍuVZg?Z]m4yldiڮEGݸ):aRހ5Y9q ޚZjk&$VK Lba#wtY?XM߹Q7ՄiΔ}X86L6؝#BuX3y(Ycd\K{۳4PjP; 7+1z\!gkLLI@XU$M~=g'JbKy3CZE tƵ AOnR4zBE.A dڞ3p-=ߐM&0s_e՗5_0j)쩛Y\7d~KOvbξ"ʒh2@i%vy!&ھP:x燓{c~^Fa~_w64ڲ1Ў0~`ԔkK8'cـSg%8<az~R.6yjޮPO"}Ps'zkg[i/L#oxb̊t XrNlӓ Bu=1paTds\. A%1 ZE@Z>DiuO$j(:++7#pf2U;Ңsm I|QsO{<ܑ#Bi5<D@./Eb .[1{T{9Qm\//_Cg=jzcnòvWs̓x8p\'A&q62*tfH~P;|-` aO&_/}̮&2ApJw)aH:&8TǟGx`HRj69 L:S7#3JD6~^%dBMF]rvf)xkt]]lf([eqbo|ˇW1N~:7a귒 K wPE2=LD`.wDݝ!@ {"Tek] 6)Zikc,=P%Z?q; DP-A8#͏\)~lg^f?B? ($pbkq1Kr=sȻF thy*dC/y]a5{WI[p-X̐oa磼*+)H,ǍN؀k-\Ԙ" ~<~Ž75M(ǎςN4HM\g0rR,qխ's$ּ=0WZ7HǍgCHY> ~D.\ۉ1Ĥ'*.hԼ:vytNƢJF5^{@^YZgr1c;XƓ!V`lފ"8~l86! yea4_&\HIz­vߍ"xk؈ 8&Dhi{`&6}䒯9mF~>mh a@&_YHV=adZ73z[|zMu'43Eqq6ܒq*_Pa}zK,T՝(Bbǩ)I ,&jVJ_h/Dn#̂suହf򯏷$Bx.=1K$f3[&ڕ+USETx wKF!uLv)]*{,/R0]{9$K™UtVCbmI\Qf{2T<$ MUvW`ܙd39 |. h7&GE։BnS*rh9 {3Xɗ00wE̔hwij=L(<םϲZP–p?Wv~3ڊ=6)D[vsm &2Ú,Kw;[񁙰F&h_1gy-F {tф47\XK=H^(Zvt"sp~YǠKo ös~7HCYzf߈Vs9&m"ώYUw&]g@(Ncu"I\'67lVY\cQJr}5XhvRm>&Pi茄OMna)1Zmۃ1KB}N[5< =:Jl?P;>OҞ< `1f眓~L](j^*,=ɶF d_NS<z3&fP'Y3+:7BeX0zSN[eX<3oG%2B"<y.Yc;n:6=L7VD;-ɱϭ iH"ܼK *hV/oTo'I[ Vܬ "\zԮ,$X)5ؗљt=- PRwuY[FUu4,A23zcw}X+lbK:SSh9@|y.و*-SKA 4ut_!ƫ #!1&_o뷀 Q͢JX>RĨӢV*M80"*AD,0dznmmi{sC)Am|k(} $1]Wp6"_3S L':]φإ o%c,_wGJ?V54ؠc-P]eϴRhW|v"[1OxpfLg=QOhhnɎIgS=914S0<[m=L=MvLx9e7_kl'ؠVX Nත<}|/yOܜ; -ܥ0򄼢hD*28TVluüRnf_+2̏\қ|FC=__]\)'! {|,7QY6%EPe@ XX\bI.`}DCMޜܤj9PN?ECWI-kFNZo?yJ vENLµool50fRZ{1 ޙJrAT)m4~,&W%ZNv/Q*s4~~ ah&(@zbC3.ksh-= LKK>S9Gz:>?mG$FTPX*k=2H[3 >JfZ6焧a󑽘Tz:?_G~qT|݃>Ve:t[rwʯbD1fgxG ՛H9ϮҏINFX% /F";RuP(0e G5KS`z#:H-OJwa;>9q\Y&a'_?Vr¼D3o0-]b4F/'bvc3)9kphFO7p%@a=Myh׬\1fI;e9:<p5T|2P4XͿ]U`99GZcqeFۭyujX'4F j>."' T'B>49:=3B{{yaۆgF6e>h(ç/d\)H+V6̞PM-Ymvކe204"oEX-b`= v[i'" m/M)/ēn#Ki1d̚s1i}rL̶oFZM  U2p;)ƶUBȒxѲcviwӒAυo;YϹLdAwBXYAs|HY,yZ8j](1A$Dv2X 3u}>ɞ@]kbtu0Y͖HRvq2@ EiOMQr?z.Bq9'nyC ϳ s NIPpxjy8.4]轳Y׍x,Ɓ|~'޺p.j6xgC ,kߪt[R @q}^jvn(緟2Tܹp\|Q*Ϙ B䔯r شh;k?,hTYQZNmޠ6ωWZrvfY Q:U0IRb_dw "ZΦbnzYeW$H][5'P)=La0Q5k$8" q+pI"Zg NkL.hh*i!`:i%ZH$5^lqC/?U ͏iW:dHʻ;qH Ge8_(_Cau>i].6j#l (TI̥rby~9^"gEW?8#bS<) 1Њhg =KL=˺&} Ʋ8$V^§pl_"kq9&̛4L%r<7A9MBǎ[d]8 <wkHORYXɍ>qZ/~Gn *hw /kx,A_hc<+AkvLs+u:1 +ݶf~୭c aJvë^()u q`,Ɓ܂iL K0\x( ׁ/ GuۋW|"$ qGz@UE=EH JHdxn%{P? 6m^hjC@7ɓ:ɒncba^2l״}&)t "?#6x"OdrXt'L]9jV]y'!)qfDvzp<hh4GԗWVB>3l@ch? _HXd #P|>w8Xk 332v^ 쯇ˤHUe QzbP8_浖?ʎ&ܸ%#^$KQlzj4b ݎxiM؁z8:xB藉V4аKݗ`lbi׸[C損V.C HqPGsdDsƆ!7E&CΏQQi[:J(wk)֥YqTh:J!ENl䶥l3"e<΄#+| LJnڎ?E䌌!m-|O>;wo H0 fRE.9>Đ@lfܿD.d%H~@ozFhO++"ܽObeF~ҀEH3S7\$^s} }[ PNy"p,"yhsli6uǵ4+18DL> K&;k=8fne'M{xr~Aunq1l dž1kINĵ;F&j9>kz6ś*=2gNh9OOn$ꞫVF _ܣ}Ή$a~x{Δm\Oj%JO+ݢ4"櫣'+%8:ar/-Y[-:88쪟W͎ )wfY`vl(9_eDI?ў !8R5A #)dc_əWaF-4 5`!!@vy'5X ;DW ƛaD<:<b!Xki ' nxאo҉zP >_OZw5(jM+TQZNK;Z**p&8;f \T&0E94mKߙ>~C>*zY ry:QeG,!?kÞuo6G5 rx@~`0- g|E!][u5ulK}m!9$"4nd: S|p,rquvy\9GXg*2Lno ^|p-;YE2w u4g'}$BpA M=2 X~5= [pnLvXp{̮XWNn.snͨ#R+L$Miv+<|:ךy1:M{4Y[$<-.Uwi1YԎ^*8&.J桳^c:a ;+ ×yy {ӑ;*OH\ͳ ]Cf9vK3 8PY0,$Bwl=7[:w{MG۩X4! 6كcBbSp| pnl:ڏ3Z|)$I,NH B6ӆ3Rh%ɞuߗ?%.@j38X6c|DERAn*o'SfU ~M:(Ku)I~wh}#~mr_u椎/4R11{|%,z)9ZL)i!~b ?ɡ(;&(FYH+qiгTa G4kC^A*6$P`ʵ$j"(G S5/7Lc.q҆Y1,&oYfq6,iΐo'֒ڍQf[*s,NHp| &ɄlYn<&N+X{+}@׼9/w%J]rDR-`>,,4\)јIRn56wgWv`Vsi!s02b{вu;a{Dq;'JZZ|j AV`Rc"˻r#F&9}.-gd` b* JR+3dxBoa=pKUSG&J[Zy~L2S/j$9ju}CT2h9cVZ˲}|q H|uI%<  }W JoDB91. ΍(|Lj^2%B4:zΎ^@u.U 擓Bp$jF!Qx5ٻURWuFL*+=+>U8:yxƐxWSeOBJRQw!|u$фx=Nz+y&yf,!cߜ 3Aa鴆_N v,qkGqޤ}vB̳q’r+W#L3 Plkwlyz6Ԥ/aY.[;_-Q(9. s"Iõ OC^֗)YyAv?PSň=iHn$pGAAfm*%R%ⲳ#,?pƧZdWC!ys/Yf^?dvVQq}='@,NW6Wx fBZO}黷ͯl_{lo h H|SN\jMGĮPؕ,/3:Ezk:aa S)x)óDMcS0et5r"14G5,W*`*@S+@,YI& V$aLW铣$d[ Ƕŀ1@9(Qϖ;țe9b] L†!]5ʛ`r7|y7S6 T7="e_Ec~2 )55mp/u}&tR WcR}BԕSwHIVULݰS}fM%k8rts+vzՎ:dUݗC<nFLQ0 T? HT_ť@˙~2%-ȱItn0Xw1wwfu:{& ;<ԈHц!a_ߨϛv3/֛G>ķ rG?q2+oES8KE 4‹Ma7M¿ NJ›GP PYyГFl z$+P< Ñ1) آ׻u;N؇pRS2k 0x 7w{"/Q.O8xlƺ.V UGIp:(B\|Un5G/%kQ9~q"/ .f'% ]~ԤtPz G23=׋_6Ohҕ|%P?2Ys%2:?:tJF%R22L.?nEm:2F|y*pUdѨ#<]dk9Բ5i3*)>ke_0tDJCb.Y+ XyM0Om}?qիLt/Pɫ53-یS('Q-_ ~Nr}w EhJ;BP^ tyc$^|Ftv-ޞ6qm*So{lu|2 j4 uv_E^Vݞ-xOy[$?$<:ٖ}-ϕ_ߎ5HZ lX8H@3%,(O%h'~m# /_z?Eɩr܆DJT!pzG[I99an1IsoH 5ٚW#"#]n:A2ݭ2b>%yY|qp2xH`| [Cosw[_nCX%DhuXSǥD,AFr\KNĊƭ\ײC|& 0N^`OAča$۶/$-1R6^8[Zd.ÏH 4ٴ-mDjk"nK3`Cuf= ɪ0#s0$e_8Bx.&;*iͬxi 3HɘZSM8A)6+{jJ8]\TeU K\_MLQ**Sk?=v~^V<7"ֹ޷Q.+ t;eNo9%d=],BIdj\͘{* 쬯D>ncŶW4z2>+e,b69#y9lQ HnY= aʱ#rGYL&8UUyn(<[kj+Qde6#2N4,ah) Xal3'.:=bD`Y&1)74h ђLȘ8:)m(dBShj{.-Ͽ5v\=ڗ&/+ ;%ڎͪ`Cd4}UE+{BUrN9SpURtE5V-f"s%Z !QV(50<-a"IB5S)XI9H, "k .D|2QxU Y+'pJkz؄=nO`->Dz H)S={.:."Lq`҃I5̝ $<fNyG.Bl<&1{?V(buf|Ɛ66S^'1+, і@:1B}+ĀF~uRJ:lW7j̯Y;m^EhpA'ًXx$Wl!ZcFY0W= [YqF á#л?p`z`E2БZ/6UKn׬(%]™J#>]E4QN zS~rp7訧QS3 1RkI(`'G:}#;؂5Q]sq|Z*"oW3KSgMAC40>3/c K~1)pS2 Z&a{@{jQ<.}&wjf.*!bu٤_cy )53ķ"5lT <(;v˗alv3C!#spV,+=Odx;̺`r0-0\{Vʌ ʡN= 45g₹|bZyao\Nz81]PSѧ٩pDBz#K^<\. _"FoC5{񸾪Q pLR(c;w|lCLתYLj&C^@9BoQ;TtJ%={*nZl ONJ-vo6kw;&4PBP_tcmq77W^JԕՏKeX͎v4,fI3j`EC/rVkx^D*7~3~R,0Ccvd>LAnq֝id9=<擯4m{)Ʌ-mO3 u2pB[g}N9S˚9u ^TGT99|oÞ+_5tm}l%i2'ªS)9AVȇ.i oY,ټXh2>i2{ :"ηp8͠R{ⷒf[Iŏ=x' l$9ǞL~Q8P) I@ )>B f(9U?qks@7s2>TpN)FSm脸+@ۀ[} ؤԡGsJ/H)#CmAVM <2#LC9*Q+q@+-k|;QQ鿴 'X;nzc n"q\#ǽT*s[yh; ˣVZ't*ʾoaN΃$6`-DwY_)֐C| KRʉ / E9`liF(4:VSPzT ؽ:3OXF;U]k%э hOW^Jpq"nI8[l{I!^ϑυ>+CDi+,F=}nׁmExr {Ћ`JM{/N t/fEX0OCE$#pㆍ3L}RpL8pBrh )-uH`NV߂v4^YZr0?fҝz"$*)?*R$B̞OmGÃC?`_6q j.Xu1yE71-K{oR7+ZO΂'rtV@fc UxQk!|av՛zYِWi>'&1?W=?xis}gEȚK[hxkSFW(QXf:RPxA#_\@:y f+Fe$MO<ۨlEC !)1ϝI\g*jek-5WnKJȞ:,BCAVot4h8`Fdz3hLKLi#VԪq_*z;县[ Lq.=&IXWY͸"6)7Er?Iud5ƙq65Pri(Nٚ!;+?uv}Z6bD'9xV̱MlN'#Jq$kp=bkD&R?A|"Icр#;3^6%E6m-N(5@7DXK` )XkwECǿ ~<@*Gf :[/6#[FZe2'`.*m'rek,uX 9.x15@boKt?0"e*ĵ]x0A~[ [j =/,4ok=R!;V+3zmZT=GS.p Y |MvuyFf UIÈ: b`Jm,&C4ѿ=pϛBuis@OJL;A_9@OLU(S??jΔsuӷqK%X+jN _6ôtzIĢcY_4+`W44 # ;;7S_3rE/[*[62TO1s"F"5If8'dODCI"ic S$z"8=SO a(99(XkSPYk;[ڴx_}4F? {#Tvi^}fbѶeU>Ehmu:g=A+ݲ@iꐮU9W!j}WV[y /o&;JX/ Ml8K8yN$rPQ;VkB; һH2 +['Z~*aܓ BmܔI CߖcM4^@kj؉s"MiUT墾äK\'=y)Uً盄l Aa3a 2?"O1r~D^GX6$X %.<+HMYuqI,p7c[CeҴQ|[&*!|[7ӐwQK}9^((@I6K>xŸL|-"ل8 ,hq9Ń^O*M" 1Z!xpR9H-!OwH(oZH5 /HT۵촭bNbsQ#q$ML?Yj%iK@u5g 5ܪ=0>@^sxSKeC,?45՝W{`qQÐ1VR|WJ<p˫ m2`Tok5gdgn +{ > ">kS] s%l*h¹\UOVAwN=a(-UF2Ys;ԣw@x>/_%d2$p)2Tu^  Z2-ʯvc!BM&qTaޛ,IRkdz,I:T~RJmɔZqeC[j@8~\4,8}x}!zɷB/oprUVXh8l0KؽhDǂAw,:lD1gmKZ{;jo?aM Њ㘊(0~x됊Ct-SaVTgMkݝ. :xm9.ӵGR; 8#"YB#P̔r8'7*@y$ ǜ0/@rM]v G:%@5Tb,Y{hVFRrO~ o%5d=aL֫U-G %_/y( +6m@&͔V`U3] ??W_sH!x@ ʗONq咺bĔTpN݇x}ryd3ork\䭆O*wZA+φsdC ̞` tc-э;oaĺL~#H5_EFEMRDԂϤy7RKZ7H^VRWCyJ&pvS|8g6O>Z~%FwZ;c&Oqt}ԕl: h<-?ْÁXY="ҟ_y~vĹZZ#lRC0&)tqb_pUMV ;VG'ŴKlql}#Rj\k唴ul+Л-6 'WKn|R[#2 Q}?I@E-dIUphiXKQLNr3-05T8ޓEC-N#m[ץM`4S؉~5.2 =+|`![;`;:D|dԎlMmH2Ӫr$[(,Zhw?F8J/I[;Ip{4Mɒ(Psl|%W>ǡNfw} @J~B RFtTEKNOK&kOӲP\ѹ#]L-Hu!@q` QN!J/("|줙_!\"HGOcB">6|eTrj@" 1FfԐ+]""/?9^CV=u|p1ZK0gQU)Uv`ymPVT`D|6~x j]w-kM#9dQhp?L|q{v9,=UsrӸܺ52N]EC4v)R'.v* YZ