nghttp2-1.40.0-6.1<>,<`p9|R1jIԭqGF '׉xP| 'f f")ڋ) 󠲁U~R3HP y;u]!-k~yGH)DΒT,'46 #ߊ!) @$a|=BFpF *Q ˄>I R,5wb+'mqL]pɞtu܀$hteR1B1>l2O+Zʱ߼|`i2}L="` +QI>><?,d   R (=CLl |   t |(@44 K4( 8 F9 F:FFdGxHIXY\]^Nbxc!defluvwxy(z(Cnghttp21.40.06.1Implementation of Hypertext Transfer Protocol version 2 in CThis is an implementation of Hypertext Transfer Protocol version 2. The framing layer of HTTP/2 is implemented as a form of reusable C library. On top of that, we have implemented HTTP/2 client, server and proxy. We have also developed load test and benchmarking tool for HTTP/2. HPACK encoder and decoder are available as public API.`sheep28SUSE Linux Enterprise 15SUSE LLC MIThttps://www.suse.com/Development/Libraries/C and C++https://nghttp2.org/linuxx86_64[8hJPx8#A````````ff2bf37eca4c421e0e2abf9953c793f75390b2c74590a5891afc07169e636d18414190bb590230b2b31262ae29f4586b5f73cd4201bfd75fefe922cfdaacd324b6a33e75f45adb17ff1e7df236f6ef67d5d0fb8c57eb11539b74dc2511e9dc41f3deb3c4df30ea401403f7971b0528a83e853086d188b7eecf07ccaa13bd227f1403f99e63d173135c91965a53f6292b18fd1d6ac0c73505ba610ff4ec56e1a5352b87e0e383cedb9e7563298aace703d77e12ba65a8aa170d4627e44cf549133a22362814ba191b10fa8a50106097ffae4ce30013526f522b7962d2a602f1e4rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootnghttp2-1.40.0-6.1.src.rpmnghttp2nghttp2(x86-64)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@    /usr/bin/python3libc.so.6()(64bit)libc.so.6(GLIBC_2.10)(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.7)(64bit)libcares.so.2()(64bit)libcrypto.so.1.1()(64bit)libcrypto.so.1.1(OPENSSL_1_1_0)(64bit)libcrypto.so.1.1(OPENSSL_1_1_1)(64bit)libev.so.4()(64bit)libgcc_s.so.1()(64bit)libgcc_s.so.1(GCC_3.0)(64bit)libjansson.so.4()(64bit)libm.so.6()(64bit)libm.so.6(GLIBC_2.2.5)(64bit)libnghttp2.so.14()(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)libssl.so.1.1()(64bit)libssl.so.1.1(OPENSSL_1_1_0)(64bit)libssl.so.1.1(OPENSSL_1_1_1)(64bit)libstdc++.so.6()(64bit)libstdc++.so.6(CXXABI_1.3)(64bit)libstdc++.so.6(CXXABI_1.3.11)(64bit)libstdc++.so.6(CXXABI_1.3.2)(64bit)libstdc++.so.6(CXXABI_1.3.3)(64bit)libstdc++.so.6(CXXABI_1.3.7)(64bit)libstdc++.so.6(CXXABI_1.3.8)(64bit)libstdc++.so.6(CXXABI_1.3.9)(64bit)libstdc++.so.6(GLIBCXX_3.4)(64bit)libstdc++.so.6(GLIBCXX_3.4.11)(64bit)libstdc++.so.6(GLIBCXX_3.4.14)(64bit)libstdc++.so.6(GLIBCXX_3.4.15)(64bit)libstdc++.so.6(GLIBCXX_3.4.17)(64bit)libstdc++.so.6(GLIBCXX_3.4.18)(64bit)libstdc++.so.6(GLIBCXX_3.4.19)(64bit)libstdc++.so.6(GLIBCXX_3.4.20)(64bit)libstdc++.so.6(GLIBCXX_3.4.21)(64bit)libstdc++.so.6(GLIBCXX_3.4.22)(64bit)libstdc++.so.6(GLIBCXX_3.4.9)(64bit)libsystemd.so.0()(64bit)libsystemd.so.0(LIBSYSTEMD_209)(64bit)libxml2.so.2()(64bit)libxml2.so.2(LIBXML2_2.4.30)(64bit)libz.so.1()(64bit)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]US= 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.4sheep28 16231371881.40.0-6.11.40.0-6.1deflatehdh2loadinflatehdnghttpnghttpdnghttpxnghttp2fetch-ocsp-response/usr/bin//usr/share//usr/share/nghttp2/-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:19915/SUSE_SLE-15-SP2_Update/f4167875c8a8f0cb9bb9b4161ec6f088-nghttp2.SUSE_SLE-15-SP2_Updatedrpmxz5x86_64-suse-linuxELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=982cb72777ba174188c9262cc00007d8a171bb25, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=588198412c56fd2e02646689a4d7b15aa9be45de, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=85b5ea8c2c8685d68b5b78759a56c9571430f8c1, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=65c9350d21cd23e7ed26e666798d44a168f732e6, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=1a32fe47cc6329f101213b128c41bf011c5a9e5e, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=b47c30494a107f9e0680c9425d46ab5ffa3c73b3, for GNU/Linux 3.2.0, strippeddirectoryPython script, ASCII text executable2A`~"*RR*RR"R RRRRRRRRR RRRRRR RRRRRR'R$RR%RRR*R#RRR!R(R"R)R&R RR RR RRR RRRR*R RR"RRRRRRRR RRRRR RRRRRR.RR!RR%R*RR"R(R&R RR-R RR RR/RRR RRRRR RRR&RR%R*R!RR"R(R)R RRRRRRR RR R/RRR RRRRR R R,RRRRRRRRRRRRR%RRR*R#RRR!R(R"R)R&R RR RR RR+R/RRR RRRoqF,A9Y'n!utf-85448358f9364ac355bd486625955720dbf88e4c6f110e9195381c06e83090a11? 7zXZ !t/]NH]"k%Y֫9$ 鳅VJn^6zQ8u34G% bm&Z ީK*]EPNݤ$+Cbı)ZM W35>{LMI;U^Ϧ]Tv[ Qhfel 89T2w$m8w?pL~d;q!"=*Ż2RL՘᪺8 y^XVB"@J=`CDq]DBD =CG]zt ix,K!\I^u9N$ xOYĎePD~9(I@-gI|gbޔJ L tŚROr\5Bz5y+;ߎ(ABJQF^)_9on,]߃=Z_@zspyQңr9)H >^PQ)@. {kYyB<忾>3IG$KEZ:[)HulqKT֥86ht s`3EI#=D4:ˋ2_殝CsZqIFq7dP* 0iaIp&*Yn@=ܮLK OӔ^e4)s{2rAo8b* TGL,ܹPOpXyqYIeY kKuk4LFl9;Y]>8cA cL]At%4+pv E1ʕ&k5,o? I~~zƪ~Zo]ymٿU^U51U#)'HP&I5BX,y^em8 SwӬ}ގf#YF -F =r/hGIX [\u:YnL?!⭰\b*5pKaw<Oy4-*T:Bp$ PJ)Huhop HKxkayLt;~0`xn#_3N yejCo9dk-@,Ouoew]djl:'QF7$ 2{~u$ZY!wn]͠AD;#rƊd&}xx*=.jH)J-#N(ß3`E EFԹWUDz[܎nni:2gA؁ڀ;OZZ&"8+ShfQ:enG<8 ޙ~#Ց;Q,ηu!Q֟ YnAXKp΁@-+]x(BŹR-u&`q -lB$|~ߣVoF*6>a bf 3"FDptCvK'Ÿ44`;9 %Y%oDr՜iV׫!.a]G" Ί3Z֝3+gs q*ʻϡir)hr(K)|  g> %`JAY89pm6gdNhHe&\6=;QFF/<!2.ɧb嫔ճم;PZfl+\ǭx ǚE[ daԵ.ٲ[lJ["*-bo'##~&Y7_T{]4,B# {޲\bEk xc ECoy_c7^T]) arhBD3QܖuZ='$m p冑/K)!/Ce.~'W~J[~>b/AXE SXt(8yQZ7h/u݀!/̣:ڏG4[ՐǰWd<(LMo/9.[ębpTޯbf’b*4]%4S#G _8!( 2oh **h ֢M6F8\d? (=l}Ĥ*<@mg4cW XCe&x(meMS=1~a@I*QJbYoᤔ*9ӁC4ڄv[B!eK,ɗ4/ۼ 8&|,_Vx0gG!Lp^md/BX5_[ކs˗H8q2}仍s,prg}%m}z4p5- m[<(Qp +JR'oou~H|W VZ2޳f(.Ү-A`͑?j݃ǫwƩA$o}DX}e 7xj3dY% J,:sgKQC%x4uCREjRK76ӬG1cl"R"k)_ZJl0u}%o!P(i|?4-RZ{HQMX^>5ގО}%;6, b>WSlry%3ɷ.1 j~'?gC3& regM X]E}fa-XYH Vv%*68EޫQ@2b磆nCҖ2?SSUis6'ӎvrUڌ d^L'y ` 3< k1ZϪ=^w^@q`CBt,?JSeCpq(hkh5'ǽ9KuE%D<'z]l9/ktvG`29IjRD= zZ<1rKˆz+<i~]+N3xR "z{9zuc& ڛߏ'w 'uNI͊އkjjiJ9]mcXI3B| lU7ؼ]ctv2zp{  ih&rClcV6+,R;\$z>PK-tԲ2JS{QKcVHG͎U ji+ ~~iV);b`~(8U$L]sLOYsE:mTƋ̀C9[,AnȔ dYRwj[˿j$a-ǫoAi j(dQT+f͒W4H))Έh*jd=a R*yD]*X,x `%9ۡ51`A_bugnToݓ|5’y{90*q|5=h{$vʖJg+YqT,y#B)|O '0{Cz>Id{n.u/̸LjEMh؟+o T%5˗P1"tc$Tv9B';uG!CD0gRO tߤ|X8,YQ+7ƪcFs#c,%7ϳ4;r:,LaL^mjI>~΀B &y3 "N2\ GXXx%.WGԉPOCUV-+uV0~"7nm.y+d#ij?Pfy"gxG5Q-jl 5(ʀaRmx aD(9:R ai%hr ˞_4MU "I0 NP$xunCw[ 6tNmGT|`R$P C#cYܐڭ\z}ߍWF|0wԱ]OX=GKoEmm0 (97C 6%]olD0 ˟Q!CHA~,P:P, }v)َYk!7&&LQLDUk ~gGis*˝J@pz!5noT8*^ ޴fLݏ+` *OîR^ \tlZxu2݋PV\rʎ˶v I\:Ģ!ۮwU$?W~64E<ެV aCq3Rj}iCEŪF ş#B x{WSY=aM_dw,!{" 8Nej} zyw9 R/Cܕ-Uׯ`ɰ;RKC0+YufujюL6MYP1A~{qoH3-e6RsDžHpo39sl#vEꓓnNTVMX_Q9wmtV ?%^1/J$rY*+$LzPcbاAM )lqtHq,"xyA{+tɗ?#\ltϑGBBQzw7%pȥ"W'Pu1Ze$+o`L7:V1 bX8Eb&&d ]iO 2݅JT_t  $2=;"GJ@D*5~7 Bἡ&M3.n 3zSc iK劋+%gx}M%y%##6 EDZ >9 {JA:BHw9E}]i| l_eOjE !4l8@τf))o hHI`STどEoO*mF 8t:D%vR?o\6Q!t4 Ȇ²r ܌3&7+O3c:@r ?EP  c/5I!et@ϼ( XJY.tjѽ# @X/i3ojXN@#!32#(/.% 96i}Zg{7c͘k7/JuSiX6%-t!llU5!(PԮ-ķ˯dEgKߝS݆٢(JςSwKs,刱r0Xao@O'?smt~K-H 0qֿ3.gS- 6a?*W p5o:ɬh; Nn*{j_1 9 e߿H]@ݛhlꭺ}]/żDVNJ"GN<9SV8~_!Zb+X4ZJ yԽA(˵t޳4()pFDPgfذ ]P)&}AZ`$5:;-o IJUQkOEyٽ[ll=*|/-S6 ~CGb-#{JkHIO@vZPF4"4o2 yv'<ѽԳ|*{E)gIy'nN RnN>NhHWR2:>Gkrgt'õ:8V"s0]@'a<"˳R7dGq]Av@0sǸ*F;C5}f41\V 3ȦgT@7#'1y,|X@"°~:mSv,Pf>nݦr{-;ls󍣨+U8_¯O ?1ᙦe4A*{FPT'-Rd(z)һcV2ټ䵩uE`rΑ,J}?:Hզa Lk?̒ lOKu6'/11(D!KZEgn| f] <$~,9AE#zN뀮ZțbiV2" C|T!ûm9^Y?hlc7X$hͲn,_™Ͳge Mq@x=% Ȁfz$V.z .~Eީ&%!琡=4$90ZKM|x,_Eb5Kl. 6,:.U U^)lO^Zfrr1*(j4d˦u#r4iΖi-n>0JY͌(3FŠ h[B.)unQYXyDYqz4ڕV'(bӁ0I4RVa1.@ˠ-!81C(\5d#yF|$oh(Ր->SPC bŮD]d@ɉqL Ώ3Co_XByG4U2?3uo*}U%4׵aח4I<8 1 qEu}&0x0bQU>Mpk;\q3Q'),XnE_"3eݥBZh<~b:il>xfjKMNH/hl0h:y;1t$oo.-]߳9S|A'j)򤿒^巭\2W=ud6E̒Mn~(pv^/5}r $ձ4 -V;`V˸9rԾrS/*'93&0TUP(MoȪ̫C;7{9AvjCn\0Mt;ԕc ZO8q^Om]XC8lVФI}u֛$؞=豿-bí >yt I4A#xPa\!-xzS‚G7nɎپp"̃W}Ŷ-xVLc?6PL/]9٢D$BvVyi(iSMU|~YZܑ':+v|eЛ^Xw/4w4[Q O$)qX נn^L-/>!32nh{v i"sXGC{dp,~6Ksƅ8fƻ ={z38} Iכ͗ۼ"[|d}Hhj*f6@#`0ڽ -᷋dĥ;Ҿ#53m4AQBya?v{\̃&Y5%"OdxH (ڶ4޸nZlkBDޒx4Xo8u"C9"y[Q?Y7l(.ov@>5L,./O,fWzs?~:,e{Ů k$cHGy)lL^U0߱ (@Y_ޡw.Ң7Et>ݩ{#ufv_ʑ1xE Ά~_6 v}OEzu{YS,Ơ >C,Nq@Z}mѡ\?RCdk ":9"x%^piYx̰I^E䵣+߭؞dco"mR4끰qH WShڷWu=1k)b`B $W璞r)/rRU[֐fg<l[H}D54o?@ G؋Bmd Gxj=]l2e^yQTH;ֱnwS*ѷG֤Hg*Ή6* )"^G_ 4-W+XflJ^MJdK|L ^^yT/x)Lʵeo=yAd(#<Nڒ0CsNGZ ZA0;w10ݪ@7ā4R;hYu˫f^oJt0|{#c`NۺZ"RX o7Dc9Ga'بC}+uV.y# WZ{7|]<:)iE7 IVNuF @JyNSlTSxeB^[F{Kk#S>XED_ƭCT;܂UֱL'> jl&$!4HL95I4é=5$\|d<힂 Auŕ{HWq[qSA 8 d-䘤hgus 0u#a%ڲ`䭀)78ivB T,R*3V,IsOέ-fIpՙ듄=[%+&r ^/ @L,xҤE-^tG_yAFhY!4 m –n lCFr4(ń>a7^q+ɀS E kW(+ |VR>01!o6R1TeB}V+E!n7f;Bh8#F+T:c} C~uT;:3u|狮Lk~Oa$̂oVhAN rXIk@ĝye`gA,eGK.[[ g8mPLUuce!O`MI&w$>ˡ(y, 25+7gVjVQf3E,_}~d\_%9w fтr# ѣ Q?zSBNnuClx 2iĠ( ܲ/[`b)<ζ "CI,ŃÓЉRme(tu{2PDk;bCjAףI=%6/|syba*ۙ | /rvcݫQe8/}ecWY yӣT<\8, @f8֪#s PdxsYGc9_1]yKϑ*I?ʡ)p18ڽD5ry4{<%c,^o;olSUF#QӅkAQ#+rBq<#50--s2UG?|mD<:*/ إwCV`n;U2{_}P]H@Pxdzij X8pQ]VR@ŏH'U\c>EbN826Z3}JTA.b:Η Zг27n`yI~M#zq{қc..ȳJz!j9uxYSj>'<@1#'~aiD%H_XFr:)aMDbi x)4>-?~c6\B'nS!V%GaO}Ԙ%"lP ߉jmPiZ7y;px&qq)ta<10uTvM!0Pvc׾)tPq*(rs`\DC)z,'R+tC*=ןSͣފ>$ҭ[=YX.g6* Y/1ve[UuQ.?3JKbp0*: \𚾰rGJp}}9 Fx!\Qp╯0[׀**! Mtb8߮ՖidYi[Ir.;Cvj&+9ª#H|8;B G [FO9xY^9Sk&IMJVaY"2x_@ uIiY4^׭# BB4h},sUm-+XA@3%g'H1w+Il"6ȧ-(C4kޕ>ۋ$ 8yE^ e+6bWrliLიJAgM %iNTd.) ) |?7 Roa:mľ n ^(4'Y_QzQAFn)ݖ¦}V|riv mEQ 蔽}$] ԘO^h4MӅYZ3wJ3|Z4q`r$,,ܷfU<z5"Ӭ0i|5Y_Aѯc:lwc4(U{*?6N ImB;e*E7^}1z/@s95sgy;-c%óh ^@𠣊 v+k ew[`ne"8 hVT@`BPIZonQ\g4FڀexN,0?Bx:)8 }9 ~q%C8?SGW~!zbǧF:,C1TOvB!Ht<njͣ"@RsXx\W# g 7t>x 3I# bf2hK~~P/[q^rj>7%+0;ºuT6zOq"N-hQ=XjBvz^\- (0PO=Tr)K 4oEAV=p\1Dƒ mݞ"5A D3_ALrTy1rg@(ǟON!w Pyu(@:mf$;4"+iNWnyyf0P3 ېG~HQ&s\&JV@n3(=8X>p KZeA! 4X^tJ4r0Y1mat5٥y{9ߵҢ|5$mFUs,ɢ vDq_,39IT>C>`(x+ ڶb W3+kp\QJQF˪)#ؒVB^H/ʼ8:cL)H|c% GD:{r6JM韻u{vveToڨEz X g_>lN5^^1U٠|PTIW<+]oՔx<^ adj{ZG7z]-HrQCqS_J\tb,ȶ=j ~d _Un}tBG$[?DCHW%)c CwuEvAiװ8P;E.Z`Sݞ[(i;by*Jy2`҅uOuWlOg 6ݗtJ0'$˸MX”$6ZTw>֙^ԃm 6גw[lD2T{fĬu{OD^;Թ_";_uTIw,\kwD"/gF7?7j!<1>vOU&՚!T9o^?͎`*|*ٗ #^i BS&G J[BHL;hZfCu1b*\KA6$սET#fY՞C-D5 Gڀ 'N_\z/&s<7XY/ eQ Ŭ1{AYr+#K_)Y\<#CwRB&m|x 8%Rwի!n{mKv#$Lc qTٲAQMz8Xv;B3ȍ`)<=UX$#FgRBW5FYTg~ru`c0)U&TڠF"Җ|*< X'RJxYJgGT3B@vcY\տ 5]ϥM]DV7?"!h!(*D|6^* P{8]QX{*mxF3H tUH/Fͯ;م8׵a;wLDESHb}ZSkuݺA/%Mir7F6!fJ\9`nYik*6(ɰ_>I@[:@PZ-qXJ4C?ɘ PH*?W琻]8D03𶿫NQIf'Z/mC,yY7cglS|yE~Q ê&2zƭҽYBaQԺ &e4U9rVR|G$Z~Zųov_9$֩υvI%&o9gGIQ=( HժN ߞEb†C[)'t{4̆t8虖l?Fc>,8iLˣgAVe =wh Ņs-;> jKCdނ3Z~]%2T+ЋU0b׀ ӑ3܅lm.&=ǔ DjϷ>Fv0&Rԙxhgwa#A2h0WAoQZ'!P6%QNw8Is瀼=7gK o2?(*WAZiX")`8gBBWbIk r\щRa}^;b:+­+\Jxr;"( m|{¼I 0M^y111_C_ 3u@ lyh\5(+,\t E̩x$)taPɂ$'3K8apnܼ^kKK1䙨,~\>x` 䯿){fMu{߯=Uޝ%86R:G ssnOpomcU9}6)2tdLgjK uS{Pv"f \)~K=m#TNHF襥 +ѷS\[[꼢WKq;#=8%ߘ*& vZ|&+ ȱgi Q[NI*`QjfrMq'j B)pɨg=*("XZcV9~7"HMsQ?oV. FWWT-Vճefe:)/ X֤H?s5Έ٘'4\ ,/,g,VuյV1=eH{ahETRɷ:<#]z7튌"Bp3d\?|I P\^S]?Pvxse#~%rOg4ۢxt0Gxjԟڗ8; uSIf?he'.DuP(z'M _o-f۲x:vx%Q ~ʑZʼn麆TLe3`=lSjbRw= ;[Ϫ0!Jze8TcC'9AsOKZc̯D$~3'wG$+zcgΨu40\)duT!z|lUj!'ט| CƦU&Xm1;<%.J6s2~x ٙ 첨\lؒD[jEmas~ ӄf:ehAnew8a5"1}\-66(K"ͅWxvt7, JʗuˡތvŎc)HGq7\g x_톱,yjbjq؄͋N}e`&{f:DVG79Zr۴C5)xmi-C*ojz^id@fX, }*1#Ӫ f) 2Rᡯ l $kt{},QkW)> :!MrF`wy<^7Xt b0T V$XVz>N@W%}th *2G)d3r.d'F`$0RBSWTR _4g;ʷ Y3Җ0O~.GD`|nm3RA-/F·*molSR1F8'tvf.W{CyJş;413;cW5Gh[#֓0nQV "oes-๙䝐1rlW48#l mumkvk ʜ' CӐϺ]Ͷ YZ