libnghttp2-14-1.40.0-lp152.2.6.1 4>$  Ap`[:/=„;mwCJ}-u2.YN5~zD)GkP'OiDqX6}8caF6NC~R3HJ (;.nec"T2W#?5/ޓ XbTpaq==)zO&MNY8c:p4Q 7=ȑ8Tt6ߣA|%;]SCCG]Bo|)<鮀;+ 3BjwTls Nf1dd98ce22524ec2e769af3fe102903af3226611a222a69851a8800e87553a4cd4b7cec85e229916e1993e1b6590faeb17947c49H`[:/=„Kwvn@ lY;4$.1d J_9~CLn8PAE+J''v&v #iYICULVčqϼ52jT evzRa'nL I4Q:3lɤp@?d # >  $ , 4 D  @P   (8F9F: XF>@!F0GLH\IlXpY|\ݤ]ݴ^b3cd߂e߇fߊlߌuߜv߬wTxdytzClibnghttp2-141.40.0lp152.2.6.1Shared library for nghttp2Shared C libraries for implementation of Hypertext Transfer Protocol version 2.`[:hci-cnode1-m0openSUSE Leap 15.2openSUSEMIThttp://bugs.opensuse.orgSystem/Librarieshttps://nghttp2.org/linuxi586dA큤`[:`[:`[:]γfb148cba11cb0967711a833ba2cb664aa6f32616c0e39bdf8067520eafedd9e56b94f3abc1aabd0c72a7c7d92a77f79dda7c8a0cb3df839a97890b4116a2de2alibnghttp2.so.14.19.0rootrootrootrootrootrootrootrootnghttp2-1.40.0-lp152.2.6.1.src.rpmlibnghttp2-14libnghttp2-14(x86-32)libnghttp2.so.14@@@@@    /sbin/ldconfig/sbin/ldconfiglibc.so.6libc.so.6(GLIBC_2.0)libc.so.6(GLIBC_2.1.3)libc.so.6(GLIBC_2.3.4)libc.so.6(GLIBC_2.4)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.1`KW^@]i]Z@]Z@]R@\g\A\A\8@[F[t[CN@ZЛZUZUZZOhZ.s@Z'ZY@YdYYlYcl@YX@XӸX@Xk@XQ4@X6@W@WRW"W~WXW W4V@V>@V@VV_V@VzV]VI@V4@V@UU@UUȒ@UUUUUcU]USMartin Pluskal Martin Pluskal Adam Majer Martin Pluskal Tomáš Chvátal seanlew@opensuse.orgTomáš Chvátal Martin Pluskal adam.majer@suse.deadam.majer@suse.dempluskal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comfvogt@suse.commpluskal@suse.comdimstar@opensuse.orgmpluskal@suse.commpluskal@suse.commpluskal@suse.comschwab@suse.dempluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.comadam.majer@suse.dempluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.comidonmez@suse.commpluskal@suse.commpluskal@suse.comidonmez@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.comrguenther@suse.commpluskal@suse.compgajdos@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.comsor.alexei@meowr.rumpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.commpluskal@suse.comjengelh@inai.dempluskal@suse.commpluskal@suse.commpluskal@suse.com- security update - added patches fix CVE-2020-11080 [bsc#1181358], HTTP/2 Large Settings Frame DoS + nghttp2-CVE-2020-11080.patch- Update to version 1.40.0 to fix CVE-2019-18802 in envoy-proxy and cilium-proxy (bsc#1166481) * lib: Add nghttp2_check_authority as public API * lib: Fix the bug that stream is closed with wrong error code * lib: Faster huffman encoding and decoding * build: Avoid filename collision of static and dynamic lib * build: Add new flag ENABLE_STATIC_CRT for Windows * build: cmake: Support building nghttpx with systemd * third-party: Update neverbleed to fix memory leak * nghttpx: Fix bug that mruby is incorrectly shared between backends * nghttpx: Reconnect h1 backend if it lost connection before sending headers * nghttpx: Returns 408 if backend timed out before sending headers * nghttpx: Fix request stal- Conditionally remove dependecy on jemalloc for SLE-12- Require correct library from devel package - boo#1125689- Update to version 1.39.2 (bsc#1146184, bsc#1146182): * This release fixes CVE-2019-9511 “Data Dribble” and CVE-2019-9513 “Resource Loop” vulnerability in nghttpx and nghttpd. Specially crafted HTTP/2 frames cause Denial of Service by consuming CPU time. Check out https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-002.md for details. For nghttpx, additionally limiting inbound traffic by - -read-rate and --read-burst options is quite effective against this kind of attack. * Add nghttp2_option_set_max_outbound_ack API function * nghttpx: Fix request stall- Update to version 1.39.1: * This release fixes the bug that log-level is not set with cmd-line or configuration file. It also fixes FPE with default backend. - Changes for version 1.39.0: * libnghttp2 now ignores content-length in 200 response to CONNECT request as per RFC 7230. * mruby has been upgraded to 2.0.1. * libnghttp2-asio now supports boost-1.70. * http-parser has been replaced with llhttp. * nghttpx now ignores Content-Length and Transfer-Encoding in 1xx or 200 to CONNECT. - Drop no longer needed boost170.patch- Update to 1.38.0: * This release fixes the bug that authority and path altered by per-pattern mruby script can affect backend selection on retry. * It also fixes the bug that HTTP/1.1 chunked request stalls. * Now nghttpx does not log authorization request header field value with -LINFO. * This release fixes possible backend stall when header and request body are sent in their own packets. * The backend option gets weight parameter to influence backend selection. * This release fixes compile error with BoringSSL. - Add patch from upstream to build with new boost bsc#1134616: * boost170.patch- Update to 1.36.0 * build: disable shared library if ENABLE_SHARED_LIB is off * third-party: use http-parser to v2.9.0 (GH-1294) * third-party: Update mruby to 2.0.0 * nghttpx: Pool h1 backend connection per address (GH-1292) * nghttpx: Randomize backend address round robin order per thread (GH-1291) * nghttpx: Fix getting long SNs for openssl < 1.1 (GH-1287) * h2load: add an option to write per-request logs (GH-1256) * asio: added access to # of the current server port (GH-1257)- Use multibuild to not pull in python3 in first build, nghttp2 is low in the system- Update to version 1.35.1: * nghttpx: Fix broken trailing slash handling (GH-1276) - Changes for version 1.35: * build: cmake: Fix libevent version detection (Patch from Jan Kundrát) (GH-1238) * lib: Use __has_declspec_attribute for shared builds (Patch from Don) (GH-1222) * src: Require C++14 language feature * nghttpx: Write mruby send_info early * nghttpx: Fix assertion failure on mruby send_info with HTTP/1 frontend * h2load: Handle HTTP/1 non-final response (GH-1259) * h2load: Clarify that time for connect includes TLS handshake- Update to version 1.34.0: (bsc#1112438, FATE#326776) * lib: Implement RFC 8441 :protocol support * nghttpx: Add read/write-timeout parameters to backend option * nghttpx: Fix mruby parameter validation in backend option * nghttpx: Implement RFC 8441 Bootstrapping WebSocket with HTTP/2 * nghttpx: Update neverbleed to fix OpenSSL 1.1.1 issues * nghttpx: Update mruby 1.4.1 * nghttpx: Add mruby env.tls_handshake_finished * nghttpx: Add --tls13-ciphers and --tls-client-ciphers options * nghttpx: Add RFC 8470 Early-Data header field support * nghttpx: Add RFC 8446 TLSv1.3 0-RTT early data support- Update to version 1.33.0: * lib: Tweak nghttp2_session_set_stream_user_data * lib: Fix handling of SETTINGS_MAX_CONCURRENT_STREAMS. * lib: Implement ORIGIN frame * asio: support definition of local endpoint for cleartext client session * integration: Remove remaining SPDY code from the integration tests * nghttpx: Fix worker process crash with neverbleed write error * nghttpx: Support per-backend mruby script * nghttpx: Fix stream reset if data from client is arrived before dconn is attached- Update to version 1.32.0: * lib: Ignore all input after calling session_terminate_session * lib: Fix treatment of padding * lib: Don't allow 101 HTTP status code because HTTP/2 removes HTTP Upgrade * build: add ENABLE_STATIC_LIB option to build static lib * third-party: Upgrade neverbleed to the latest master * asio: Support client side SNI * src: Compile with libressl 2.7.2 * src: Allow building without NPN * h2load: -r and --duration are mutually exclusive- Version umpdate to 1.31.1: * Fix bsc#1088639 CVE-2018-1000168 * https://nghttp2.org/blog/2018/04/12/nghttp2-v1-31-1/- Version update to 1.31.0: * lib: Add nghttp2_session_set_user_data() public API function (GH-1137) * src: Define nghttp2_inet_pton wrapper to avoid inet_pton macro (GH-1128) * nghttpx: Close listening socket on graceful shutdown * nghttpx: Add an option to accept expired client certificate (GH-1126) * nghttpx: Add mruby tls_client_not_before, and tls_client_not_after (GH-1123) * nghttpx: Fix potential memory leak * lib: Allow PING frame to be sent after GOAWAY (GH-1103) * nghttpx: Fix bug that h1 backend idle timeout expires sooner * nghttpx: Stop overwrite of first header on mruby call to env.req.set_header(..) (Patch from Dylan Plecki) (GH-1119) * nghttpx: Add upgrade-scheme parameter to backend option (GH-1099) * nghttpx: Fix missing ALPN validation (--npn-list) (GH-1094) * nghttpx: Remember which resource is pushed for RFC 8297 (GH-1101)- Drop spdylay dependency as it is deprecated since version 1.28.0 and removed from cofnigure.ac since 1.29.0- Use %license (boo#1082318)- Update to version 1.29.0: * lib: Use NGHTTP2_REFUSED_STREAM for streams which are closed by GOAWAY * build: Remove SPDY * build: Fix CMAKE_MODULE_PATH * nghttpx: Revert "nghttpx: Use an existing h2 backend connection as much as possible" * nghttpx: Write API request body in temporary file * nghttpx: Increase api-max-request-body * nghttpx: Faster configuration loading with lots of backends * nghttpx: Fix crash with --backend-http-proxy-uri option- Export PYTHON=/usr/bin/python3 before running configure: allow to build without (comnplete) python2 in the buildroot. In any case we only ship python3-bindings already.- Upodate to version 1.28.0: * lib: Add nghttp2_error_callback2 * build: Add deprecation warning when spdylay support is enabled * Switch to clang-format-5.0 * examples: Make client and server work with libevent-2.1.8 * third-party: Update neverbleed * integration: Fix issues reported by the go vet tool. * nghttpx: Fix affinity retry * nghttpx: Fix stalled backend connection on retry * nghttpx: Cookie based session affinity * nghttpx: Expose additional TLS related variables to mruby and accesslog- Drop forgotten python2 build dependency- Update to version 1.27.0: * h2load: Print out h2 header fields with --verbose option * nghttpx: Send non-final response to HTTP/1.1 or HTTP/2 client only - Changes for version 1.26.0: * docs: Fix some typos in the nghttpx how-to * h2load: Fix bug that timing script stalls with -m1 * h2load: Reservoir sampling (GH-984) * h2load: Add timing-based load-testing in h2load - Switch to python3 support- Don't use jemalloc on ppc or %arm, where it is broken.- Update to version 1.25.0: * lib: add nghttp2_rcbuf_is_static() (Patch from Anna Henningsen) (GH-983) * nghttpx: Fix bug that forwarded for is not affected by proxy protocol (GH-979) * nghttpx: Update mruby to 1.3.0 (GH-957)- Drop doc building - Rename python subpackage to python2- Update to version 1.24.0: * doc: README.rst: fix typo (Patch from Simone Basso) (GH-947) * doc: fix up grammar in submit_trailer docs (Patch from Benjamin Peterson) (GH-945) * doc: fix cleaning in out-of-tree builds (Patch from Benjamin Peterson) (GH-938) * nghttp: Fix bug that upgrade fails if reason-phrase is missing (GH-949) * nghttpx: Verify OCSP response using trusted CA certificates (GH-943) * nghttpx: Set default minimum TLS version to TLSv1.2 (GH-937) - Changes for version 1.23.1: * nghttpx: Fix crash in OCSP response verification - Changes for version 1.23.0: * lib: nghttp2_session: Allow for compiling library with -DNDEBUG set (Patch from Angus Gratton) (GH-919) * lib: Treat incoming invalid regular header field as stream error (GH-900) * lib: Call nghttp2_on_invalid_frame_callback if altsvc validation fails (GH-904) * doc: spelling mistake in arguments to build nghttp apps (Patch from Soham Sinha) (GH-925) * doc: Add notes for installation on linux systems (Patch from Tapanito) (GH-917) * doc: Clarify the effect of nghttp2_option_set_no_http_messaging * nghttpx: Verify OCSP response (GH-929) * nghttpx: Fix certificate selection based on pub key algorithm (GH-924) * nghttpx: Fix certificate indexing bug * nghttpx: Run OCSP at startup (GH-922) * nghttpx: Wildcard path matching (GH-914) * nghttpx: Forward multiple via, xff, and xfp header fields (GH-903) * nghttp: Add -y, --no-verify-peer option to suppress peer verify warn (GH-906)- Update to version 1.22.0: * lib: Add missing free call on error in inflight_settings_new() (Patch from lstefani) (GH-884) * asio: Support specifying stream priority via session::submit() (Patch from Matt Way) (GH-881) * nghttpx: Clarify --conf option behaviour * nghttpx: Add $tls_sni access log variable (GH-896) * nghttpx: Rename ssl_* log variables as tls_* (GH-895) * nghttpx: Fix path matching bug (GH-894) * nghttpx: SNI based backend server selection (GH-892) * nghttpx: Enable signed_certificate_timestamp extension for TLSv1.3 (GH-878) * nghttpx: Add options for X-Forwarded-Proto header field (GH-872) * nghttpx: Add --single-process option (GH-869) * nghttpx: Use 502 as server error code * nghttpx: Use SSL_CTX_set_early_data_enabled with boringssl * nghttp: Verify server certificate and show warning if it fails (GH-870) * integration: Use nip.io instead of xip.io- Update to version 1.21.1: * asio: Fix crash if connect takes longer time than ping interval (GH-866) * nghttpx: Fix bug that 204 from h1 backend is always treated as error (GH-871) - Changes for version 1.21.0: * lib: Fix nghttp2_session_want_write (GH-832) * doc: Document pkg-config path usage * build: Eliminate U macro; Instead use (void)VAR for better compiler compatibility. * src: BoringSSL supports SSL_CTX_set_{min,max}_proto_version. (Patch from Piotr Sikora) (GH-853) * src: Use Mozilla's "Modern compatibility" ciphers by default * src: nghttp2_gzip: fix this statement may fall through [-Werror=implicit-fallthrough=] found by gcc7 (Patch from Alexis La Goutte) (GH-823) * nghttpx: Print version number with -v option * nghttpx: Enable X25519 with boringssl * nghttpx: Retry getaddrinfo without AI_ADDRCONFIG (GH-858) * nghttpx: Failing to listen on server socket is fatal error * nghttpx: Escape certain characters in access log (GH-856) * nghttpx: Ignore further input if connection is going to close * nghttpx: Don't call functions which are not async-signal-safe after fork but before execv in multithreaded process. * nghttpx: Enable backend pattern matching with http2-proxy (GH-733) * asio: client: Send PING after 30 seconds idle (GH-847)- Update to version 1.20.0: * lib: nghttp2_session: fix The 'then' statement is equivalent to the subsequent code fragment found by PVS Studio (V523) (Patch from Alexis La Goutte) (GH-814) * lib: Add nghttp2_option_set_no_closed_streams (GH-810) * build: Disable spdylay detection by default * build: Add --with-systemd option to configure * fuzz: Add fuzzer for oss-fuzz (GH-799) * src: Enable TLSv1.3 if it is supported by OpenSSL (or BoringSSL) (GH-816) * src: h2 requires >= TLSv1.2 * asio: More graceful stop of nghttp2::asio_http2::server::http2 (Patch from Amir Pakdel) (GH-805) * asio: Holding more shared_ptrs instead of raw ptrs to make sure called objects don't get deleted. (Patch from clemahieu) * asio: Fix infinite loop in acceptor handler (Patch from clemahieu) (GH-794) * asio: close_stream erases from streams_ while it's being iterated over. (Patch from clemahieu) (GH-795) * nghttpx: Strip version number from server header field * nghttpx: Add --single-worker option * nghttpx: Fix bug that send_reply does not participate graceful shutdown * nghttpx: Add --frontend-max-requests option * nghttpx: Enable stream-write-timeout by default * nghttpx: Fix stream write timer handling * nghttpx: Add configrevision API endpoint (GH-820) * nghttpx: Redirect to HTTPS URI with redirect-if-not-tls parameter (GH-819) * nghttpx: Update log time stamp in millisecond interval * nghttpx: Better error message when private key and certificate are missing * nghttpx: Fix bug that old config is used during reloading configuration * nghttpx: Specify TLS protocol by version range (GH-809) * nghttpx: Send SIGQUIT to the original master process (GH-807) * nghttpx: Restrict HTTP major and minor in 0 or 1 * nghttpx: Drop privilege of neverbleed daemon first * nghttpx: add systemd support (Patch from Tomasz Torcz) (GH-802) * nghttpx: Fix crash on SIGHUP with multi thread configuration (GH-801) * nghttpx: Send 1xx non-final response using mruby script (GH-800) * nghttpx: Select certificate by client's supported signature algorithm (GH-792) * nghttpx: Recommend POST for backendconfig API request * nghttpx: Don't build PSK features with LibreSSL (Patch from Bernard Spil) (GH-789) * nghttp: add support for link rel="preload" for --get-assets (Patch from Benedikt Christoph Wolters) (GH-791) * h2load: Fix wrong req_stat updates * h2load: Explicitly count the number of requests left and inflight * integration: Fix deprecation warnings * integration: Redirect nghttpx stdout/stderr to test driver's stdout/stderr - Changes for version 1.19.0: * lib: Fix memory leak of nghttp2_stream object in server side nghttp2_session object * Fix issues found by PVS Studio (Patch from Alexis La Goutte) (GH-769) * doc: Update README file to write about the issue of Alpine Linux's inability to replace malloc (Patch from makovich) (GH-768) * build: Compile with Android NDK r13b using clang * src: Fix assertion error with boringssl * nghttp: Take into account scheme and port when parsing HTML links * nghttp: Fix authority for --get-assets if IP address is used in conjunction with user-defined :authority header (Patch from Benedikt Christoph Wolters) (GH-783) * nghttpx: Add --accesslog-write-early option (GH-777) * nghttpx: Fix access.log timestamp (GH-778) * nghttpx: Show default cipher list in -h * nghttpx: Add client-ciphers option * nghttpx: Add client-no-http2-cipher-black-list option * nghttpx: Fix the bug that no-http2-cipher-black-list does not work on backend HTTP/2 connections. * nghttpx: Add --client-psk-secret option to enable PSK in backend (GH-612) * nghttpx: Add --psk-secret option to enable PSK in frontend connection (GH-612) * nghttpx: Enable SCT with OpenSSL 1.1.0 * nghttpx: Add proxyproto to frontend option to accept PROXY protocol (GH-765) * h2load: Show default cipher list in -h * h2load: Show custom server temp key such as X25519 * h2load: Fix incorrect return value from spdylay_send_callback - Changes for version 1.18.1: * nghttpx: Fix assertion error in libev ev_io_start (GH-759) * nghttpx: Handle c-ares success without result * nghttpx: Fix bug that DNS timeout was erroneously disabled (GH-763) * nghttpx: Fix bug that DNS timeout was ignored (GH-763)- use individual libboost-*-devel packages instead of boost-devel- Update to version 1.18.0: * lib: Accept and ignore content-length: 0 in 204 response for now * build: Use pkg-config to detect libxml2 * build: Require c-ares to compile applications under src * build: Add Windows CI via AppVeyor (Patch from Alexis La Goutte) * examples: Delete tiny-nghttpd * nghttpx: Retry h1 backend request if first write fails (GH-757) * nghttpx: Keep reading after backend write failed (GH-756) * nghttpx: Add frontend-keep-alive-timeout option (GH-755) * nghttpx: New error log format (GH-749) * nghttpx: Fix bug that fetch-ocsp-response does not work with OpenSSL 1.1.0 (GH-742) * nghttpx: Backend API call allows non-numeric host with dns parameter (GH-731) * nghttpx: Lookup backend host name dynamically (GH-721) * nghttpx: Accept and ignore content-length: 0 in 204 response for now (GH-735) * nghttpx: Wait for child process to exit- Update to version 1.17.0: * lib: Disallow content-length in 1xx, 204, or 200 to a CONNECT request (GH-722) * lib: Avoid memcpy against NULL src * build: MSVC version resource support (Patch from Remo E) (GH-718) * asio: server: Call on_close callback on connection close (GH-729) * nghttpx: Fix frequent crash with --backend-http-proxy-uri * nghttpx: Robust backend read timeout * nghttpx: Fix bug that mishandles response header from h1 backend * nghttpx: Fix bug that zero-length POST is not forwarded (GH-726) * nghttpx: Remove optional reason-phrase from SPDY :status * nghttpx: Header key and value must be string in mruby script * nghttpx: Strip content-length with 204 or 200 to CONNECT in mruby (GH-722) * nghttpx: Strict handling for Content-Length or Transfer-Encoding in h1 (GH-722) * nghttpx: Fix compilation with BoringSSL (Patch from dalf) (GH-717) * nghttpd, nghttpx, asio: Add missing mandatory SP after status code- Update to version 1.16.1: * lib: Prevent undefined behavior in decode_length * nghttpx: Fix bug which may crash nghttpx if non-final response is forwarded from origin server to HTTP/1.1 client - Changes for version 1.16.0: * lib: Add nghttp2_set_debug_vprintf_callback to take advantage of DEBUGF statements in when building DEBUGBUILD. * Update .clang-format for clang-format-3.9 * build: Make it possible to include nghttp2/CMakeLists.txt in another project using add_subdirectory. * third-party: Update http-parser to feae95a3a69f111bc1897b9048d9acbc290992f9 * asio: Fix crash when end() is called outside nghttp2 callback * nghttpx: Add --backend-connect-timeout option * nghttpx: Add TLS signed_certificate_timestamp extension support * nghttpx: Add --ecdh-curves option to specify list of named curves * h2load: Add --header-table-size and --encoder-header-table-size options- Update to version 1.15.0: * lib: Add nghttp2_option_set_max_deflate_dynamic_table_size() API function (GH-684) * lib: Allow NGHTTP2_ERR_PAUSE from nghttp2_data_source_read_callback (GH-671) * lib: Add nghttp2_session_get_hd_deflate_dynamic_table_size() and nghttp2_session_get_hd_inflate_dynamic_table_size() API functions to get current HPACK dynamic table size (GH-664) * lib: Add nghttp2_session_get_local_settings() API function * lib: Add nghttp2_session_get_local_window_size() and nghttp2_session_get_stream_local_window_size() API functions * build: Add -lsocket -lnsl to APPLDFLAGS for solaris build * neverbleed: Update neverbleed to support ECDSA certificate * doc: Mention --enable-lib-only configure option in README * integration: Fix test failure with go1.7.1 * src: Fix compile error with openssl 1.1.0 * nghttpx: Improve performance with HTTP/1.1 backend when request body is involved * nghttpx: Use std::atomic_* overloads for std::shared_ptr if available * nghttpx: Migrate backend stream to another h2 session on graceful shutdown * nghttpx: Add option to specify HPACK encoder/decoder dynamic table size * nghttpx: Log client address * nghttpx: Add tls_sni to mruby Nghttpx::Env class * nghttpx: Add --frontend-http2-window-size option, and its family functions * nghttpx: Add experimental TCP optimization for h2 frontend * nghttpx: Workaround for std::make_shared bug in Xcode7, 7.1, and 7.2 (GH-670) * nghttpx: Fix bug that bytes are doubly counted to rate limit for TLS connections * nghttpx: Add --no-server-rewrite option not to rewrite server header field (GH-667) * nghttpx: Retry if backend h1 connection cannot be established due to timeout * nghttpx: Reset stream if invalid header field is received in h2 * nghttpx: Add --server-name option to change server response header field (GH-667) * nghttpd: Add --encoder-header-table-size option * nghttp: Add --encoder-header-table-size option * python: Support ALPN, require Python 3.5- Update to version 1.14.0: * lib: Make emit_header() return void since it always succeed * lib: Add nghttp2_hd_deflate_hd_vec() deflate API to support multiple buffer input * lib: since hd_inflate_commit_indexed() always return 0, remove the return value check in nghttp2_hd_inflate_hd_nv() * lib: Use memeq() instead of lstreq() in lookup_token() * lib: More strict stream state handling * lib: Modify genlibtokenlookup.py to remove redundant header comparisons and remove inline qualifier of lookup_token() in genlibtokenlookup.py * lib: Fix wrong tree operation to avoid cycle * lib: Make get_max_index() return the max index in frame, so we don't need to do extra calculation * lib: Add nghttp2_on_invalid_header_callback * lib: Log frame's stream ID for header debug logging * doc: Remove old doc about differential encoding in HPACK * doc: Document about ALPN in nghttpx howto * nghttpx: Log error code from getsockopt(SO_ERROR) on first write event * nghttpx: Don't change pushed stream's priority * nghttpx: Log backend connection failure in WARN level * nghttpx: Fix bug that api and healthmon parameters do not work with http2 proxy * nghttpx: Add access log variable for backend host and port * nghttpx: Use copy instead of const reference of backend group * nghttpx: Reload configuration with SIGHUP * nghttp: Adjust weight according to Firefox stable * nghttp: Call error callback when invalid header field is received and ignored * nghttp: Allow multiple -p option * deflatehd: Call nghttp2_hd_deflate_change_table_size only if table size is changed from default- Update to version 1.13.0: * lib: Cancel non-DATA frame transmission from nghttp2_before_frame_send_callback * doc: Fix warning with Sphinx 1.4 * build: Work with Android NDK r12b * nghttpx: Use consistent hashing for client IP based session affinity * nghttpx: Fix FTBFS on armel by explicitly including the header * nghttpx: Cast to double to fix build with gcc 4.8 on Solaris 11 * nghttpx: Fix build error with libressl * examples: Fix compile error with OpenSSL v1.1.0-beta2- Update to version 1.12.0: * Add nghttp2_session_set_local_window_size API function * Add nghttp2_option_set_max_send_header_block_length API function (GH-613) * Fix warning: declaration of 'free' shadows a global declaration (Patch from Alexis La Goutte) * examples: Add ALPN support to tutorial client/server (GH-614) * nghttpx: Reduce TTFB with large number of incoming connections * nghttpx: Rewrite read timer handling * nghttpx: Clean up neverbleed AF_UNIX socket * nghttpx: Add --backend-max-backoff option * nghttpx: Use 16KiB buffer for reading to match TLS record size * nghttpx: Add healthmon parameter to -f option to enable health monitor mode * nghttpx: Receive reference of std::mt19937, not making a copy * nghttpx: Fix bug that backend never return to online (GH-615) * nghttpx: Implement client IP based session affinity * nghttpx: Add --api-max-request-body option to set maximum API request body size * nghttpx: Add api parameter to --frontend option to mark API endpoint * h2load: Add content-length header field for HTTP/2 and SPDY as well * h2load: Implement HTTP/1 upload (GH-611)- Update to 1.11.1 * lib: Add nghttp2_hd_inflate_hd2() and deprecate nghttp2_hd_inflate_hd() * lib: Avoid 0-length DATA if NGHTTP2_DATA_FLAG_NO_END_STREAM is set * lib: Fix bug that PING flags are ignored in nghttp2_submit_ping * integration: Workaround runtime error: cgo argument has Go pointer to Go pointer * nghttp: Eliminate zero length DATA frame at the end if possible * nghttpd: Set content-length in status response * nghttpx: Add sni keyword to --backend option * nghttpx: Allow mixed protocol and TLS settings among backends under same pattern * nghttpx: Don't add 0-length DATA when response HEADERS bears END_STREAM flag * nghttpx: Don't add chunked encoded response body for HEAD request * nghttpx: Don't use CN if we have dNSName or iPAddress field * nghttpx: Just call execv instead of execve to pass environ * nghttpx: Make SETTINGS timeout value configurable * nghttpx: Save PID file after it is ready to accept connections * nghttpx: Treat backend failure if SETTINGS is not received within timeout * nghttpx: Wait for SETTINGS ACK to make sure that backend h2 server is alive- Update to 1.10.0 * Pass unknown SETTINGS values to nghttp2_on_frame_recv_callback * Add ALTSVC frame support * Run error callback when peer does not send initial SETTINGS frame * Update http-parser * Update sphinx_rtd_theme * nghttp: add an --expect-continue option * nghttpx: Fix downstream connect callback called early * nghttpx: Truncate too long -b option signature * nghttpx: Fix bug that server push from mruby script did not work * nghttpx: Try next HTTP/1 backend address when connection cannot be made * nghttpx: Retry next HTTP/2 backend address when connection cannot be made * nghttpx: Enable link header field based push for non-final response * nghttpx: Detect online/offline state of backend servers * nghttpx: Better load balancing between backend HTTP/2 servers * nghttpx: Fix crash with backend failure- Update to 1.9.2 * nghttpx: Fix crash with backend failure * nghttpx: Better distribute load to backend h2 servers * nghttpx: Fix error messages on deprecated mode * nghttpx: Fix bug that logger wrote string which was not NULL-terminated * nghttpx: Fix bug that proxy with HTTP/1.1 CONNECT did not work- Update to 1.9.1 * nghttpx: Fix bug that backend tls keyword did not work with -s option * nghttpx: Fix handing stream after connection check was failed - Changes for 1.9.0 * lib: Add nghttp2_error_callback to tell application human readable error message * lib: Reference counted HPACK name/value pair, adding * nghttp2_on_header_callback2 * lib: Add nghttp2_option_set_no_auto_ping_ack() option * lib: Add nghttp2_http2_strerror() to return HTTP/2 error code string * build: Makefile.msvc enhancements (Patch from Jan-E) * build: Lower libev version requirement (Patch from Peter Wu) * build: cmake build support (Patch from Peter Wu) * asio: Fix bug that server event loop breaks with exception * integration: Disable tests that sometimes break randomly on travis * integration: do not use recursive target (Patch from Peter Wu) * h2load: Fix bug that it did not try to connect to server again * h2load: Fix bug that initial max concurrent streams was too large * nghttpx: Memcached connection encryption with tls keyword * nghttpx: Enable/disable TLS per frontend address * nghttpx: Configure TLS per backend routing pattern * nghttpx: Workaround for Ubuntu 15.04 which does not value-initialize on std::make_shared. * nghttpx: Add --error-page option to set custom error pages * nghttpx: Add wildcard host routing * nghttpx: Change read timeout reset timing * nghttpx: Don't push if Link header field includes nopush * nghttpx: Deprecate backend-http1-connections-per-host in favor of backend-connections-per-host * nghttpx: Restructure mode settings, removing --http2-bridge, - -client, and --client-proxy options * nghttpx: Deprecate backend-http1-connections-per-frontend in favor of backend-connections-per-frontend * nghttpx: Don't share session which is already in draining state * nghttpx: Effectively disable backend HTTP/2 connection flow control * nghttpx: Add --frontend-http2-max-concurrent-streams and - -backend-http2-max-concurrent-streams, and deprecate - -http2-max-concurrent-streams option * nghttpx: Deprecate --backend-http2-connections-per-worker option * nghttpx: Share TLS session cache between HTTP/2 and HTTP/1 backend * nghttpx: Rewrite backend HTTP/2 connection coalesce strategy- Update to 1.8.0 * Add Architecture documents (work in progress) * List all contributors in AUTHORS * doc: fix out-of-tree doc builds (Patch from Peter Wu) * Wrap AM_PATH_XML2 by m4_ifdef to handle the case when _PATH_XML2 is not found * Fix configure script for non-gcc, clang build * Document compiling apps and include h2load in configure (Patch from David Beitey) * Don't check for dlopen/libdl on *BSD (Patch from Bernard Spil) * Don't taint CXXFLAGS from AX_CXX_COMPILE_STDCXX_11 * Fixing Windows Makefile version detection (Patch from Reza Tavakoli) * lib: Tokenize extra HTTP header fields * lib: Fix typo in HAVE_CONFIG_H name (Patch from Peter Wu) * lib: Add HTTP/2 extension framework to send and receive non-critical frames * tests: remove unused macros (Patch from Peter Wu) * src: Update default cipher list * src: Fix compile error with gcc-6 which enables C++14 by default * asio: client: Fix connect timeout does not work, return from cb if session stopped, removing client::session::connect_timeout() functon * nghttpd: Start SETTINGS timer after it is written to output buffer * nghttpd: Add trailer header field to status responses * nghttpd: Add -w and -W options to change window size * nghttpx: Worker wide blocker which is used when socket(2) is failed * nghttpx: ConnectBlocker per backend address * nghttpx: Interleave text/html pushed resources with associated resource * nghttpx: Add headers given in add-response-headers for mruby response * nghttpx: Deprecate --backend-ipv4 and --backend-ipv6 in favor of --backend-address-family * nghttpx: Add options to specify address family of memcached connections * nghttpx: Add encryption support for TLS ticket key retrieval * nghttpx: Add TLS support for session cache memcached connection * nghttpx: Refactor blacklisted cipher suite check (Patch from Jay Satiro) * nghttpx: Add TLS support for HTTP/1 backend * nghttpx: Add request-header-field-buffer and max-request-header-fields options, deprecating header-field-buffer and max-header-fields options. * nghttpx: Add --no-http2-cipher-black-list to allow black listed cipher suite * nghttpx: Limit header fields from backend * nghttpx: Fix bug that IPv6 address in Forwarded "for" is not quoted-string * nghttpx: Support multiple frontend addresses * integration-tests: support out-of-tree tests (Patch from Peter Wu) * examples: fix compile warnings (Patch from Peter Wu) - Drop upstreamed nghttp2-c++14.patch- Update to 1.7.1 * Fix CVE-2016-1544 (boo#966514)- Add nghttp2-c++14.patch to properly guard make_unique templates. [bsc#964140]- Update to 1.7.0 * Reset (RST_STREAM) stream if flow control window gets overflow * Validate :authroity, host, and :scheme value more strictly * Check request/response submission error based side of session * Strict outgoing idle stream detection * Return error from nghttp2_submit_{headers,request} when self dependency is made * Add -ldl to APPLDFLAGS for static openssl linking * asio: Stop acceptor on server::http2::stop * asio: Rename http2::get_io_services() as http2::io_services() * h2load: Support UNIX domain socket * h2load: Improve readability of traffic numbers * h2load: Remove "auto" for -m option * h2load: Show progress in rate mode * h2load: Perform sampling for request and connection timings to reduce memory consumption * nghttpd: Add --no-content-length option to omit content-length in response * nghttpx: Interleave pushed streams with the associated stream if pushed streams are javascript and CSS resources * nghttpx: The initial value of request/response buffer is increased to 128K * nghttpx: Fix bug that --listener-disable-timeout option is not used * nghttpx: Don't emit :authority if request does not contain authority information * nghttpx: Add clarification of quotes in configuration file * nghttpx: Don't allow certain characters in host and :scheme header field * nghttpx: Add RFC 7239 Forwarded header field support * nghttpx: Fix crash when running on IPv6 only (Patch from Vernon Tang) * nghttpx: Take into account of trailers when applying max_header_fields * nghttpx: Don't apply max_header_fields and header_field_buffer limit to response * nghttpx: Strict validation for header fields given in configuration * nghttpx: header value should not be lower-cased (Patch from ayanamist)- fixed typo in libnghttp2_asio1 [bsc#962914]- Update to 1.6.0 * Fix heap-use-after-free bug when handling idle streams * Strict error handling for frames which are not allowed after closed (remote) * Set max number of outgoing concurrent streams to 100 by default * Keep incoming streams only at server side * Create stream object for pushed resource during nghttp2_submit_push_promise() * Add nghttp2_session_create_idle_stream() API * Handle response in nghttp2_on_begin_frame_callback * Add --lib-only configure option * Compile with OpenSSL 1.1.0-pre1 * Fix build when OpenSSL 1.0.2 is not available (patch from Sunpoet Po-Chuan Hsieh) * asio: Add connect and read timeout to client API * asio: Add TLS handshake and read timeout to server API * asio: Added access to a requests remote endpoint (patch from Andreas Pohl) * asio: libnghttp2_asio: Added io_service accessors (patch from Andreas Pohl) * h2load: Add req/s min, max, mean and sd for clients * h2load: Fix broken connection times- Update to 1.5.0 * Fix bug that nghttp2_session_find_stream(session, 0) returned NULL * Add nghttp2_session_change_stream_priority() to change stream priority without sending PRIORITY frame * Add nghttp2_session_check_server_session() API * Consider to use CANCEL error code when closing streams with GOAWAY * Don't send push response if GOAWAY has been received * Use error code CANCEL to reset pushed reserved stream from remote * Add nghttp2_session_upgrade2(), deprecate nghttp2_session_upgrade() * Workaround HTTP upgrade with HEAD request in nghttp2_session_upgrade() * Introduce NGHTTP2_NV_FLAG_NO_COPY_NAME and NGHTTP2_NV_FLAG_NO_COPY_VALUE * Add nghttp2_session_check_request_allowed() API function * Switch to clang-format-3.6 * Update mruby to 1.2.0 * tests: fix broken linkage with --disable-static (Patch from Kamil Dudka) * python: Send RST_STREAM if remote side is not closed and response finished * asio: client: call on_error when connection is dropped * asio: ALPN support * h2load: Add --h1 option to force http/1.1 for both http and https URI * h2load: Fix crash when dealing with "connection: close" form HTTP/1.1 server * h2load: h2load goes into infinite loop when timing script file starts with 0.0 in first line (Patch from Kit Chan) * h2load: Override user-agent with -H option * h2load: Print "space savings" to measure header compression efficiency * h2load: Stream error should be counted toward errored * h2load: Show application protocol with OpenSSL < 1.0.2 * nghttpx: Don't send RST_STREAM to h2 backend if backend is disconnected state * nghttpx: Support server push from HTTP/2 backend * nghttpx: Fix bug that causes connection failure with backend proxy URI * nghttpx: Use --backend-tls-sni-field to verify certificate hostname * nghttpx: Log :authority as $http_host if available * nghttpd: Fix crash with CONNECT request * nghttpd: Defered eviction of cached fd using timer * nghttpd: Read /etc/mime.types to set content-type header field * nghttp: Record request method to output it in har correctly * nghttp: Use method given in -H with ":method" in HTTP Upgrade - Drop nghttp2-1.4.0-fix-tests.patch (now in upstream)- Enable spdy and more example applications- Update to 1.4.0: * lib: Don't always expect dynamic table size update. * lib: Shrink to the minimum table size seen in local SETTINGS. * lib: Add new error code NGHTTP2_ERR_PAUSE to send_data_callback. * lib: Avoid excessive WINDOW_UPDATE queuing. * lib: Return fatal error if flooding is detected to close session immediately. * lib: Return type of nghttp2_submit_trailer is int. * lib: Don't send WINDOW_UPDATE with 0 increment. * lib: Fix bug that headers in CONTINUATION were ignored after HEADERS with padding. * package: Use -fvisibility=hidden for internal functions. * package: Show more information in configure summary. * package: Add PIDFile directive to systemd service. * package: Fix daemon upgrade when running under systemd. * app: Compile with BoringSSL. * nghttp: Allow multiple -c option occurrence, and take min and last value. * nghttpd: Fix leak when server failed to listen to given port. * nghttpx: Add TLS dynamic record size behaviour command line options. * nghttpx: Reduce default timeouts for read sockets to 1m. * nghttpx: Fix bug that PUT is replaced with POST. * nghttpx: Change mruby script handling. * nghttpx: Added support for RFC 7413 (TCP Fast Open) on nghttpx proxy listening connections. * nghttpx: Add neverbleed support. * h2load: Don't DOS our server! * h2load: Use duration syntax for timeouts. * h2load: Support subsecond rate period. * h2load: Simplify rate mode. * h2load: Add option for user-definable rate period. * h2load: Reuse SSL/TLS session. * h2load: Reconnect server on connection: close. * h2load: Don't exit in the case of no ALPN protocol overlap. * integration: Update go's http2 package URI. - Add missing baselibs.conf. - Add nghttp2-1.4.0-fix-tests.patch from commit 4825009. - Small spec cleanup.- Update to 1.3.4 * Make traditional init script fail if new config file is broken (Patch from Janusz Dziemidowicz) * nghttpx-logrotate: Don't use killall since we have multiple processes * nghttpx: Fix improper signal handling - Changes for 1.3.3 * Fix bug in padding handling of DATA frame * Use hash table for dynamic table lookup * More warning flags for --enable-werror * Update mruby * h2load: HTTP/1.1 support (Patch from Lucas Pardue) * nghttpx: Do not try to set TCP_NODELAY when frontend is an UNIX socket (Patch from Janusz Dziemidowicz) * nghttpx: Chown UNIX domain socket to user specified as --user * nghttpx: Split monolithic one process into control and worker processes * nghttpx: Handle SSL/TLS data following PROXY protocol line - Changes for 1.3.2 * Check header block limit after new stream is opened * nghttp: Show error if HEADERS frame cannot be sent for whatever reason * nghttpx: Fix assertion failure on TLS handshake * nghttpx: Add x-http2-push header field for pushed resource * nghttpx: Fix compile error with --disable-threads- Update to 1.3.1 * Avoid usage of typeof and replace __builtin_offsetof with offsetof * Honor stream->weight even if stream->last_writelen is 0 * Compile third-party libraries if hpack-tools is enabled * nghttpx-init: Start nghttpx with --daemon * Bundle sphinxcontrib.rubydomain https://bitbucket.org/birkenfeld/sphinx-contrib/src/default/rubydomain/ * Bundle mruby * h2load: Record TTFB on first byte of response body, rather than first socket read * h2load: Improve checking for timing script input, prevent false positive in certain situations * nghttpx: Implement PROXY protocol version 1 (--accept-proxy-protocol option) * nghttpx: Allow link header server push for HTTP/2 backend as well * nghttpx: Don't initiate push if client disabled push * nghttpx: Allow absolute URI in Link header field for push * nghttpx: Fix crash with multi workers and QUIT signal * nghttpx: Add mruby support which is disabled by default (use --with-mruby configure option to enable it) * nghttpx: Drop connection before TLS finish if h2 requirement is not fulfilled - Fix typo in previous changelog entry- Update to 1.3.1 * Limit the number of incoming reserved (remote) streams * Add stream public API * Rewrite priority tree handling * Fix parallel make distcheck * Define it and itprep recursive target if AM_EXTRA_RECURSIVE_TARGETS is defined * fetch-ocsp-response: Handle spurious openssl exist status 0 * nghttpx: Use nghttp2::ssl::DEFAULT_CIPHER_LIST for backend TLS connection * nghttpx: Don't allow blacked listed cipher suites for HTTP/2 connection * nghttpx: better handle /dev/stderr and /dev/stdout (Patch from Tomasz Buchert) * nghttpd: GOAWAY if SSL/TLS requirements for HTTP/2 are not met * nghttpd: Return date header field for 304 * nghttpd: Support HEAD request * h2load: Add Timing-script and base URI support (Patch from Lucas Pardue) * h2load: Add timeout options (Patch from Nora) - Fix typo in changelog- Update to 1.2.1 * doc: Reword the HPACK tutorial (Patch from Tom Harwood) * nghttpx: Fix stability issues * h2load: Fix crash if -r > -n- Update to 1.2.0 * Fix crash if response or data is submitted to closing stream * Header table size UINT32_MAX must be accepted * Use PROTOCOL_ERROR against DATA sent to idle stream * Allow multiple in-flight SETTINGS * Strictly check occurrence of dynamic table size update * Fix configure warning that 'missing' is missing or too old * Fix rm: cannot remove ‘*.rst’: No such file or directory when "make clean" (Patch from Alexis La Goutte) * doc: Reword some of the server and client tutorial (Patch from Tom Harwood) * src: Remove monotonic_clock replacement macro for gcc-4.6 * nghttpx: Add TLS ticket key sharing among nghttpx instances using memcached * nghttpx: Add shared session cache using memcached * nghttpx: Set SSL/TLS session timeout to 12 hours * nghttpx: Enable session resumption on HTTP/2 backend * nghttpx: Don't rewrite host header field by default * nghttpx: Generate new ticket key every 1hr and its life time is now 12hrs * nghttpx: Don't reuse backend connection if it is not clean * nghttpx: Add AES-256-CBC encryption for TLS session ticket * nghttpd: Fix the bug that 304 response has non-empty body * h2load: Add -r and -C options to h2load (Patch from Nora Shoemaker) - Changes for 1.1.2 * Fix linker error with libnghttp2_asio * Allow custom installation location for Python bindings - Drop no longer needed missing_nghttp2_timegm.patch- Update to 1.1.1 * nghttpx: Fix various stability issues and memory leak bug - Changes for 1.1.0 * Fix DATA is not consumed if nghttp2_http_on_data_chunk failed * nghttp2_submit_response and nghttp2_submit_headers may return * NGHTTP2_ERR_DATA_EXIST * msvc build fixes and enchantments (Patch from Gabi Davar) * Compile with IRIX gcc-4.7 (Patch from Klaus Ziegler) * nghttp: Add --max-concurrent-streams option * nghttp: Add comment on HAR on pushed objects (Patch from acesso) * nghttpx: Add --include option to read additional configuration from given file * nghttpx: Add backend routing based on request host and path by extending -b option * nghttpx: Allow log variable to be enclosed by curly braces for disambiguation * nghttpx: Add log variables related to SSL/TLS connection * h2load: Add --ciphers option - Add patches * missing_nghttp2_timegm.patch to fix building of asio library * nghttp2-remove-python-build.patch to fix python bindings installation when autotools are used- Update to 1.0.5 * Add STREAM_DEP_DEBUG macro switch to enable runtime validation of depedency tree * Fix another bug in priority handling; sibling's item is not queued when ancestor's item is detached * nghttpx: Fix crash with --http2-bridge and both frontend and backend TLS- Update to 1.0.4 * Fix assertion failure in stream_update_dep_on_detach_item (GH-264) - Changes for 1.0.3 * Fix bug that idle self-depending PRIORITY is not handled gracefully * Optimize dependency based priority code to Firefox style tree * enable third-party for asio_lib too (Patch from Mike Frysinger) * fetch-ocsp-response: Support LibreSSL, and include port in ocsp_host * src: Support compile with LibreSSL * nghttpx: Fix bug that x-forwarded-proto header field does not reflect frontend scheme on HTTP/2 backend * nghttpx: Validate :path on SPDY frontend- Update to 1.0.2 * Fix bug that data are not consumed for connection in race condition (GH-253) * Define NGHTTP2_EXTERN to __declspec(dllimport) when using nghttp2 for Windows build * Translate fetch-ocsp-response into Python * libevent-client: Fix bug that path is broken if URI does not contain path part * python: Call on_close callback when connection is lost for server session * python: Expose client certificate, if available (Patch from Fabian Wiesel) * python: Catch and log failure to set TCP_NODELAY (Patch from Fabian Wiesel) * nghttpx: Add --add-request-header option * nghttpx: Make WebSocket upgrade work * nghttpx: Fix bug that END_STREAM is not set in backend for POST with Upgrade * nghttpx: Don't send "Expect" header field twice- Update to 1.0.1 * Include stdint.h instead of inttypes.h when compiled with MSVC < 2013 * Fix invalid memory free on out-of-memory handling * integration: Use our own copy of golang spdy package * android: Don't link zlib bundled with android NDK * Dockerfile.android: Update NDK ver, and ubuntu; build and link zlib * src, examples: Fix up OpenSSL initialization * nghttpx: Allow HTTP Upgrade from POST request if response header has not been sent to the client * nghttpx: Fix bug that PUSH_PROMISE is sent after associated response HEADERS * nghttpd: Close connection after settings timeout and GOAWAY was sent * h2load: Fix bug that NPN fails if ALPN is enabled- Update to 1.0.0 * v1.0.0 introduced backward incompatible changes from 0.7 series. Read https://nghttp2.org/documentation/package_README.html#migration-from-v0-7-15-or-earlier to migrate from older version to this latest version. - Changes for 0.7.15 * Hopefully, this is the last release for 0.7.x series. Development continues in 1.x series. * Access violation in buffers (GH-232) (Patch from Etienne Cimon) * Retry finding jemalloc lib by je_malloc_stats_print (GH-233) * inflatehd: Fix crash if 'wire' value is not string (GH-235) * nghttpx: Revert 585af93 to fix crash with TLS (GH-234) * nghttpd: Add --echo-upload option to send back request body- Update to 0.7.14 * Fix global-buffer-overflow in HPACK code * Fix doc for nghttp2_select_next_protocol * Fix bug that promised stream was not reset on decompression error * Add systemd and upstart configuration file for nghttpx (Patch from Zhuoyun Wei) * Improve nghttpx logrotate configuration file (Patch from Zhuoyun Wei) * Update sphinx_rtd_theme * h2load: Update h2load to give connect time and ttfb stats (Patch from ericcarlschwartz) * nghttpd: Add -m, --max-concurrent-streams option * nghttpx: Log absolute URI for HTTP/2 or client proxy request * nghttpx: Add --header-field-buffer and --max-header-fields options * nghttp: Fix assertion error if very large value is given to -t- Update to 0.7.13 * Fix bug that promised stream was not reset by returning NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE from nghttp2_on_header_callback. Instead, associated stream was reset. * Allow NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE from nghttp2_on_begin_headers_callback * h2load: Effectively disable flow control by setting large window size * asio: Graceful shutdown and joinable server (Patch from Xiaoguang Sun)- Update to 0.7.12 * Fix bug that nghttp2_session_set_next_stream_id accepts invalid stream_id * HPACK: Rewrite static header table handling * HPACK: Never index authorization and small cookie header field * Don't install libnghttp2_asio headers if they are disabled * doc: Specify program directive so that hyperlink to option is correctly pointed to the intended location * asio: client: Call error_cb on error occurred in do_read and do_write (Fixes GH-207) * nghttp: Add --no-push option to disable server push * nghttp: Show stream ID in statistics output * nghttp: Remove --dep-idle option * nghttp: Use same priority anchor nodes as Firefox does * nghttpx: Don't push resource if link header has non empty loadpolicy * nghttpx: Add logging for somewhat important events (logs, tickets, and ocsp) * nghttpx: Set Downstream to stream user data on HTTP Upgrade to h2- Update to 0.7.11 * nghttpx: Fix waitpid race condition in ocsp response update * nghttp: Consider user-provided :authority header field for SNI as well as host header field - Changes for 0.7.10 * Make sure that nghttp2 license is MIT license * Add nghttp2_session_consume_{connection,stream} to consume bytes independent * Add nghttp2_send_data_callback to send DATA payload without copying "static inline" fix for build with VS2013 (Patch from Remo E) * Update lib/Makefile.msvc (Patch from Remo E) * Remove dependency on libws2_32 on Windows build * Define NGHTTP2_EXTERN macro to export function for Windows build * doc: Generate API doc per function * python: Add async body generation support * python: Fix pseudo-header field ordering bug * nghttpx: Redirect stderr to errorlog file * nghttpx: Fix bug that data buffered in SSL object are not read * nghttpx: Remove --tls-ctx-per-worker option * nghttpx: Add OCSP stapling feature- Enable python bindings - Update to 0.7.9 * Implements h2-14 protocol (http://tools.ietf.org/html/draft-ietf-httpbis-http2-14) * Implements HPACK 09 (http://tools.ietf.org/html/draft-ietf-httpbis-header-compression-09) * h2load: Fix crash if -t > -c * h2load: Add -d option to upload data to server * nghttpx: Forward only "trailers" keyword in te when forwarding HTTP/2 backend * nghttpx: Fix PUSH_PROMISE header field corruption [GH-194] * nghttpx: Fix te header field is duplicated when forwarding HTTP/2 backend * nghttp, nghttpd: Add --hexdump option to hexdump incoming traffic. * examples: Place AM_CPPFLAGS first to use in-package header files first [GH-192] - Changes for 0.7.8 * Implements h2-14 protocol (http://tools.ietf.org/html/draft-ietf-httpbis-http2-14) * Implements HPACK 09 (http://tools.ietf.org/html/draft-ietf-httpbis-header-compression-09) * Validate :path header field for http or https URI scheme * NULL-terminate header field name and value presented by callback * README.rst: Cleaned up the grammar a bit (Patch from Ross Smith II) * h2load: fix for segfault by reserving correct worker count (Patch from Stefan Eissing)- Avoid shipping documentation redundantly. Set RPM groups.- Fix rpm group- Update to 0.7.5 * Implements h2-14 protocol (http://tools.ietf.org/html/draft-ietf-httpbis-http2-14) * Implements HPACK 09 (http://tools.ietf.org/html/draft-ietf-httpbis-header-compression-09) * Validate HTTP semantics by default * Add nghttp2_option_set_no_http_messaging() API function * Update http-parser * nghttp, nghttpd, nghttpx: Use "sensitive" to indicate "never indexed" header field * nghttp, nghttpd, nghttpx, h2load: Select/announce h2 in ALPN/NPN * nghttp: Fix unaligned field output in --stat * nghttp: Fix -H does not work with -u upgrade request * nghttp: Update resource timing terminology according to Resource Timing TR * nghttpd: Add -a option which takes an address parameter that allows nghttpd to bind to a non-default address. Patch from Brian Card * nghttpx: Use omit minor version in case of HTTP/2 in via header and access log * nghttpx: Support UNIX domain socket on both frontend and backend * nghttpx: Fix crash in http/1 backend when backend returns more bytes than CL * nghttpx: Cast configuration value to rlim_t to avoid compile error on 32bit * nghttpx: Fix 1 second delay in HTTP/2 backend connection * nghttpx: Fix request re-submission bug in HTTP/2 backend * asio-sv2: Fix compile error with OS X- Initial packaging of 0.7.4/sbin/ldconfig/sbin/ldconfighci-cnode1-m0 16165915751.40.0-lp152.2.6.11.40.0-lp152.2.6.1libnghttp2.so.14libnghttp2.so.14.19.0libnghttp2-14COPYING/usr/lib//usr/share/licenses//usr/share/licenses/libnghttp2-14/-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.opensuse.org/openSUSE:Maintenance:15975/openSUSE_Leap_15.2_Update/92881e26f3dd4fa74f37668bef02eec5-nghttp2.openSUSE_Leap_15.2_Updatecpioxz5i586-suse-linuxELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=bec8629e39704ad0dc20a392ce46dc71ca84971d, strippeddirectoryASCII textPRRRRR?w0is@t<utf-8273b04d2928888fd318e960ccde3911a5a6185f2efcc5a91b716cf8ad87290b0?7zXZ !t/_] cr$x#DeE%N9}&̴k.Ueh3㨶">|(|'3kXe}O` [7_P޳jh^J.毱U hV}FO-TtC1 l8Y'69v*ƛ~,Amg7=L^WPf_0@0-l#^`q$!ic%[wmR'n:I󿍥2,I=I^ՐHNs((W*X Ud/Ik Iy\iqgH$ ͷ &~U]Č jXeUt)x7\X@ WqԀ$k5+XZS@ޔ SIrAլ%-?$t9Xi } w(eG E5k.}3.*qWbqYBR}'LJR kJw|ݰQG{/>,'(0*jAWc׻tx[=K8!+sz“ir FZ/EMq=-KG5b^- d Ep[, 6]uF)>c>yOu 3׹'z28_կ2G2s8qv0elC0 D׻꾮f(v1aq1m.2=I*EY R+ćy$S+ 8 lGo!+TUQuW-KGp!ւ#Ѓ/&Xt>F$oJ.7G; L:Y?ֵM S&%>DF XR6i5tY ɐ +4 Jl3=d>k&W Ruᡫ[Y|%t# pVqxNP1cjTy+1#$e8\GTpRs]mW -yVmU㤓$l؆Ys--$0*Wq҈f߸TW4yW9/쮈:[Z+3f\*H}鳃RxnK7לUO:vh*q1:IN?cHe>2aEN1a$#aSTɴw9,E pP0m]X_;aߝ&p]|'>\<3*Nr)6(pH"s`Eb @8^QH(=w찷+ӺFa̡kJ$f$R D$4(仧cL6~ @@"V餜 c%5CJpX0=;fu;Twh|ȗ!+o,v#v 2\\Dr}ڭ%OqZrԫav0j( ;83=+xW·vo.Y{f#c-cXgh9i:)1\p f+0b돊زs^d6O <-HbRZkmLlZ-$0smX~k7| i8fV. ɉS϶\{fuvB"tvY[Rw<τK H?pILm^0yf \>9!ЬM? _u@s&XF 0q>jq{X$W`jՋaBC%8F\ QKBRuEN o.f=|]A$^ʦs1ʝ^B/Z`w{KgFb1@VB~E1tY0^h,YN߼L(\s 8 ?9}1E 汔UW}N ߻?4<Ԍ\SNt$E.1z Ey/Xo%bY`Fܦmkte %`y`e=+j(93ĥY=f:NYQ&L%t/;A\̏/>Nwd!ط9lGUoxK$#[aɡ 5BWPa~!4ӂ\_:Mğ#nǀ s,Hg *1zndp\E/77J KsƕRH[M88 -1 vKK5[˙r`ԗ}[φCx ]"Ž;لV}ڌu7 6b+&ƢA̓<{;.<Eݏ:=G*]bapd%ϪL! 0S=sڻn"B=5>M.Ôjw&% hpl ZLDi䖺U$Lhrr^oHg&ɴ^](-!qfU#~Te:ZPRP'YVoJ"al0?YD<6M4aý ѻGg}ƺ"fPqVNswxO}J(&KR7’7#moD re0J[x2rYAwXY* s gBM4T ,\ ^-gK{ֺF?t@*&˸qYTs*)j=2j'MRX̙n 櫸*@;)'ғ!c'ҹ,ʗ_aN˯tD, KZޯ|vvsaLS{U1.[!ӗ4uug͍w} R>}觺@DƀqE:K4ݥ ƼGt.qm>?JdXڽͳh.ćnˇBe\b}!~U  4a()/wcI"O)-oN&tZb[G/I2Fcsu a!aûB)6o (Q=yQ;)7ƽE,*c./}Õ/.$@~h6H##IA}" U_j+db;N 5KW&$t*c?Zy&6VLIٝ }԰#뀟F?l `孳6 =t' c,ܞLjiLf@¹m*$coHK}N~&^ +=n̄X5X;} fħts \|_#r092UnMY$His׈LE$8aiŶO;R@ɭ;Ds:nU%LgK׋{ =M Ħ376Ǎv!{ Xy B1+7 M1w _YMz//2M'0^1\"AuTqCx@A/ܳ4o[Eź0[xbxpʰ 71rqQ pHy]O8L<MD!NENh*,:gva''\w-\S8u%;xƾJs}|~R)R7=VBgN5K,D%ʍ?|IR3Ir 'g[PP2'Ю9X0W=YDP4AC9Kp^)v#Αk#A#S J(ܠjݔY>cZ= C.i--dNb@g!|mvkӌi1BVpA0+(-Jb!Y7M;q7zYm^vib_/ea!Jߗm[k\|} 5ԶMъ2Meص{F-u7R_*@Qg!kwNkmWcviPzlR/ 2{ P{aCT#J@({; \eR~|'ZjFP%CB"$[e`Ҡ3wγӇkf궙4a:PDpZ@c.և1t9>LZDTە j/&ǑT" %LyX8K*)]&.5—fJKP f)\Fuuil&0D^oi'x L; rvt(Z;dGD&_XZ ;J$F)vᎩ'nU# zGNs_zD|ەPaRxScYVm, tr쉖2@E%;<yI{qVŵKE9m:kE+fwYFۏ74/&$RRNABzeEi[z*jXyY{ׇB'vIJ?kKlBJ|wz uAhKC*WW*G[S vf(?C.f^fLL> ؚI;i&XUeou+ |A+// pq{vVī5m@,LYwA4.o3g16ԑrԑ˙S˚^;O1X:+S`20#M8Bp>"ͭ/V@hJi.su08&(c7Z2=c}+'%dBE_49ڼ0ô iJ=>57N*Ejpw >2ƺE7N ZeBA*0<+m( pFB*UUH1It`a3l*go-deLpѫQ(4K C^%8٭xJ s!QQ/g>3iYybC~_Y=>\C#C@[LHْUOOdPj~5{=;a\]$*ùWii]TJjͧ XL Ld*#m1W?@]3ܟ#~pn$fqYO>U77M+R AVzKk \.:EJ'uz3HzD? `(bp7\ 8cgiR"1`'&ģF:.}%lzd_MT{;@Ԗ*Qik׀s370ma~Ld!˗_>P>ƉقU2MIDq╻m#4BeCh[H~br8._scbsRi` (h-,QD[m]T NR&J{:vD#g"f_x~2Y"'}B} Zkq~X3k4PgW7PN,:UcOJ.S73 VUY0k N0R9"R ~A3 )ik'xz@vd"h,zrZ+A.N')qD9 *>}A V!=/evֲkXa~ zuGt/L h ܎\ĭP "b%dw<:nl_TFld$TrlJj!R%ۙ|Bhj^bVr9-fzE.Zvi>&Sj;戁@\YE>|ܲ.P2njkAGռXҜR6Kvhde3HP?#!3P8<*Mw%3uN8ٶ4Uh2=HqUl, ~[Xь>p6Afx?4SdhSf>em[[l0;S'JK6D Uw\`gjK~CSJOe2!,WlvHEop7cA}-%q;^$SR 3;:+n =sXbrb<*Ivo|Cv @U!n.,;_1tCHcfB:T`3S QWi :b򎽘`rz@v$px)sn݄Qm\Ky_[q[gB(a{7O0KlG11bY*26V%2HI@E~6RAZL#&<+23$%]9@s5g%Ώ+SmI- Cq RGmZ UO\[ly8BTpFQvb/%X雿yezgF7PL|ah&X:86$HlEDi7cDEUC&H[`~'.B(n(ϜwlF@ڲ_%&:N-J)>I)ZjhR?06*qþf\hrs/11Ez$-3LJOsa+|7R*#cݰC$] ׮q$`%ڴa:b` 44K;T:έ1C()gIk"qEg>:RF@bnpd2F}&YbI&CZ:2m,B]вcߝ|j܆SrE VdYys90J|P#^ΑD&& (_8KOPzB{=IExr+]:w`JCg-rØTkEnX ᤞM˿8%=s5Aʿ"0$i$L6\mlH_\UZ+9j0+TW,PM hrZNA|N]^BF&}fi涂 !n.haV^+el&!gL鲘^fEB_b]I0!ua|;6c)B^k[qپSz9NVb3X/JWG(|kx.3p D2['ta!S$RWK!CDe۬zߌ'}j%>: uMKߚnBN=*Da:/P.p~>!U{ڵ;;p's6keB'cLˋmkdOcbbAӖ"dEH?AVJx r'QK:19˸6,`8b5PSox#E>D(\] ަA4ҧ|Z6VCa5[ww}Y2fF!a葋r?͒ŶfXC#ssՋk%|M=&PZ'ǵc5?'a}g^ؐ=1+o4v QVm7V)X"UBŠ IE?4;exݾr` /!`戞z[zhQ‡/Xn ,Q2S5ǀVEV:O!4l{jőpǑu&dIApM Ul¡B`q$/:I(M)4-붇Mu F#PQ&z̊bkLWpuEmXV*5wwE7\j af 3}<]140?Kpcݿ9x;C}iOyME\quE'*% }XKɑ{/j>5dNᜓFځĽ PP ivR/M!l4D > 4z GuFV.75S='i+V=b @Css*7Q롃a z.AɃJf!Om0hD B_OQ1ʲ=HY*^&jFT.iRLo긾nd*VlR~}koHȪ4Vcq2Q62zT4ٴ/{WNpk͓ XjyތñV(;8/i;*%`JvB!N27OH1͚B˥DBA]YXWw}Ts#t_ޙBٞ]*&vU'm~ KRWCQrJEb ەYG{r7i| t I5<+P_~C<_ɬ>{N@vCP/[\xdn_uA(RA> ݦI &\PŬ =pܠ)w6__TI-Q;m{ d}o>Yﻆ`7VM,B 0cМφqPn$ ̂@C+inkXf!LckrG|d j}qn3])+RtdDw*% V}FxqzAyWbpA,- 5ӊ}.IOo+JWZP[wr,mp }c[E&H!e&2<]pPGlԉ!X!wRVUYߦM|vg!]ACAgdZn^{Ы] FIY| nF5+w௚䥨9rhrP3" re U^}aL 8i߅sdgu0k{HڧJnTN9w +TW1 ¯vwA_4s!{;3mW1־Z )y>=b 6 &xUVBvsV6ѹAŠы m wwk-ư3RxfRl1C(pn8wfBǨFu [+UXYՓhZ1ݱ]Y4;|f$yI砩VWC!WNYR|n}OR\35AVP"y39uQ1_R/K 0#4T;08$H/S|sC,YȪ&0jOAEgR^ zeW7| &>42b $T_'?$gtiO(v(ۮ:s8e4O' T6'Z0Y![y|O_t hٕJ"!!#_<ZK|qC ~: #j%Jc6@=(HM) 9ߚֻ9p^o /E$lHCx0N>4zٖ?߬ԡ58 ȗЉz[;QMF)oomT V5nfMϹh뷇 +,*N2:Z9ì1d8_U"5c~,;'_,mȏZ Vj<ev"5m\PjAuT5;FƹzQtԊ'qyЬhg{ Z99q,~0bjS?L5m?AV9Ҟ#\L}>6?qP 'Dٔ JXh r-B7+bx(j6|J-kyBtԲǛ|(0_{05#|f Z ijr8C4៑.B$elbtJIe\\ SlXxoC' ԇe+Rf^]ò S=rJEڔe@q5eBesH5U@Y w|rh3\.#BF(&ShXVv`rPd[)v?޿O|.Ȟ +9N)zw,<3ylg2)a6VO-(cWӃ%yJYZ:7VW$Ӡ౻eΪ`w,  1>4`l.6k Opu It\L/Ve8|7*1 ;NM.6 5~>]',@*,yE.Ҁ(sLKxm|CyGÔ!Ždy-Q ged|!.]*K-P N snU/-B.<0U{DaĔa:v oftUz*FHfw*cT0G*vne+>0oӜw>Y4r۴LFEҫ'K|QPUr6KϞ0!]Bk0dXU?k<WNaUGưҔ4o:5,OG_WAxt ڐtCĨ) \JvJ~ڙ%aUmQE]ӧ \jDp$_?ǰ~(|"@ʵ?2?s 9X:b혱=]r*ȑͼzN~lq7N p钝;='d&A-3 2}߸qK:۴&0Rݷ({ҎN ` b!MlCGciCϠU/zdJh+L`R~[)N Co#>NED A10Q֣Li48`t1y>L?T;3)CD _QAM?!x{)֤ӚX{D!ɪz."K0$]ZR' r_,&hroŭ0X6so #Vf6VaG}6p8L`Nm٩w ] XMDxe5c>+/ąkX;ɘN'1ͲQZ.CеSܹˋYl19D1|o-E1ƅh>@*oSS5:O<I_ESX?Ki[\ ]ay{flB((+']H'1KouK+ȿִo0uT G)Dz"BgM&Xp$Fl9th4:e|o'@78+25ȏaۍ`Ha%XƑ<9{ƽޅD/9 ~u&Q ~DbfndYj%*> h&\Lή_OGK[ 1Ɣ\He3H'M`L#5U뻫G#U:!"Yf!C/|7hgÔU &[Q㸛N1e`FmFZƢӛh/`FH)Xىv({NRACcq-D:#p0wwaw},:~.|oøH*V#9+B? 0DI<W ˷. \ڪKEal }Lnm~  Nj=J朔Эn:V{+ #FD2*l6*8Gh o*i\x" x,ZcbS Vp Dom5>."OUM̧ԾVy2S:YEبV5԰)>`CP`Nȡx-2WO:'" ]E@Z(_'.{oL6,OZ`4K ΂oޙh46/n㼪>4Eu) ׯ>ɿі롛W܏9p&{\ƪEraP*8eBC֠k? r=Kƒ >SPeD^cb&ȱSeA&GO$i{7LItib)Ԣ-A_}HŨ ;H׷ u՛P(v5uy&˚G dLh%;Ne! ΋}7PBz4uMdj]/VEo vg' 8noђmGIks8 MXɥ}L^~}ҷ}i2;c%kP;gb=cjTP)Zg=3 mξؐZQ3B]fl2Мۏ [\;=o[ w>9"CEq\ [EOc\KF ɸԄdŞq9AlDͅ.I{z~|CؔLjטX+IF ]B_:M> #Me XQ6}ꛙ.5!oz]c qxP0咋|dB4iVUٱVX$#pMMA'7# g~dP!cn1Ue꣈5^iی /?ъ]M#T$P_`U Re6 A'bw*T(J5t;>)]/ [HUDVO aKgB$@^XهE;r3^ Sz8h;as@ڶ 89~ROe谻\<'1[}:ڤOߕU|J9yC(NebxPԊ]/?:oB5PR yf@rRHoYkBӪ# cH\`7oxBp.6-#Qa|a\ؿ?]t_yq,nhT;Y:ìIcdoL;aN-ExLF&zC96͇s3 NR`*gSoz}ew00|ԙ0j1g'w%?/Td2ަ)%j8ƹ@ 'UXdnsa muM?*?̀\ N YU)KlG ;tEǺ1p~5HF }^ ہ(1P UqS- qceUx!Fkڲ ,_\vl8C<]TE2b,l{en?boiJ6&_Q̚#nGX¿or%bCrf^RK+v[=OCsYpXaCZ1شHԛxbX[X\)c%}cRKzhkZRu$Orlr2 ]fD襙 ޷]׻<B 1?@mHȞBQUDžE*]w|t:Ǟkxj9iE84!wbb!  d>[<̓˓d:@`{n-V9n:_Ǒ>ZH<]>'M2)tXk͈7Oop.]{`헽|:1섡0ŏ#h7M_%cyvﯱwcl>"P^"r@-XUɌpW'>6ypꬃjT4o(b/ Azض|hW*U'\""e^$d WD,&W+ jo|郥o'4셅'KPybO)2@PU@eMw[Ozb3;#7ɸ}Mu#ͷ2M);l =ol;W]% Me@__ ctf,K[=nw9n l)0xtt<~ՌaAo)MY Ty #nξw=Qq&UI&vEͷT^WKbg.y2+v M9}~֓{:'MgzbY]ӧ KC{ pR,W-6̎0Z4|/O"Y'?n00g6ۺsnj-̋w-E [OjV*9z,!T(i+6q'\n)b FըnīɺV>feIrvoi>,Ўmcw3.6$5|8JJe-1l GjCHfoKDԲ:kc2/},{'W*9ۄg~>DP|pW,=a&6k{ocdӏ2"Uupi  yEQbFMdd4 f3g1\I}3/SRfib=v+e?IZg1PJdh+1r؁]S'jM:CWBQyk+3ʲm  3UlFaNwlݞfQR_I類l۠hݪΧ%N+F7ETJђ||JCEЀ2-;U0/E?>jU^$̞! /6| -cjB a,SpS:^)ɳPm3= ßcM&ڐmKD({' /+s[/>}f~ƋT ] E/)Zq#kgN&kc<'W݇Kil3١QxW9b6nQoNp> :-<8Eܰyؐt!Rړ$xqGl84ԥ+y]A@J8 T6`osH^ppi6y'5_!WihrαXQE;8XX6ybҴ f|9^_GyfFIs+G&i t:XQ0lZ<|C;qg$/uc;#LEbXl7OZvцGVkCm|@֛`z)''+D1g>8VDefPq [zJ!=(%4J*u=yw ]xuߗo{NvKl`%u;k%]sdb e:@CnP?;¥ZCGdVCb@ _F-rm{$9-"\?N[_;Wc2W}̀CTQ!m:Zd!v1B?c:/ck@J$jV 9@=mҁO<;`Z- P&a.P s}HuEeempvt.z|jV]ޯX~:F mv<e#Ѡf:c@`~qA&#L֫6-m]*ѯE$O Z s:>QJ[FdSk?.xXwNΌ)%$m<%'Cb3ҿo_ $7L-L9d^G]0V~|:np)DqrL%Mw|y@i^h%JLc{!&OӊǓx3#gYڛ [C][Zkx \itnB$/2nLk @`Iȉm/TR(df7'MY.#+yy'Bo۲P}ϡy,LT/Ǐr H L_-n\-g eY̍pmGʠЇp9:Lnf3u$ˡ9#rֺqq%Ig'\ȊG,KDFaUƳͿo^ݪqDջ" zxH=9Hjϻ ڢ:d^*sMVCqpZ }rI)/:gۼBғ,Q77h W#-<++BJ%{JI.hI,C F;D<״[aȼX#(iP4+g(1G##(*MnS˞^S=:l䀞4;**_C|AO.B ntc 7Qw]|CzU8qQ hqQߐ-R>}YmJUBskћP#g!K%d~6QK ~WcivmC%_Vw^i' Br[I*~*du𝵻c]~dOdhݏm5/Vt!XsB y/Wg#[6WX"u\x!U330Wݸ[L6ylY{oO˵oH :9*e59[';!ՕM}S`leʟz ~aO e!Gt)"]!NU- 8jMw,=KcuV~qy Bccp~&I-ŸK5`dgc#mWiM7U4r<8k(F0?ŋn{Φ $/ظ0-KGYcM ћ6F/6o@~WT`ܻgD}8%ZD]p8hHZID95 ǒ8ƚd:PYyzmek.pq; ,. oumĎZo*ᨹ_;u{R8H_֘ i+u4lT\K'3Jmf[Ӂt(__q6`_va B"w(i 0J} _Otq3LM`WE՞'ڀP.`g> l~xV瀄rNG!,sf 5D*ag ()h%__m YMXlCnwb煣H V8o@#oY! hs* =Abα!-<8ˇdict&.8,J2^Xs;uT6k|Gʰ9B- _9?xcih];$ypH{{&%> WҀ[H0ze^}nc@tDwΟw5$+E"ds";cub.rB%j#ۢgʿ]rr"gDc* d R`̭y ]p4 a۩gf#AԔƄ-b @prz@`dI8ͩ쟂 wquFxIoCgCdG gN@1Z!9@GOzX^<jV>۫Ƨ\Pa 0% PޣLj&\쾂@c-GL " zjW [6 S}ZB1/F/zIȊqCџ!"']莸Ȭ>#5'ms Ǧ78zu 11y HA3Qgp^x28ok1{%Wc " ūu4l}q$VM> ^-aoFqA4WyG @vamfRK@UZR!3APdA'-D(ڂoJ?R8`@ͅ[C7ѷwWc+g;a֭QD$Q z؝J^=+ea :~Eb>n dV]CVWOQ׿^U?~Y`Xٵ~7" [8tW2୍t!1nԻ6wlu9 "*5[f1Ö`Rs\(t]M|.|I[ ry#:%G#D< {n|*R'N]'ӊs&hrϨ+q9g`b3DX ;YxPHYC Cnu`^{!ԝ89VT VO6~So)|a(:':ӫ"Yl_eb 4f?5`<4m49 &̀rLN /힂<0ĒYqZf.[ x"(r[|,FVߣӣ۲?W_]IGxHS,p/ק ^ў+JIgͬ{p; U {u^ }A<׵|JaæVzӿMw*AjkSpN< Sj1~^J'wNw=4 m֧cA ԣ)j Ep`<\!6LTwjI9gO40L_KR" (~Zͳ(hg:K>4b'Jj۹'F_ߠDh}CfuN`'SiS+_Y]:t;R,Wq48Po>`5I*h ߚc0TO;\/luHɝhҋI:2QdE=8.3DiC1%Ug0q/+r@":oDHV(O Ći8`_T}cJQ5ebIsͷ8Gu4y,)Ph]A˞z֓ ?D9D5 O3**`kH~p}pi3Ly11T9wUf81WD9EOI5"FBr@3e (9bED7{|Abqctf=<0=wiom nL8\!A6ًUUTM|mSX`Sg8:Mʟ1?OK .D˼0vfa5ja/i"E$FU7>a;;xR=*hZ}YSW6"6txsA\f[)☡pg7yc䡁`d0+],@Z`cv[n?=ow^1FM"ɛP,6(\j 9v{=HqC23`dHI)5e>bh9n3%v0 ć}.j"14PS>$\!߿lǘ2 L)0Qfv]A *mruÊc+\䊲[^/ thi&n.$@$Rzv5_6N! f%uo0tҬKq !1gN>;1d0+&_bbzIv6Kv3Oj71w&(ȓ叞"'M3H'E95qD@33- w(74lnC`- Մo,~uuNz0-جe?Y"mkmW\$ <"{rԊ@2{`Am(2@N >dP<"#"f:-47BG,d~o>H@p0pO퐂T="5n>AE>I t_R8* 6xܝE%G'Xᯍ]ҜN7TDAX .T nVTqœhgFDnV9o@MBdnW"ͯ5&``>7YSv16SjMݱʋ%#]&g+,]\u Ķrxxl]+QL BG_& cf޳m_SmE!{bPvN4kѢ(_,c?Y]˶͟fZ RcqFߘ\yLqdSQ HR,f縃9)]) J5v|(YjѡnIhNPTG4{ b%cgPr3>o$`Gm!ȟI57/l3u4pwf9 ":U?@9(+ivLL g^g+!9.FӇ޴-5v#o4 %#'zj׳zcSz`s6vC&$r!>je0Q֎P AbKl{V\I RƣNXſerJ _ #i݀tY@T"@L|(`6 %%l<V3!k=%*陝lRyܖO ߵc % KxNR!Tnq06\$BSN{(.>gA:3rϨ%N#FCBmjtO5 B5jeMBdWvS!dOoeD kP nH̝cS%(Pf4KKVNX ΁}%&h=tհ+j"قIdB]ѹ㏐DÄdCx6KCj=]Jw0'x<"b?D~H8%oMfQq/9-g%?4Cxj;Sg{deiܺ'jvxJǁ2;`47ZLW`6:%zR">\Um_睩Co*rw1L=yة׍Cκ<U|ʂK7-?~y1']NRD.r6.UPzB1Jj;:+@ uG@ZIZ,/~?|qU ]%,48*:SXCR&c ΣY_b\&0'9͆O>8܋P<>$u]<@~߸SnD'u"U[ ij+=2]Mr69(J\F. A,@s|G^M:Dz'kz\f w:r'8˧N'>hjZ2eZWg{|R E[YG DzпJ_.jC;F+S8|*lݭn^{1,"L:`g052F9#'jɲwK01;%〽F/&>` maN~zoJeVFR<ծVVXuT`%Ky$D4z%_>,T͝/Ou OFI+`.&yTzޱm媂#&Wéyy'ѸZ͆ﱃgw'.__Ι\fr)A 5;2`;2w~,x(g̘xOȪ^)R'i#: YӴО_KIhRC|*U8#nk#c}?6 ʗXs`@1&c쯃$3,%!bjmߊO)a7Ҿ/C?1=%fTmy0@i`w wCBp_7%^&dIw`ZB.DM/iOƩ9dl cl-b`aD_0NZ-.KOx]^-{&GP):Q)-$cSqQ/]I 8`;].LʼG+7@jv~mI&=Y/!piT&I9H4W[5 t2= Ə=YӚ? _"5!CHKN`kW݂g+R+݊0XVX%8{Oh F/WŦǗNhrvDUJ^^j &O>}nXQrS²'>\σ ]DjS: 2])[VO<+6EoSC+J} })Ƣœ(:`ruC_nw))=L+kEV.LRuv6%" Jр4 WUգ9sk6ؠ^aknB'we9g:.xu\xyM7i`iuia%Lvw-^ty>sȏOu/| sׇ:i˧{DD?KYAZa`te_z/I*kilH-{f&[p1PYJ41 d-GBH|g9 iUaꫬʧ 6Rcv vb:[-id dbvHw\=yv1!Z&ec 0gh 40GGVET (2; <#@'}\FQd{(*638VM{%?-8(yap 10"oa0%ߩbVŠtT-auW˳|5'15Qedv۾F|lȻLZP8+iTwGDc]";޾'uแOh"݂1w5G-2|ҫ\G*=<˅uH4 ]t P^رC , &X<7Kzt*S-y45;-jBian[?6̝~:xj^d1[X'z+)t&h U\5(/}3k~RKleΟQ&]ˇ/Y;w@EY sʸtڜ0S>Q%ԿFdko&Nzz(/|Jַ< %3#F5n۞^a`x[ۺ2\ծ:5Ń@eDxH 9NKMwd{= ~ y',qF7LÉHO,Sa:Kb0˦3oMZJ;ؖxd`MKc"oN'᥃(X(PU6φ M 47꥽\w x?$^%KN.y2[,:bO+`Ajb34| +GpUp 6j/9|*,ӐU$'R[j5>pa>MMV[#R_)|RVX5o' ^tp%4=`m6~|GQ1fpV̎(}+I8V8/1^ #cC81vM%5IKO榟i>MsTYHI's`Cl>! c4- [aGyi_z?dz̜ 7K۲5:K;2neS!qέN բ&$E, hJxUXmN#$AnWs|l@qܯK~R;-J%0+(\'6*2w9rLۮOS?3i'{wWc\K YCH)R~G~+?2M3-_/ k[>}S?Y]fX^n¤K(Fk-o 9$iuT^fh;PGYB>m7lv*a =2ihd<¬> f!Y82ӌubl[\ ;8\]IPo݀j{/_߳t 1siro~&]]v1mGрSU?M(+o -(tFFt2ռAp9yZ(Hqq~dm,>}rD=_R1T/9W3m "YiP c ^#1%C5jNEIIOrk>)#-7p*C (:t FY{2cp NV Χ94۾o\!X(4pz\rޛ N)bjruHѩrahs*EUGb ! +_菢2)TFd6ș؝hbk$U FGTdѱV䈶Ro\f-@&l}i)WnVAݏ)24nFʈd$[Em7{8䋞8F"LX?y*k %Ku־DzOySo/߬~g4a0W4tֹ(D 4 GAH@ˁ8|~q.!L%V/c?kڷ V;:Ĩ~P'@!'JZќ“ѱ?fI`Ąe]=P 3 d3DWbdqlRHĜngs*?P*PɍvfZuĴ5k\-:=?GtQ% _n}1}vxyQ}֮Ҷ .kUQ d‰ 9:ƶdeC.~^ថGgԋsri+yM*c0-*h>󦦐|)ȸЉvxni n=xKxvBy*g*2%ǎG̀04͍) SƗ.IwQD*ف̉ޓE'p* #t;t?;wgPwa,MތE=LpmVwaZY\ fRA}taB+~4-N},iD*OH=hIwS^7\yEuߍl^h3RJ鸞17:"2؈{}ZԔk xDf^(7_9e͛܊E_*6 z52^B dW;+4 e?7 y"|BlUUě qD;GLe+H Vʮ Rta@"Їfl+ Lr?Y=c5U.ԁ,V6^.`ݦ]8݆T( l0y2 T?Ճ P%rԯ@ 6uvoO<-̝ ~Շj&V^%\8ڶUSt!9Q!&ᎇ'a|;IDgNǃJqJa!PmHg7fO2*Єs`9Yz#d)q8O} 3hJPٕoITG%Ţ@Ť17eGmGPr7ё{ۺ PvlV4-hI=,<=ALLz>09 r!>#uzi%i:I{z&5քTL7f/]rε}d CUuʺU}Nʓ;(kjB8 S;TU(T,2A X+q(OJԩw%Ѧھ9DaE${M!7>YD@ 0b~.*ֳ{ V,8a:3!Sd+4F$!x[ug}to_4Xcϕuw#/`~˘8T$%rkڗ( 3p0vz)ֲ˕׉l5d-c.&2ַ2YVlrZY\ߟSʶ:`1.` jV*-٦R8OqOUK^O@;GoaL0 썣]JԄ"dw){N =aѭ/6JEقuPaU)<'!{ivSFF|S7XhdR(7eNA)0fv n|bQ \Dtki9j@4#$XXU=b"t`̱Kֻzmb,H>%1Ta2=UofCE16my˵8wrqsw2]Q_M֬pԆ}PgoD*!^Aq|C"^/]W3 0*2(Y09@1wp'xa &)cϫj3p3@RܥX„ilQVeKrYRG<\ԏ$JnVnՆ6@_V-#?QfpNkVR }>A~:ƺ2U &ivÊ>uRh)֡MR; KHj>(nH%ؓ1H=&4\LZ8:SޘШLԸCWK!_c=5clLCQ)f厣j*Zcb3U!ćq{{TmMb;)se93WGُ|zcb趵2=$roU? D1bJ P1-;TtԺ<ו\*b {n~Tx-_i>ZKءD{IHi-VW)AeLLX/--gbbuƮj}䇷fcu1D6Ixq{yFUPx(,CZ謎l8'xϓ9]G77o"S(vt<ϳ'Yk5m9Oo"4כSppQރй ]{nļӏv< }hr=Au~$WY\/So;彃 So#6헄h)j pG2]?[|WP~C;V;_p΃7:LMyWŋCW]?ZAOzcr'"[X-SZ9&m&][R 녀TTXbnZ9fp3}&#?\1xVvbDR9;R5'=<Mi?{NLV yܛ a_; XHz7wC8 (24jJыM%MVX rtBbvOD= & m ̽ǖkm&n+DT~BA0qII`Wm{I8UT3`5b]ˋ% X#0P=P<4o} \ \;4^6J<\3sJ&[_aӠ'gI`Sp(;?Ehꞟ(\rR QQùeQvO[z/c[޲u mrW"SI=aA,*dvYK%{}7kgy|CBo= nz5wO2-^~EZ5!bF]-{ 2rRY*fm,6) 8Ʃ$Ŕ:wj"HÉkXw1e^W=4B6(@ (ў^.^`'~޷4 (DQae=7S o_~kJ߬-)Q1ip䋧1\؝q犥[YHvnlzʟ%Z;Տ)YˇSُNP'-Z^9f<խj5 m{eG 47ZIm:~F錬YJsnIN\kq?R"R_xʪ JݧUπK׽3bRT6}$e+Ǥc,J,"5:72JXcI"O|@omz+L]7&_ _Yai]b0ti/'>x Fbi!# uf' 7/{W.o|RF JWLEUJS]?Ҕ}sK{GiqъХ?, h>ҧOF^ 't@TѷhUH`Tj?۳*:ڳv @RJw*8'!:kl3HE2uգ8$.? #Bvje1 F6GA4yN^W$ؕN/ԇD aC5{ E.}R˱'jC&422v?mY~JTw|UnY00>9ڙw-vHva'pԪ_NLr i!* ZxZ&86X.&K{ۍN7Jޠy*l%0O#c^"saj_$%Qw}D6lהzzHِJGV/ 0ALy ,&"K^F:Z᥍s(J:`F"2y 96\ɗmi :'5.*يm!֨ii~ }Bb:F3}X77#PJXɍ+6>}vȩ#XFaL䦟cBJ76 ٣V5Ѓ|P&PBl^]ts1a`"wҼ5 ~ _qQ&8``ͤw|/SnSlcXi[{Z Hnpd)+K-mS+0 xO&a>"1@<((ϗ,Qꗿ℮IImԥ/T :8Ij>Jt 'a:`D}=vZ+c;t}=0< l-Κuѓ> w8 u1˒,5-E~Ws^_Ti BPϨD0#Ǽ|ꐢr4͞q^~WW7KƢ0 }uYXG;&` !-pF}sLRl~3;C5;zlY4)ԁ&qG!yG2N΁8;esG(\P9[ 0X87=*'>cl_D I%/ p暘vd2m/(a)3;{iKA p޷)Հߜ/Jy"g8.6VSM}ojB :Xyk0187Wtm> x<5*E;09 2Xueq9rkWe 1NO枂_wj%cſ_"̳#A K&u?O+L5Eˌ1 K%EK"@g"W;+XwBuNGƛdF}r(2Ӛ hIVa820ꃼ MN\%8 r#F3 gΌAX1G" .{|cQ\3]+QbXjx;/9eŲ(䰬!<ҁrAY~B-Y=m=gs%4޵vpP`p^X+Gڃ䘼l.vꞔ6\)h}1;^ETgW ̯BM7m1Kjp"GF Ģ~č[+WAΎ)zR<׀ BC%@}Z/cFcQeV7vHnz$jDtE"}:KHRCXF=|WFnnaO? a _ةj+V _.$b aLU1 h vlG<| RFa,܏VJ,oZj ^8{ſm0Eeom &h²7Ce{Gv^rmĈB pWV.JB egc+Hm E/ ,mCVz^%iVRWmWP6 m01ZM{ |UIVUrUWPlk@O`WDHa I,&-?8O*W AL=ET{e{،itJ)m6ZSFb Lؠ"d!' wj<,$84֓_+`}Fy} G2;T@ޙGZ݀-_nf[JC}`h|t^H^ѺiIS`P< Zi;7/fPZ'a+$%nXS7Qu8cՋ6W]W9 Bu vDx Bt4ᵆ \$ᩞ%ior|3"hW`s9N9q2W˒[COصb$v%aBFm;ڿ𴸆dݛ؈[GMX=~Vohtw>IBx)mVIV;9 jѰqJ?W0]G`AbN$]҆\$x9jSOb1C2 YG){)šN :IX!jDe.O?hq5h71bzw~R0:Y1ٕiF"a=?Rjg, /b"s_;Ei8ۋ KQT e퇇`}XZ2YRW'XE*T k2t/n+ey~1LӋ\|q%?1TM 6zMKZ#k릔/m1 Tw~?@zL" ?" xb A2ۻPuN-@XXϱϳQR%":Mc9^' Vk5EGNa,).8PUq:vժ:c5y9oP9%k> DKĠ0( U3GhG(nU}VQDsäI*ap?4W]#nrqgwIgq'zI/PS. 'ꢍLkRPT2N=gXYR0Rn:888A~> L*?-dp~5kuYA{% )lz)afm7z uMarUfkF9Q=Ery@7ܐ|s βk. Yp(}Qmô$Dd,'6\1k7bkJ54G ||ߙܕ 'VvQ`UKuW]ځsnvA`r$Ӡ8Gd׶gNQ[Te8))ĵ(ٌ, 0<8=Sub'ZnJxL7gѳ8jK*D-\T>6*.m[yTyX\աIm$6./8c^/[[`#eMLs MGzZ0#s?jo!8ЉsKeMA ]49V\7Tǔhzm(۟j?L+7x6utp95DaA}yAU.+ssoS'@u)tajL?m0\x<'#߼At_lv>"1.5tH+p9wEK|2X{ F2@(`1^͛ @ >?+@'4@@?fފ&-v6jEC1fp\d' +V{PL`KbmЇmڑ*$yNϰ~8@ԡ/"ḕ>i`ܐ**CuC.^`GEA}i1uNY H<ƋP]g@&n%͛ O+t9XQ>|"aCto_ jJ*(}Gji3[LM)e}q}%)жwOD,KAWni_;D-e *' Izq|W~N(86~9~޽m&h8u hj/;$n#cضR42*4͢2- w"aw}j.t}b>OA땻P#-'fQ;gd'K )> ,ן[ZѢL97Ɋ[6}0>=`F=*ay>>]XVbl6?%|[ 3!@{xإlC 2JݷUeА쇁г|L֫LP*4[rMg y9!SFl!g :\X[1K.+PPlXN㎲..\C}rg1W&Ad@^ ;E;nRl吘VmQp!:Wq0ځ97 +hG ǭ¿JgP[YU^X"vDkHfum%>7"JE @qKS8 nϰ f|yeEyxM>ޘuz|F!05 Cv8Sm]_ג50F|4ބ/ogKkpx.Stq[gKhnNy^w`a 2J5~Tͮ;s0 GnׅӦs߂˶}"@T] c3́~JKjl|[~YRbJ gv6{^Rǻ4}so4ЅFǃܩ*&,(i곱 -rj@܁fp䣡W#X~GD~HTLýATIpA dQ 2=_h|#H܄ SA6%v+/Tl r"J~JN^i Ӎ:&TgJ1 ı r)R}-9eyg$wEM{$ Ϋס@y: ~ >R)UG]26Z6oPk7`6F t~&-dzwЏR*q--*㵭@\WMIIk>ņB<_uu<b,bߙɫ*:]w^z ZZLp&VRț?[>#O^O(Q1 9 !fe1kY4ax=iD(LAށZDó{RDw5jdWeCCZUǫ"j$җ ,Zjve5Xss>KܕQZI UB  : $mV3j ѭӰJk70KXwEHL(8@|15=Uvla8f|E0bu(m|ageG@8ổf`~]žE5ue4xwX*h-JGjNf4W,#ې(c8Ҽ{`hTȊ)ͧn[~q> i ')aCSqRv/J8 S1n]K(䥧f̺TաܻN}3EtU* mi{F?VC|qބ9xSK<9k#؋/^5@s}L:RwtUB++N#8bFpby*+weC)h0(jfŋGtDZZ xy]V֭OLʏUx;!4vW~Nz 9O]^n-YɩޖL!'$ni.x.q!ή{u_E6IKGO-W0.5<` hN-pp`~nK#K ovJib gy_އOFjc|BɠHR?4Mz,Vݿp/":8e634Ve|SaLKUkι 5xc!j&0i`=X2")FꜾFl.xrHQn`7 T"Fch5V@6mT|o'TMxtoCpS$_I)]zO+c>6 L,I{5l tu\L ZY3z8఩]3zI'&N^rj^ZH@r}r{E_@M;%0,]G/xEM{85@h1vu7ik3@*ؔYaDʯpEޒp|PVllc}PLrǷ0o\)jWM.480>nY%S:je(w2 RxMMKepvpGdB^S0JŘďۄd;AJw~e+!օѽh l[kA$V|p):K+agd*4qG_%ҲUX>}9oZ([iR%*|$WZ,T3DřH9m(#zv l- uثX۫IcWGk?v|%o_ Qd Z9f\P1ʁkK̦F溹V0hJ.87jG@k[^ h 6SCMq/vr,AtG[|(O>9Ld;h]AgT=F(O)S)Hv7e$I ,O׌CPeڵ;OKZ|L w0#}l#K`jcM jo`0@ie+j&ɛd1XKTwڹ-@^paͣ)Qxk1'xj_,PiPZ>*ERD*(!K̓}}x`Uk1@N1{wSLj_PgI#8tlf9V>@#zq!'?C_y5Rl-tZm^#L7B n]/;K iHqة{]3 I䤨&\؛!_S {j,7Wu:JoAUa!_M ׎&E*D4Wwn]7uS24ZAJn][l%q:f_/cq<ꞻx \D`l)bQ2D> qsz%^.S2.) T<; dRh@:Ƨ`~ 8MFZ_.@r ?I}HZ./>wo^yĻn80EG}.~޵W2~U}(GhŲSBV:}J(*JTy1u/of^ٺbвɡ 5 %)̈ r ȭEo)}Ac c$BPUnl,@uf[5K֠|J<'4>x@C<\Ye"XT Vxo$vh0fd[p#b ᄍ( Ƕtp 0./.SK6EOL/,A †IU R9_j&18 N@P@=Gp'#: y!~hAYD$ߩı>~kǤ!۵1yxa"6Hv"9̂\i\I?[7Seр%@t|(ٙ&|(~NY^zeF+Օ` :n@ s>x";;p`^`zM, 1CV=Gh9alWi62CMb~,Lv-G.@ Dc:* F¡{=.{)<5ysqWq9)ڧ'/\njc%3NRiLW0!38ّT"!+Pr%9jfU<83AкchFTac[9.ϖ*EދP.gxk~|}|U/~id +2jffng<#*pdO2~ԭ [m9\0p P>ܵewA9)!+ǀX 5>h f6[{T&LvޕwUU{wRgtjSI;\+q<|)c"kf(lrj3+_ uq;qj%K|v)V)I<=axpɅw_J3+; 8>< M?WvO Kh*AU;6UNϷKg'E zrkˎdIӄ [?Rf [2%ẼCi(qU5dzQdt:"')tf{q^vm);jzh{q5z4)+[K҄}t*T>-Zb@MP3;R x& Y3yN$a!t]ET$v{4run[͖ēL`it5b'k _IHQUPcfb0L˶ "Ge4ֈmgc<0 O@6}z, ag S| >k`^",_P(B͓mՅj@YFۥ}%T#X H= 3L$T1g."S|jy0giM4).VC9 &~gO4T.2 Y,|F]Vg5PٮW; Bezj2V;5]L cfT]<: ܭcDIi_{t0~eqy#+A+!sbdIiV;W%@m/ z"]ޤHyV\y!ջ\op6 Pog$^F,e#56TnT!^n5:WQױ8L7q$tّuBRX s1j y" | vXl )vBiNHpKշ*k.e`ЃTu j3_@\Xuufowl]P L*C( /0.ccDb=t˅BŁc#pK'/j Ԯ 7*^[!B?>յUr :OYFw-f ?J |f;]5Q:Bp:J fk2gVrpʌd-`a&Z%P&cmRwJv|̓ur- E|6]ݨ/FfNYoHni!3v}$>K;QGwኆ{E:n*:h BG.B?'=i>jI%3 4n>̶(HIީ泿[ka"\UF(>k} U>'YkRc~ '[+v]Q-1lʈN]&3MNEL>ZvO ^؋gqg*ZAĮYMZ;|̰Ճ{$2%=/5iyMX,W}\;֘ޚKD<(.1"j=ɅMV+LAFX\ܠRk;2<2hf7e3K੆ׇ+[MuW=%\^U#슓*-f&~0=bDՋ~Q"=F0Y4\oy0jk>d=d.6Ξ5=~"v  JgƔCTZ'MeIJNK eu]›۱hl:$5e#_5$e"R{ZU8a>wTQ%?gM߉g6D=b O$8RuU4>%'[zJQľcκ/1c]cGL<5O)-[aٗo紴ӉX){҄RR}EwC5) 7G# r\I;QkJ~V20]30W*e` 3Dy)/ڮZbyJg t"҇㥹rwkPہaA$ddEHdu>6 Di 2.-Hl8_y$ $,CB--83y'%EVx?kkao>G>冻@T@)4ZUʶń'Ga#&;h:52K옙!i%$ce8ʷu5m _81ucMIqTHR- mkhb`ߟ6,;jo \[RO'M^$R$I;谘iAbvh9rk>4$OM[8^&U n̢߉^r秂MV]./=Lk` +LwO^{0ДZ%*=r( YK1)[Ŏ$c$:8@Cs?@1)0'Wٚ=<ՉnwslDF!@Y#fĮڰ0=VVBĘqXb2KDcstj~v1)V؝7V3TOIa|+$]Ķ1*bߑ2U`Oz78)H0Mz+yij=N9FGgLaF>*Co;l+Q7dHDFF;5}7 |6p=܆H%[$bqh"b$>rsXJGW0hVS- #%O?fo`f L̥ r`HzgZ\/y"D'%,у}Qeԓ 'l83Kx>֥/*R1 ÷dc~UiHK]21ci.tg('߰b /[> 2N2t"č77>-`&NnžRD+.aQ{ܯ ,{4Z©f$ xiFb }WeJOpom>Si͏MO"BU-_MT=Z_@M!iE$}l U8+RyX6vKɨ EF ;\~U5,Ibls׿2el1WWNTū Do(ao6rMW@giq~$$P:D6 G=z jh7d>,P# i%|XGċqU2}46FPQ!=.{n"%0[pAUDAFHgޕqb;tI SI%eJ}JB/1\yQX5]А4>S{W:]ZNU%[>)taW}5W}g?)Jj/o]fR]xɤpn{eXZ~3Xp(_6~LDɉ>Jn}`dÄ}t _.MOtOnʘ&a~AOL+b,x%.+rrLݩh,A<0i=S TuhyL=j*Jqc1#~u?$YF9šv&ω%}$; యhUȂoy Jhv|c"hv8dT#J(a"8-{)

%ٵ5& wY PU]ڡv=HI4ܬ'y B\hlA ) yρh8ʄ9ʌ`4XD`}IZ2+~̝ UK5Ymn[ M,4Mo>GX9GP&ojKu}0YǎhË8. uwcÉ9SfF`#\*ߠ3P'U<_ۛlKpEzQ'Fy'], :h!=7?imXO~{^,R”$W&ݣ&>b&?c2xJYSd: Dj6PI⊸?^SF<یxvxA 4KS=}dGGpV[6 &ͫp,s6ibORx+;qp4=dh`idV[pwV=ӟ+wơtA?lGO3n0-Đz˕-'HTz+ؚ:JBHFs02YB=_ܴyL.ʊ T[y@fi8RPeKˮO R*= ǼF0o[ۓ!d06BӡEבQ$u>o&LVG媲=e&~ |%F*)1 |Hr&-e͋DM-ad֓\t"5+R %TN)내:bT!1EW-VCBHpI ̢qEpͱbi,`a4wFB92bNkUf˼ \!(H$O(5zTL|q]hiұq…=ڀL<,R[7" BA}&/[jxzo*jL$8+Nx?wA5 PO:+tܴ_U*Ѳ+z$O^a܍ 9g,msdi;k4C!t7ap\\d#H ff1ИyYᤣ{ Мq_;2VODY:lѯ ٰnP5Iؙ/M݊S L%ê\955\̮y, &[wY,VHz)찓dvp  n)}^Fx?LKj@M ]ƨ+Am'̣mNQHxMU3 L#6aFT58g&gCh..XZG4QM{\ʭ!oޯ @=p+ۛh-r^29|M9#0,|K 3rQҚ%fA L!Ӎ,/TʸqQ`iv|ǓͧS[drC-ھ2JTvAVn\ۚ8E&PŽ>qk&Y 5=H̦ų˗)= kyIaʙOސ1߻`ּ L#ZZSt]ȥ# %7^"IcS@L\DRQ",id 2 p%c ImP!1 |ⱽ#7RV8 zd.[O4#Q1!w3ڷ ̸e[} ش'S+嚖iGA2..aόi(V<*QXbp#R˽TT, VyyYu9)r"XQʅzkRk7Tw8ZC#Tgd/|;蚗È Il +ur TGjߙ+9 fD, 3G>ۘxЁ.ƌ { `>zo|KzrR~Ӟǖ*0`) FO9[{YX$/MV6CjwkCO.Fj>JVoVM?4H}\MNemk&9j-p{z(֙z:+/dF~|LKb(;W_PkkZ>j T, V. Zg)viLW4kؾYz//us2|JkA &O,* 47Xnf^ݛ ^zp,qe|N:fP͙(Ҧ⚌8.Вg^p%IWl2g^Sʦlб-'vT،O E\i˺fO&G}gBəҴ38Q目OM0 E8'5W;wܬ \lĦu} z [PːB<'6bmSIྎۨ@ O-ulu2oIzL.Z>9w$w7(-i!pk=mg U!WnEHI'TH:3S,H-.%ygє?K519Y~cL4g3pX .SɢQI ’7WѶn|B{NZglRPrqaz\:Bwv`ݴjM߇_,~C-·aKdq-૏qfa~H+dP{zNXѼc&[0{Wϟ]3Hip{2P H- r9`F0q=2f\W:ΒVe~6AYPR~]]̞m~8b窔x@u-z/f ,A,O; cX$ccC*'6^rrːS'.֕p6k̒ᬩ!\1xW~ ȱǙtz@%u1{`6v}CN?/f^SeXymмʫ I, w%`)OAOбP}r-?1gcq̿~RiІo "|cp70W+)"J tx:yqI L7%)jґ}An_nEOߖ6+!@v笰HG48CC$o(HevHbnA\ pv&. ڬ2e"Ky9V 6202a>+ert^ Td#dF7= gĚ8,,֮=ւ?0.XNa5x&a9( Lm ^abk`p„Óo"9\轷'K5)zCn%u~U5 ȕLRH9\ijT.i0tp?( [A^}RwE,{LZ!3<g=cF5+ )BTX 4Nb Rsk:Ih({[2Q7ָxY]N\l%QΫy o0T+m2h.hdJpcneAv/ΰj{\nUh#vMG$TA1wE%'s*j9fC FJi#\-ߙI? СQFzrg_DŷBtHxYWdny|akn/ec:O'O~ FycroQ=NcJ(>RSh"f_MR7I*`YHWpa̰zcc~(:3閐fMx& L9ehRh2/z.GBhl4DLD9]oӔȾ7 n꽳A& S8ľlT@[Z 6 {}*R%"Co9ɡ1|!G2w%?-t$?L0P#knRM&%s=KTxa!z/I,|+_>Qja97{Yu9"zH]H NO YZ